Disciplina Curricular
Desenvolvimento de Aplicações Distribuídas PADI
Mestrado Bolonha em Engenharia Informática e de Computadores - Alameda - MEIC-A 2021
Contextos
Grupo: MEIC-A 2021 > 2º Ciclo > Area Principal > Agrupamentos > Sistemas Distribuídos
Período:
Peso
6.0 (para cálculo da média)
Pré-requisitos
Conhecimentos de Sistemas Operativos, Redes de Computadores, Sistemas Distribuídos.
Objectivos
Perceber os problemas de nível sistema subjacentes à concepção e desenvolvimento de aplicações em redes de grandes escala (ex.: na Internet). Conhecer as soluções existentes no âmbito das plataformas de suporte à execução das aplicações antes referidas com ênfase na arquitectura, modelos de comunicação, escalabilidade, desempenho e segurança. Especificar, conceber, analisar e implementar aplicações distribuídas em redes de grande escala assim como as respectivas plataformas de suporte à sua execução.
Programa
Parte I: Modelos de sistema Modelos de sistema Sistemas síncronos e assíncronos. Troca de mensagens e partilha de memária. Modelos de faltas. Modelos de coerência e o teorema CAP. Dimensões do sistema: Cliente-servidor Agregados e computação em grelha Computação na nuvem Sistemas entre-pares Parte II: Abstrações Coordenação distribuída: Relógios físicos e sincronização de relógios Tempo lógico e relógios lógicos Relógios vectoriais Estados globais e captura de estado distribuída Exclusão mútua Eleiçao de líder Acordo distribuído Difusão fiável Ordem total Consenso Comunicação em grupo e sincronia na vista Processamento distribuído de transações Controlo de concorrência Confirmação atómica distribuída Parte III: Sistemas Construção de sistemas confiáveis de grande dimensão Sistemas de ficheiros replicados Replicação diferida Sistemas entre-pares. Sistemas geo-replicados A google como caso de estudo.
Metodologia de avaliação
Exame (40%), Projecto (45%), Apresentações (15%)
Componente de Competências Transversais
A UC promove a literacia da informação e dos média, com escrita de relatórios e apresentações de artigos, as competêncas interpessoais, através de trabalhos de grupo, e o pensamento crítico e inovador através do desenvolvimento de projectos para os quais existem múltiplas soluções válidas.
Componente Laboratorial
Desenvolvimento de software
Componente de Programação e Computação
No curso onde esta UC é oferecida estão asseguradas as componentes de Computação e Programação de acordo com o MEPP 2122.
Princípios Éticos
Todos os membros de um grupo são responsáveis pelo trabalho do grupo. Em qualquer avaliação, todo aluno deve divulgar honestamente qualquer ajuda recebida e fontes usadas. Numa avaliação oral, todo aluno deverá ser capaz de apresentar e responder a perguntas sobre toda a avaliação.