Sistemas Distribuídos são sistemas constituidos de diversos computadores que se comunicam através de mensagens. Actualmente, a maior parte dos sistemas que utilizamos são distribuídos, e comunicam-se através da Internet. Nesta unidade curricular são abordados os principais conceitos, arquitecturas, tecnologias, problemas e desafios de sistemas distribuídos.   A parte prática da unidade curricular aborda a programação de sistemas distribuídos utilizando sockets, Java RMI e serviços web.