Contacto WhatsApp 961135355

Universidade Lusófona do Porto

Engenharia de Software

Curso

Engenharia Informática (ULP)

Grau|Semestres|ECTS

Licenciatura | Semestral | 6

Ano | Tipo de unidade curricular | Lingua

2 |Obrigatório |Português

Total de horas de Trabalho | Tempo de Contacto (horas)

164 | 60

Código

ULP452-7341

Disciplinas complementares recomendadas

Não aplicável

Modalidade de Ensino

Face-a-face

Precedências

Não

Estágio profissional

Não

Conteúdos Programáticos

- Engenharia de Software: enquadramento geral, definição, níveis e actividades
- CMMI (modelo de maturidade)
- Modelos de desenvolvimento de software
- Fases clássicas dos modelos de desenvolvimento
- Tipos de evolução dos sistemas
- Engenharia de Requisitos: definição, tipos, actividades, representação, ferramentas
- Modelos de análise: Estruturado e Orientado a objectos
- Gestão e planeamento do desenvolvimento de projectos de software
- Estimação de desenvolvimento de software: COCOMO Model
- Verificação, validação e testes de software
- Aplicações práticas: Software de testes (unitários, interface, etc)
- Definição de estratégias de testes
- Escrita de programas
- Técnicas de estimativas de testes
- Complexidade ciclomática
- Métricas do desenvolvimento de software
- Utilização do Microsoft Team Foundation Server para a gestão de projetos em equipe e para o controlo de Releases.

Objetivos

- Fornecer aos alunos um conjunto de conhecimentos gerais sobre modelos de desenvolvimento de software, com forte ênfase no planeamento de projectos de desenvolvimento (identificação das actividades, estimação de tempos e recursos, definição de precedências), engenharia de requisitos e testes de software.
- Evidenciar o caractér multidisciplinar do perfil de Engenheiro de Software;

Conhecimentos, capacidades e competências a adquirir

Pretende-se o desenvolvimento das seguintes competências:
- Evidenciar a qualidade da obtenção de requisitos
- Planear estratégias de testes de software
- Planear e elaborar projectos de software utilizando alguns dos princípios apresentados definindo o período de cada ciclo e o número previsto de ciclos.
- Colaborar com clientes, colegas, fornecedores e utilizadores num mesmo paradigma implícito de orientação por objectos, embora com vocabulário apropriado ao contexto.
- Estabelecer metodologias e plataformas de desenvolvimento com forte componente gráfica de modo a optimizar a produtividade, melhorar a comunicação e a evitar erros tanto de concepção, como de desenvolvimento e ainda de interface entre os vários perfis profissionais.
- Conseguir escolher as tecnologias para a gestão de um projeto, desde a gestão de partilha de projetos de software entre vários programadores e o controlo de versões de executáveis.


Metodologias de ensino e avaliação

Avaliação contínua:
Componente teórica
- 20% (1 teste escrito)
- 20% (15% apresentação + 5 % trabalho)
- 10% presença e participação na aulas

Componente prática
- 20 % plano de projeto
- 20% documentação + apresentação do mini-projeto
- 10 % presença e participação na aulas
Obrigatória nota mínima de 8 valores em qualquer uma das componentes;

Exames:
- 50 % (componente teórica) + 50% projecto (componente prática)
Obrigatória nota mínima de 8 valores em qualquer uma das componentes;

Bibliografia principal

Lawrence J. Peters. (2008). Getting Results from Software Development Teams (Microsoft Press.)
Roger Pressman. (2009). Software Engineering: A Practitioner¿s Approach (7th ed.). McGraw-Hill Science/Engineering/Math.