Ficha Unidade Curricular (FUC)

Informação Geral / General Information


Código :
04126
Acrónimo :
04126
Ciclo :
1.º ciclo
Línguas de Ensino :
Português (pt)
Língua(s) amigável(eis) :
Português

Carga Horária / Course Load


Semestre :
2
Créditos ECTS :
6.0
Aula Teórica (T) :
0.0h/sem
Aula Teórico-Prática (TP) :
36.0h/sem
Trabalho de Campo (TC) :
0.0h/sem
Seminario (S) :
0.0h/sem
Estágio (E) :
0.0h/sem
Orientação Tutorial (OT) :
1.0h/sem
Outras (O) :
0.0h/sem
Horas de Contacto :
37.0h/sem
Trabalho Autónomo :
113.0
Horas de Trabalho Total :
150.0h/sem

Á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 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


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