Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
480 - Informática
Departamento / Department
Departamento de Tecnologias Digitais
Ano letivo / Execution Year
2022/2023
Pré-requisitos / Pre-Requisites
Programação para a Internet
Objetivos Gerais / Objectives
O objetivo desta unidade curricular é o de fornecer uma visão holística e alargada sobre os conceitos de computação distribuída e na nuvem, assim como de processamento e integração de grandes volumes de dados, de modo a capacitar os estudantes para a concretização de aplicações web para a nuvem
Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes
OA1 Compreensão dos conceitos relacionados com a computação distribuída e na nuvem. OA2 Desenvolver uma visão holística e abrangente sobre a organização e funcionamento dos modelos de computação existentes OA3 Compreensão da dinâmica de produção de novos dados e da consequente necessidade de os processar e deles retirar valor OA4 Compreender os princípios de criação de aplicações, assim como os relacionados com serviços OA5 Compreender os mecanismos, tecnologias e protocolos envolvidos na nuvem e como permitem suportar o funcionamento desta OA6 Desenvolver a criatividade, inovação tecnológica, pensamento crítico OA7 Desenvolver a autoaprendizagem, revisão por pares, trabalho em equipa, expressão oral
Conteúdos Programáticos / Syllabus
C1 Introdução à computação na Nuvem. Objectivos, Modelos de distribuição (SaaS, PaaS, IaaS, DBaaS), de implantação e infraestrutura. Conceitos de computação distribuída e concorrência. Introdução à segurança na nuvem. Redundância e tolerância a falhas. C2 Middleware usando Web Services. Arquitectura de serviços web. A relação entre SOA e a computação na nuvem. A web, o protocolo HTTP e Estilo arquitectural RESTful. Serviços e comunicação entre serviços. Tecnologias e protocolos web. Middleware para a nuvem. C3 Processamento distribuído de grandes volumes de dados. Princípios de arquitetura de dados. Breve revisão dos modelos de persistência. Conceito DaaS e NoSQL. Modelo de programação MapReduce. C4 Desenvolvimento de aplicações para a nuvem. Integração com fontes de informação heterogénea. Distribuição de informação geográfica, Web Map Service (WMS) e GeoJSON
Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular units content dovetails with the specified learning outcomes
OA1 ? {C1} OA2 - {C1, C2} OA3 - {C3} OA4 - {C4} OA5 - {C1, C2, C3, C4} OA6 - {C2, C3, C4} OA7 - {C2, C3, C4}
Avaliação / Assessment
UC com Avaliação Periódica, não contemplando Exame Final. Presença obrigatória em 90% de todas as atividades da UC. Pesos da avaliação: - Trabalhos lab individuais, 80% obrigatórios (25%) - Projeto lab (grupo de 2), com discussão oral individual (50%) - 2 mini-testes de resposta múltipla (25%) Se reprova na época normal (< 10 val) o aluno acede ao exame de 1º ou 2ª épocas, valendo 50% da nota, sendo obrigatória a aprovação no Projeto em grupo ou a realização de um projeto individual (50%).
Metodologias de Ensino / Teaching methodologies
Total de 150 horas: - Aulas expositivas teórico-práticas: teoria,demonstrações, apresentações audiovisuais (12 h) - Aulas participativas: análise e discussão de casos de estudo,apresentações convidadas (3 h) - Aulas ativas: realização de exercícios, dos entregáveis do projeto de grupo e apresentação do projeto (21h) - Aula de apoio tutorial(1h) - Trabalho autónomo por parte do aluno: auto-estudo com apoio Coursera, revisão da matéria dada e realização dos entregáveis do trabalho de grupo (113h)
Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes
É a seguinte a correspondência entre as metodologias de ensino-aprendizagem e os objetivos de aprendizagem (OA): - Aulas expositivas para apresentação oral das unidades de ensino teóricas: OA1, OA2, OA3, OA4, OA5. - Aulas participativas com análise e discussão de casos de estudo: OA3, OA4, OA5. - Aulas ativas com a realização dos X entregáveis relativos ao projeto de grupo: OA1, OA2, OA3, OA4, OA5, OA6, OA7. - Autoestudo e trabalho autónomo, para consulta da bibliografia, revisão de matéria dada e realização dos entregáveis do trabalho de grupo: OA1, OA2, OA3, OA4, OA5, OA6, OA7.
Observações / Observations
-
Bibliografia Principal / Main Bibliography
- Kumar, V. Shindgikar, P. (2018). Modern Big Data Processing with Hadoop. Ed: Packt. ISBN-13: 978-1-78712-276-5 - Etzkorn, Letha (2017). Introduction to Middleware: Web Services, Object Components, and Cloud Computing. Ed: CRC Press. ISBN-13: 978-1-4987-5407-1 - Marinescu, D. (2018). Cloud Computing: Theory and Practice. Ed: Morgan Kaufmann. ISBN-13: 978-0-12-812810-7
Bibliografia Secundária / Secondary Bibliography
- Chang F., Dean J., Ghemawat S,, C. Hsieh W., Wallach D., Burrows M., Chandra T., Fikes A., and Gruber, R. (2006). Bigtable: a distributed storage system for structured data. In Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7 (OSDI '06). USENIX Association, USA, 15. - Dean J. and Ghemawat S. (2004). MapReduce: simplified data processing on large clusters. In Proceedings of the 6th conference on Symposium on Operating Systems Design & Implementation - Volume 6 (OSDI'04). USENIX Association, USA, 10. - Ghemawat S., Howard G., and Leung, S. (2003). The Google file system. SIGOPS Oper. Syst. Rev. 37, 5 (December 2003), 29?43. DOI: https://doi.org/10.1145/1165389.945450 - Kumar, V. Shindgikar, P. (2018). Modern Big Data Processing with Hadoop. Ed: Packt. ISBN-13: 978-1-78712-276-5 ? Artigos: - Etzkorn, Letha (2017). Introduction to Middleware: Web Services, Object Components, and Cloud Computing. Ed: CRC Press. ISBN-13: 978-1-4987-5407-1 - Livros de texto: o Marinescu, D. (2018). Cloud Computing: Theory and Practice. Ed: Morgan Kaufmann. ISBN-13: 978-0-12-812810-7
Data da última atualização / Last Update Date
2024-02-16