Publicação em Diário da República: Despacho n.º16228/2009 - 15/07/2009
6 ECTS; 3º Ano, 1º Semestre, 28,0 T + 42,0 PL + 5,0 OT + 5,0 O , Cód. 911925.
Docente(s)
            - António Manuel Rodrigues Manso (1)(2)
- André Filipe Esteves Carvalho  (2)
- Pedro Miguel Aparício Dias  (2)
(1) Docente Responsável
(2) Docente que lecciona
Pré-requisitos
          
Objetivos
          1 - Dotar os alunos de conhecimentos teóricos e práticos sobre programação paralela e concorrente
2 - Dotar os alunos de conhecimentos teóricos e práticos sobre sistemas distribuídos.
3 - Dominar as técnicas gerais de concepção, concretização e exploração de sistemas distribuídos.
Programa
          1 - Introdução à computação distribuída
2 - Segurança de sistemas distribuído
     a. Sistemas confiáveis e ameaças à segurança
     b. Mecanismos de segurança
     c. Projeto e implementação de sistemas seguros
3 - Programação paralela e concorrente
     a. Modelos e arquitetura de sistemas de execução paralela 
     b. Paralelização de algoritmos
     c. Programação com Threads
     d. Acesso concorrente a recursos
     e. Balanceamento de carga
4 - Programação de sistemas distribuídos
     a. Modelos e arquitetura de sistemas distribuídos
     b. Programação com Sockets
     c. Execução remota de procedimentos
     d. Programação com serviços
5- Programação de dispositivos móveis
     a. Introdução à mobilidade digital
     b. Ambientes de desenvolvimento e API's de programação.
Metodologia de avaliação
          Trabalhos práticos 60% - Mínimo de 10.0 valores em 20. 
Exame Teórico : 40% - mínimo de 7.0 valores em 20
Aos alunos que não obtenham mínimos nos trabalhos práticos será facultado um exame prático em substituição dos mesmos.
Bibliografia
          -  Cardoso, J. (2010). Programação de Sistemas Distribuídos em Java. Lisboa:  FCA
- Dollimore, J.  e  Coulouris, G. (2011). Distributed Systems: Concepts and Design. (Vol. 1). USA:  Addison Wesley
- Guedes, P.  e Alves Marques, J. (1998). Tecnologia de Sistemas Distribuídos. (Vol. 1). Lisboa:  FCA
- Marques, J.  e Guedes, P. (1998). Tecnologia de Sistemas Distribuídos. Lisboa:  FCA - Editora de Informática
Método de Ensino
          Aulas teóricas expositivas para apresentação dos conteúdos programáticos. 
Aulas práticas laboratoriais para resolução de problemas e consolidação de conhecimentos  Acompanhamento e orientação no desenvolvimento de projectos de Sistemas Distribuidos
Software utilizado nas aulas
          - Java Development Kit
- Netbeans
Aprovado em Conselho Técnico Cientifico: 17 de julho de 2019
Download da Ficha da Unidade Curricular (FUC)

















