Arquitetura de Software
1
2021-2022
02023397
Engenharia de Software
Inglês
Português
Presencial
Semestral
6.0
Opcional
2º Ciclo - Mestrado
Conhecimentos de Base Recomendados
Programação, Engenharia de Software, Tecnologia dos Computadores.
Métodos de Ensino
Aulas teóricas com exposição detalhada, recorrendo a meios audiovisuais, dos conceitos, princípios e teorias fundamentais sobre a criação e avaliação de arquiteturas de sistemas de software.
Aulas práticas-laboratoriais em que se pretende que os alunos adquiram conhecimentos sobre ferramentas e técnicas de desenvolvimento e avaliação de arquiteturas de software e que, com a orientação do docente, desenvolvam um projeto prático, assim como executem e discutam a realização de 3 trabalhos práticos.
Resultados de Aprendizagem
Após a conclusão desta unidade curricular, os alunos deverão: ser capazes de descrever uma arquitetura com precisão; reconhecer os principais estilos arquiteturais existentes em sistemas de software; propor alternativas de arquitetura para um problema, e escolher entre eles; ter as competências necessárias para a construção de um sistema de software de dimensão média que satisfaça uma especificação de arquitetura; usar as ferramentas de desenvolvimento corretas para acelerar essas tarefas; compreender a definição formal de uma arquitetura e ser capaz de raciocinar sobre as suas propriedades; usar o conhecimento de domínio para especializar uma arquitetura para uma determinada família de aplicações.
Estágio(s)
NãoPrograma
Conceitos base de Arquitetura de Software (AS): o papel da AS no desenvolvimento de software
Principais estilos e padrões arquiteturais em software
Análise de requisitos de software e o seu papel na construção e avaliação de uma AS
Desenho de uma AS: criação, fundamentação e seleção de alternativas arquiteturais
Reutilização de software: estratégias para reutilização de software e avaliação do seu impacto na AS. O recurso a COTS e a middleware numa AS
Notações formais para a especificação e análise de AS
Documentação de uma AS
Implementação de uma AS: design detalhado e design patterns
Avaliação de uma AS: respeito pelos requisitos do software e a gestão de compromissos entre atributos de qualidade
Consideração de tendências futuras do software e o seu impacto nas AS.
Docente(s) responsável(eis)
Bruno Miguel Brás Cabral
Métodos de Avaliação
Avaliação
Resolução de problemas: 15.0%
Exame: 40.0%
Projecto: 45.0%
Bibliografia
Software Architecture in Practice, Third Edition, by Len Bass, Paul Clements, and Rick Kazman. AddisonWesley 2013.
Documenting Software Architectures: Views and Beyond, Second Edition, by Clements, et al.. AddisonWesley 2011.
Design Patterns: Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Addison-Wesley, 1988.