Sistemas Distribuídos Email: teóricas: artur.arsenio@ist.utl.pt práticas: joao.barreto@ist.utl.pt 2012-2013 1º semestre Sistemas Distribuídos
Objectivos e Programa Estudar as técnicas fundamentais para a construção de sistemas distribuídos Redes de dados e programação da comunicação (revs) RPC (Remote Procedure Call), RMI, Web Services Gestão de Nomes Segurança Tolerância a Faltas Replicação Transacções
Objectivos O objectivo principal é analisar as arquitecturas e as soluções técnicas que permitem desenvolver aplicações distribuídas que garantam requisitos não funcionais como a distribuição, reconfigurabilidade, segurança, tolerância a faltas e escalabilidade. Para tal é necessário analisar os problemas que se colocam nos sistemas distribuídos e quais são as soluções para os ultrapassar.
Objectivos O objectivo global subdivide-se: na caracterização dos sistemas distribuídos; arquitecturas de referência; políticas e mecanismos de suporte à comunicação distribuída: troca de mensagens, procedimentos remotos; gestão de nomes distribuída; politicas e mecanismos de segurança tolerância a faltas. Para todas as tecnologias abordadas procura-se relacionálas com os ambientes de desenvolvimento de aplicações e com as diversas plataformas de middleware e de suporte a sistemas distribuídos existentes no mercado.
Corpo Docente Artur Arsénio (Responsável Teóricas ) João Barreto (Responsável laboratórios)
Bibliografia Livro Principal: Distributed Systems: Concepts and Design, George Couloris, Jean Dollimore, Tim Kindberg. Addison-Wesley. 4th Edition, 2005. Acetatos das teóricas e laboratórios "Tecnologia de Sistemas Distribuídos", José Alves Marques e Paulo Guedes, FCA Editora de Informática, 2ª edição, 1999. Distributed Systems: Principles and Paradigms (2nd Edition), Andrew Tanenbaum, Maarten Van Steen, Prentice Hall, 2006 Java Web Services Architecture, J McGovern, S. Tyagi, M. Stevens, S. Mathew, Morgan Kaufmann, 2003 Outras referências: Web Services, Concepts, Architectures and Applications, G Alonso, F Casati, H Kuno, V Machiraju, Springer Verlag, 2004 Distributed Systems, S. Mullender. Addison-Wesley. 1993. Transaction Processing: Concepts and Techniques, J. Gray & A. Reuter. Morgan Kaufmann. 1993.
Bibliografia complementar para a parte prática Java Web Services Tutorial 1.6, Sun Microsystems. [online] Java Web Services in a Nutshell, Kim Topley, O'Reilly. Building Web Services with Java, S Graham, S. Simeonov, T. Boubez, G. Davies, Sams Publishing, 2002.. Murach's Java Servlets and JSP, Andrea Steelman, Joel Murach - Mike Murach & Associates, Inc JSP Examples and Best Practices, Andrew Patzer - Apress Java Development with Ant, Erik Hatcher, Steve Loughran - Manning Java Development with Eclipse, David Gallardo, Ed Burnette, Robert McGovern - Manning
Avaliação de Conhecimentos Avaliação da disciplina tem 3 componentes: contínua (5%), projecto (50%) e teórica (45%). Avaliação Contínua: 3 Aulas de laboratório têm o seu enunciado avaliado Quem se preparar normalmente para a aula e completar o exercício correctamente tem 100% Problemas curtos e concebidos para serem resolvidos na própria aula de laboratório são resolvidos em grupo Resolução é entregue até à aula de laboratório da semana seguinte (e discutido nessa aula) Todos os exercícios têm peso idêntico. Os grupos que não entregarem o exercício até à aula do laboratório da aula seguinte têm automaticamente "0" nesse exercício, sem excepções. Durante a aula seguinte e após a entrega das soluções, será sorteada uma alínea do problema que o grupo deverá explicar oralmente ao professor presente. Avaliação do grupo nesse problema função da realização da referida alínea e da resposta do grupo.
Trabalhador Estudante Trabalhadores estudantes ou de casos pontuais devidamente justificados: é possível combinar com o docente do laboratório uma data alternativa para discussão do exercício entregue; no entanto, o exercício terá sempre de ser entregue até à data indicada acima. Os alunos em situação de trabalhador-estudante comprovada pela secretaria podem optar por não realizar a Componente Contínua sendo nesse caso avaliados por: 50% Teórica + 50% Laboratorial.
Projecto (50%) Trabalho prático (50%) Consiste num projecto onde se empregam tecnologias de SD E.g. WebServices, Segurança, Tolerância a Faltas, Replicação Aproveitamento de notas anteriores: a nota do par (Projecto, Avaliação Contínua) do ano passado pode ser reaproveitada (como um todo) este ano. O projecto realizar-se-á em duas fases Cada fase corresponde a um ponto intercalar de avaliação que permitirá aferir os grupos que estão a realizar o trabalho de uma forma que lhes permita concluir o projecto com aprovação. Nota mínima: 8 valores
Inscrições em Laboratórios / Projecto Inscrições de grupos no Fenix As inscrições abrem hoje após a aula teórica, às 13h, estando abertas até ao final da semana. Grupos de 3 alunos Alunos que não têm grupo: enviar email para docente das práticas, alunos depois serão agrupados. nas inscrições por email não serão considerados os emails que não incluam a identificação do aluno (número e nome)
Componente Teórica (45%) A parte teórica tem duas formas de avaliação: A primeira consiste num exame escrito ou em dois testes escritos. Esta componente vale 85% da avaliação teórica. Os dois testes têm o mesmo peso Quem entregar o 1º teste opta pela avaliação por testes, ou seja, terá que fazer o 2º teste não poderá fazer o 1º exame, e, na data do exame de 2ª época, poderá repescar APENAS um dos testes Não há nota mínima individual para cada teste. Quem não optar por avaliação por testes pode realizar o 1º exame e o 2º exame. Tanto a nota das repescagens como a do 2º exame contam apenas no caso de melhorarem a nota do aluno. O 1º teste será realizado durante o período de aulas e o 2º em data coincidente com a do 1º exame. A segunda é uma avaliação por mini teste a realizar no final de algumas aulas teóricas Esta componente pode valer 15% da avaliação teórica. Serão realizados 2 mini testes, e a nota desta componente é calculada pela média destes. Só é usada para melhorar a nota teórica Caso contrario a avaliação teórica é dada pela nota dos teste/exame. A nota mínima da parte teórica é de 9 (nove) valores 2 testes ou exame (via de teste ou exames alternativa) Nota minima aplicada à média dos mini testes + testes ou dos mini testes + exame No cálculo da nota mínima, da média dos testes, e da nota final não são feitos arredondamentos das notas parcelares.
Avaliação de Conhecimentos Geral Época especial Componente teórica: Exame (peso de 50% na nota final ) Os alunos com direito a época especial podem fazer exame de época especial E reutilizar a nota do projecto feito em época normal no próprio ano ou no ano lectivo anterior (50%). Componente Laboratorial: projecto feito nos laboratórios ao longo do semestre (peso de 50% na nota final); pode ser usada a nota do projecto feito no ano lectivo anterior. Apenas a discussão poderá ser realizada nesta época. Alunos que tiverem reprovado no projecto poderão efectuar discussão oral esta incidirá sobre toda a matéria dada nos laboratórios. No cálculo da média dos testes e da nota final não são feitos arredondamentos das notas parcelares A nota mínima para aprovação à cadeira é de 10 (dez) valores.
Horários Departamento de Engenharia Informática
Datas Avaliação Teórica: 1º Teste 12 de Novembro de 2012 2º Teste / 1º Exame 9 de Janeiro de 2013 Repescagens / 2º Exame 31 de Janeiro de 2013 Projecto: 1ª Entrega 9 de Novembro de 2012 Disponibilização do enunciado 26 de Outubro de 2012 2ª Entrega 14 de Dezembro de 2012 Disponibilização do enunciado 12 de Novembro de 2012 Discussão do projecto: Semana de 17-21 de Dezembro de 2012 Mini-testes: 2, após o 1º teste, em datas a anunciar
Mais detalhes sobre o método de avaliação Consultar o site da cadeira para todos os detalhes https://fenix.ist.utl.pt/disciplinas/sdis/2012-2013/1- semestre/pagina-inicial