Unidade Curricular:Código:
Projeto em Sistemas e Redes1126PSRS
Ano:Nível:Curso:Créditos:
1MestradoEngenharia Informática (Computação Móvel)6 ects
Período Lectivo:Língua de Instrução:Nº Horas:
Segundo SemestrePortuguês/Inglês78
Objectivos de Aprendizagem:
Esta unidade curricular tem por objetivo dotar os alunos de conhecimentos técnicos e tecnologias emergentes sobre o projeto, desenvolvimento e implantação de sistemas backend, desenvolvendo os fundamentos, modelos e ferramentas de engenharia de software utilizados no projeto, gestão, desenvolvimento, avaliação, teste, implantação e documentação de sistemas backend.
Ao completar com sucesso esta unidade curricular os alunos devem ser capazes de:
- Gerir, planear, desenhar e desenvolver todo o projeto de um sistema
- Definir os componentes da arquitetura de um sistema de forma apropriada
- Escolher as ferramentas de desenvolvimento adequadas
- Desenvolver todo o sistema, tanto na vertente do código como na documentação de toda a aplicação
- Definir um plano de automação de testes e qualidade de software
- Implantar o sistema desenvolvido
- Perceber os conceitos de integração, entrega e implantação contínua
Conteúdos Programáticos:
1 Especificação de requisitos de um sistema
2 Modelação de um sistema
3 Arquitetura de um sistema
4 Desenvolvimento de um sistema
5 Documentação de um sistema
6 Testes automáticos e qualidade de software
7 Integração e entrega contínua
8 Implantação de sistemas
Demonstração da Coerência dos Conteúdos Programáticos com os Objectivos da Unidade Curricular:
Como se pretende que os alunos desenvolvam competências aplicadas de definição e desenvolvimento de projetos com base em objetivos definidos, os conteúdos fornecem as competências essenciais para esse fim.
Metodologias de Ensino (Avaliação Incluída):
A transmissão de conhecimentos nesta unidade curricular será efetuada recorrendo a aulas de cariz teórico-prático, onde são apresentados os conceitos fundamentais à compreensão dos temas do programa. Os alunos têm ainda oportunidade de aplicar e desenvolver os seus projetos concretos que complementam a base de experiências sobre os temas abordados. A avaliação é contínua, através do desenvolvimento de um projeto individual.
Demonstração da Coerência das Metodologias de Ensino com os Objectivos de Aprendizagem da Unidade Curricular:
A metodologia de ensino é orientada para realização prática, aplicando conceitos e técnicas previamente apresentadas e discutidas, pelo que se considera adequada para a aquisição de competências práticas de desenvolvimento de projetos complexos.
Bibliografia:
[1] Guerreiro, S., “Introdução à Engenharia de Software”, FCA, 2015
[2] Pressman, R., ”Software Engineering: A practitioner’s Approach”, 8th Ed., McGraw-Hill, 2015.
[3] Labouardy, M., “Pipeline as Code: Continuous Delivery with Jenkins, Kubernetes, and Terraform”, Manning, 2021.
[4] Elder, M., Kitchener, J., Topol, B., “Hybrid Cloud Apps with OpenShift and Kubernetes: Delivering Highly Available Applications and Services”, O'Reilly, 2021.