Arquitetura de Software
-
Conhecimentos de Base Recomendados
-
-
Objetivos
No final desta unidade curricular os alunos terão as seguintes competências:
- Analisar, caracterizar e avaliar uma determinada arquitetura de software.
- Analisar e justificar decisões entre várias soluções arquiteturais que competem entre si.
- Propor e desenhar soluções de arquitetura de software
- Capacidade critica de reflexão sobre os vários domínios da arquitetura de software por forma a suportar o seuprocesso de aprendizagem.
-
Métodos de Ensino
Os métodos predominantes serão métodos baseados no paradigma da aprendizagem ativa. Em cada aula serádistribuída uma ou mais atividades para os alunos trabalharem em grupos de 2 a 3 elementos. As atividades serãodirecionadas para as competências definidas nos objetivos da aprendizagem.
O modelo de aprendizagem será hibrido com 50% das aulas lecionadas em modo presencial e 50% em modo remoto.
Avaliação: Participação nas atividades. Trabalhos externos a desenvolver em grupo. Testes
Componentes:
Atividades semanais: 30% da nota de cada trabalho externo (bónus sobre a nota)
Trabalhos externos: 60% da nota final (trabalhos de grupo)
Testes escritos (ou exame): 40% da nota final (trabalho individual) -
Estágio(s)
Não
-
Programa
Conceitos base de Arquitetura de Software e o seu papel no desenvolvimento de software
Atributos de qualidade de software
Princípios fundamentais e orientações para o desenho de uma arquitetura de software
Estilos e padrões arquiteturais
Documentação e avaliação das arquiteturas de software
Arquitetura de aplicações modernas
Aspetos práticos das arquiteturas de software -
Demonstração de conteúdos
Os conteúdos programáticos observam os objetivos da unidade curricular relativos aos conhecimentos a adquirir,focando o ensino dos conceitos essenciais teóricos da arquitetura de software e transpondo esses conceitos para aprática.
-
Demonstração da metodologia
O modelo de funcionamento da Unidade Curricular, que é baseado na metodologia pedagógica de aprendizagem ativa,vai permitir que cada aluno desenvolva as competências específicas nas várias vertentes da arquitetura de software, jáque para cada tema da unidade curricular, será apresentada uma atividade, cuja execução conduzirá ao domínio e á àprática dos conceitos teóricos associados.
As atividades propostas serão direcionadas para a concretização das competências definidas nos objetivos daaprendizagem.
Propõe-se que 70% do tempo de contacto seja utilizado em atividades práticas a realizar pelos alunos e 30% para aintrodução e sistematização de conceitos teóricos. -
Docente(s) responsável(eis)
José António Moinhos Cordeiro - 2.º Semestre
-
Bibliografia
Len Bass, Paul Clements, Rick Kazman. Software Architecture in Practice, 4th Edition, Addison-Wesley, 2021. ISBN:978-0136886099.
Mark Richards, Neal Ford. Fundamentals of Software Architecture: An Engineering Approach, O'Reilly Media, 2020.ISBN: 978-1492043454.
Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers. Documenting Software Architectures: Views andBeyond, Second Edition, Addison-Wesley, 2011. ISBN: 978-0321552686
Detalhes do curso
-
Código
02100747
-
Modo de Ensino
MISTO
-
ECTS
7.5
-
Duração
Semestral
-
Horas
15h Orientação Tutorial
30h Práticas e Laboratórios
15h Teórico-Práticas
