Arquitetura e Padrões de Software
Código: 22304
Departamento: DCET
ECTS: 6
Área científica: Engenharia Informática
Total de horas trabalho: 156
Total de horas de contacto: 30

Nesta UC pretende-se identificar a necessidade e a oportunidade de reutilização de soluções padronizadas para problemas típicos no desenvolvimento de software e estudar as arquiteturas e padrões de software mais conhecidos. Pretende-se também, perante um problema específico, identificar as arquiteturas e padrões que se adequam à sua resolução e implementá-los, utilizando práticas de qualidade em engenharia de software.

Programação Web
Página Web
Scripting

No termo do processo de formação nesta unidade curricular os estudantes devem estar capazes de:
  1. Compreender os problemas de qualidade que são resolúveis ou minimizados através de soluções padronizadas;
  2. Conhecer as arquiteturas e padrões de software mais conhecidos;
  3. Conhecer e aplicar técnicas de implementação de práticas de qualidade em engenharia de software.

  1. Introdução aos estilos arquitetónicos e padrões de desenho.
  2. Estilos arquitetónicos: MVC, estratificado, repositório, cliente-servidor, encaminhamento e filtragem.
  3. Padrões de criação: Abstract Factory; Builder; Factory Method; Prototype; Singleton.
  4. Padrões de estrutura: Adapter; Bridge; Composite; Decorator; Façade; Flyweight; Proxy.
  5. Padrões de comportamento; Chain of responsibility; Command; Interpreter; Iterator; Mediator; Memento; Observer; State; Strategy; Template Method; Visitor.
  6. Qualidades de software e técnicas de concretização: simplicidade, rastreabilidade, homogeneidade, conformidade com o desenho, independência para fomentar a reutilização, acoplamento fraco com coesão forte, inteligibilidade, adaptabilidade e manutenção.

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. (1994) Design Patterns: Elements of Reusable Object-Oriented Software, AddisonWesley, ISBN13:9780201633610

Alan Shalloway, James R. Trott. (2004) Design Patterns Explained: A New Perspective on Object-Oriented Design, 2nd Edition, AddisonWesley; ISBN13: 9780321247148

A avaliação tem caráter individual e implica a coexistência de duas modalidades: avaliação contínua (60%) e avaliação final (40%). Essa avaliação será desenvolvida na aplicação de formas diversificadas, definidas no Contrato de Aprendizagem da unidade curricular.