Currículo
Desenvolvimento de Software para A Nuvem 04126
Contextos
Groupo: Desenvolvimento de Software e Aplicações - 2023 > 1º Ciclo > Unidades Curriculares Obrigatórias
ECTS
6.0 (para cálculo da média)
Objectivos
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
Programa
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
Método de Avaliação
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%).
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 113.0
Carga Total -
Bibliografia
Principal
- - 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:
Secundária
- - 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: