Engenharia de Software

Ano
3
Ano lectivo
2017-2018
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 de eng. de software (requisitos, mockups, arquitectura e design, plano de qualidade..), enquanto as aulas laboratorias visam avaliar a correcta utilização de processos que garantam a visibilidade

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 o artefacto de software a desenvolver usado a linguagem 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. Introdução à OCL (Object Constraint Language). 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

1. Essentials of Software Engineering (3rd Ed.), Frank Tsui, Orlando Karam, Barbara Bernal, Jones & Bartlett Learning, 2013, ISBN-13: 978-1449691998 2. UML Distilled (3rd Ed.), Martin Fowler, Addison-Wesley Professional, 2003, ISBN-13: 978-0321193681.