Engenharia de Software
Código
0105995Créditos ECTS
6Objetivos
1. Adquirir os princípios e conceitos subjacentes a uma visão global do processo de desenvolvimento de software, desde o levantamento de requisitos até à entrega e à manutenção do sistema.
2. Integrar os conhecimentos adquiridos em outras disciplinas do curso no contexto do processo de desenvolvimento de software.
3. Compreender o desenvolvimento de software como uma atividade de engenharia que integra a tecnologia com fatores sociais e humanos.
Programa
- Introdução à Engenharia de Software.
- Processos de desenvolvimento de software.
- Planeamento e gestão de projetos de software.
- Engenharia de requisitos.
- Desenho de software.
- Escrita de código.
- Verificação e validação.
- Entrega e manutenção.
Métodos de Ensino
As aulas teóricas são vocacionadas para a apresentação e discussão de conceitos e estudos de caso.
As aulas práticas laboratoriais, articuladas com as aulas teóricas, são vocacionadas para a análise e discussão plenária de respostas a questões sobre casos de estudo e da resolução de problemas e exercícios teórico-práticos.
Em cada edição desta unidade curricular é organizado, pelo menos, um seminário temático proferido por responsável pelo desenvolvimento de software em entidade local, de forma a que os estudantes possam tomar contacto com a realidade de trabalho local em engenharia de software.
A plataforma de e-Learning Moodle da UAc (em http://moodle.uac.pt) é utilizada como repositório de material pedagógico e didático de apoio à aprendizagem, bem como de agendamento, divulgação e promoção de atividades complementares e de gestão da avaliação.
Bibliografia
Essencial
- Sommerville, I. (2015), Software Engineering (10ª edição): Pearson International Edition.
- J. Pinto, C. Tscharf (2019), Scrum - a gestão ágil de projetos, 1ª edição, FCA.
- Freeman, E., Sierra, K., Bates B. (2014), Head First Design Patterns: O'Reilly.
Complementar
- Bruegge B. e Dutoit, A. H. (2013), Object-oriented software Engineering using UML, Patterns and Java (3ª edição): Pearson International Edition
- Sommerville, I. (2020), Engineering Software Products - An Introduction to Modern Software Engineering (1ª edição): Pearson.
- McConnell, S. (2019), More Effective Agile: A Roadmap for Software Leaders, Construx Press