Engenharia de Software

Ano
3
Ano lectivo
2023-2024
Código
01000230
Área Científica
Ciências Informáticas
Língua de Ensino
Português
Modo de Ensino
Presencial
Duração
Semestral
Créditos ECTS
6.0
Tipo
Obrigatória
Nível
1º Ciclo - Licenciatura

Conhecimentos de Base Recomendados

Introdução à Programação e Resolução de Problemas, Programação Multimédia,Tecnologias da Internet.

Métodos de Ensino

Aprendizagem baseada num projecto de software de dimensão moderada, realizado por equipas obrigatoriamente multidisciplinares (LEI/LDM). Os alunos têm de desenvolver um produto de software ao longo do semestre utilizando os conceitos, metodologias e técnicas leccionadas nas aulas teóricas, com um desfasamento de uma a duas semanas relativamente aos entregáveis. Estes entregáveis focam-se nos artefactos clássicos de engenharia de software (requisitos, mockups, arquitectura e design, plano de qualidade,...), enquanto as aulas laboratoriais visam avaliar a correcta utilização de processos que garantam a visibilidade e qualidade do trabalho realizado.

Resultados de Aprendizagem

O aluno deverá ser capaz de perceber porque razão a complexidade do software exige uma abordagem de engenharia e as diversas formas de organizar as pessoas e actividades para o desenvolvimento de um produto de qualidade, nomeadamente abordagens lineares, iterativas e incrementais. Deverá ainda ser capaz de perceber as diferenças entre elas e escolher a(s) mais indicada(s) em função do contexto concreto do projecto. Deverá também ser capaz de usar técnicas e artefactos genéricos de gestão de projecto (diagramas Gantt e PERT/CPM, análise de riscos...). Finalmente, deverá ser capaz de descrever aspectos centrais do artefacto de software a desenvolver usado a notação UML.

Estágio(s)

Não

Programa

1. Introdução à Engenharia de software. A natureza do software. Tipos de software. Qualidade do software. 2. Introdução ao processo de desenvolvimento de software. Recolha e análise de requisitos. Projeto. Implementação. Teste. Processo de desenvolvimento em cascata. Desenvolvimento iterativo e evolutivo. 3. Introdução à gestão de projectos de software. Actividades de gestão. Planeamento do projecto. Escalonamento do projecto. Diagramas PERT/CPM. Diagramas de Gantt. Gestão de risco em projectos de software. Identificação, análise, planeamento e monitorização de riscos. 4. Linguagem UML Diagramas de casos de uso. Diagramas de classes. Diagramas de objectos. Diagramas de interacção. Diagramas de sequência. Diagramas de actividades. Diagramas de estados. Diagramas de instalação. Mapeamento de diagramas UML em código.

Docente(s) responsável(eis)

Mário Alberto da Costa Zenha Rela

Métodos de Avaliação

Avaliação
Projecto: 50.0%
Exame: 50.0%

Bibliografia

Software Engineering, Global Edition, by Ian Sommerville, ISBN-13: 978-1292096131,  Pearson Education 2015