Aviso: Se está a ler esta mensagem, provavelmente, o browser que utiliza não é compatível com os "standards" recomendados pela W3C. Sugerimos vivamente que actualize o seu browser para ter uma melhor experiência de utilização deste "website". Mais informações em webstandards.org.

Warning: If you are reading this message, probably, your browser is not compliant with the standards recommended by the W3C. We suggest that you upgrade your browser to enjoy a better user experience of this website. More informations on webstandards.org.

Sub Menu
ISCTE-IUL  >  Ensino  >  LEI , LEI-PL , LIGE , LIGE-PL

Engenharia de Software II (2 º Sem 2019/2020)

Código: L5106
Acrónimo: L5106
Nível: 1º Ciclo
Estruturante: Não
Língua(s) de Ensino: Português
Língua(s) amigável(is):
Ser English-friendly ou qualquer outra língua-friendly, significa que a UC é leccionada numa língua mas que se pode verificar qualquer uma das seguintes condições:
1. Existem materiais de apoio em língua inglesa/outra língua;
2. Existem exercícios, testes e exames em língua inglesa/outra língua;
3. Existe a possibilidade de se apresentar trabalhos escritos ou orais em língua inglesa/outra língua.
1 6.0 18.0 h/sem 18.0 h/sem 0.0 h/sem 0.0 h/sem 0.0 h/sem 0.0 h/sem 1.0 h/sem 37.0 h/sem 113.0 h/sem 0.0 h/sem 150.0 h/sem
Em vigor desde o ano letivo 2019/2020
Pré-requisitos - Domínio razoável da modelação com UML.
- Domínio razoável da programação em Java.
- Frequência da UC Engenharia de Software I com aproveitamento.
Objectivos Esta UC, tal como a que a precede (Engenharia de Software I), usa como enquadramento de referência o SWEBOK (Software Engineering Body of Knowledge), uma iniciativa da IEEE Computer Society, a organização profissional mais importante da área. São abordadas as várias áreas de conhecimento do SWEBOK v3, proporcionando um visão mais alargada (em largura) e mais detalhada (em profundidade), dado que, por um lado, se introduzem tópicos adicionais em cada área e, por outro, alguns desses tópicos são mais avançados. Pretende-se assim com esta UC dotar os alunos de uma visão mais completa e integradora da Engenharia de Software nas suas várias vertentes, alinhada com a sua definição consensualmente aceite:

"The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software."
                                             (IEEE Computer Society)
Programa Os conteúdos são agrupados por área do SWEBOK (entre parêntesis rectos).

CP1 [Requisitos]
Especificação de regras de negócio sobre ontologias de domínio.

CP2 [Desenho]
Desenho por contrato.

CP3 [Construção]
Programação por contrato.

CP4 [Modelos e Métodos]
Desenvolvimento baseado em modelos.

CP5 [Qualidade]
Métricas de qualidade do produto.

CP6 [Manutenção]
Cheiros no código; Refabricações; Compreensão de programas; Evolução de software.

CP7 [Processo]
Avaliação e melhoria do processo.
Processo de avaliação AVALIAÇÃO PERIÓDICA
Projeto prático em grupo e exercícios realizados nas aulas teórico-práticas com peso total de 10 valores e 1 teste escrito (frequência) com peso de 10 valores. As avaliações são individuais.
Existe nota mínima de 50% para o projeto, nota mínima de 50% para os exercícios em aula e nota mínima de 50% para a frequência.

EXAME FINAL
Teste escrito sobre o total da matéria com peso de 100% na nota final da UC.
Processo de ensino-aprendizagem Nas aulas teóricas serão usados slides ilustrados com exemplos, demonstrações de ferramentas, filmes pedagógicos de curta duração e, eventualmente, apresentações de oradores convidados.

Nas aulas práticas serão realizados trabalhos de grupo com intuitos formativos, consolidando o processo de aprendizagem pela compreensão da aplicabilidade dos conceitos e técnicas introduzidos nas aulas teóricas. Sempre que possível, esses trabalhos tirarão partido de ferramentas suportando o estado-da-arte.
Observações UCs anteriores onde é leccionada matéria relevante para esta UC (justificação fornecida entre parêntesis curvos):

Programação Orientada para Objectos
[L5315, 1ºano, 2ºsemestre] e
Algoritmos e Estruturas de Dados
[L5097, 2ºano, 1ºsemestre]
(domínio da programação em Java)

Concepção e Desenvolvimento de Sistemas de Informação
[L0786, 2ºano, 2ºsemestre]
(domínio da modelação com UML)

Engenharia de Software I
[L5105, 3ºano, 1ºsemestre]
(introdução às problemáticas da Engenharia de Software, cujo tratamento tem seguimento directo em ESII)

UCs que irão utilizar a matéria leccionada nesta UC

- Não aplicável porque ESII é uma UC leccionada no último semestre do 1ºciclo.
Bibliografia básica - Acetatos de Engenharia de Software, disponíveis na plataforma de e-learning (à medida que os temas forem introduzidos).

- Software Engineering: a Practitioner's Approach, Roger Pressman / Bruce R. Maxim, 8th edition, McGraw-Hill, 2014.

- Software Engineering, Ian Sommerville, 9th/10th Edition, Addison-Wesley, 2010/2016.
Bibliografia complementar - Materiais online (tutorias, filmes pedagógicos) cujos links serão explicitamente indicados na plataforma de e-learning.

- The Object Constraint Language: Getting Your Models Ready for MDA, Jos Warmer, Anneke Kleppe, 2nd Edition, Pearson Education, 2003.

- Refactoring: Improving the Design of Existing Code, Martin Fowler with contributions by Kent Beck, John Brant, William Opdyke and Don Roberts, Object Technology Series, Addison-Wesley, 2000.

- Object-Oriented and Classical Software Engineering, Stephen Schach, 8th Edition, McGraw-Hill, 2011.

- Artigos e capítulos selecionados.