Arquiteturas de Software › 40757

código no paco
40757
área científica
Informática
créditos
6
escolaridade
ensino teórico-prático (TP) - 3 horas/semana
idioma(s) de lecionação
Português, Inglês
objectivos

A AS é o culminar de um processo de definição de uma solução que deve obedecer a um conjunto vasto de requisitos técnicos, operacionais, de qualidade e de custo. Pode ser analisada a 2 níveis distintos: distribuição e composição. Ao nível da distribuição podemos ter diversas arquit., entre as quais centralizadas, cliente-servidor e distribuídas. Ao nível da composição podemos ter diversas arquit., entre as quais baseadas componentes e baseadas em MicroServices.
A UC aborda alguns dos aspectos mais relevantes que estão subjacentes à definição de uma arquitectura de software quer seja ao nível da distribuição quer seja ao nível da composição. Os obj. definidos são os seguintes:
O1 – Conhecer arquitecturas de software relevantes quer em termos de distribuição quer em termos de composição
O2 – Conhecer factores com impacto em cada uma das arquitecturas
O3 – Saber escolher para caso concreto qual ou quais as melhores arquitecturas a utilizar
O4 – Conceber arquitecturas para casos concretos

conteúdos

C1 - Introdução:
- o que é “Arquitectura de Software”
- porque é importante “Arquitectura de Software”
- contextos de utilização
- competências de um arquitecto de software
C2 - Principais arquitecturas:
- centralizadas, cliente-servidor, distribuídas, N-camadas, SOA, baseadas em componentes e MicroServices.
- casos de uso para cada arquitectura
- casos de uso como agregação de mais do que uma arquitectura: combinação de distribuição com composição.
C3 –Atributos de qualidade nas arquitecturas de software:
- o que são atributos de qualidade
- principais atributos de qualidade
- papeis dos atributos de qualidade nas diversas arquitecturas de software
C4 – A Arquitectura no Ciclo de Vida dos produtos
- arquitectura em ambientes Ágeis
- arquitectura e requisitos
- concepção de arquitecturas
- documentação de arquitecturas
- implementação e teste
- avaliação
- gestão

avaliação


A avaliação da UC será baseada num exame escrito final e em trabalhos práticos a desenvolver durante o semestre.

metodologia

A UC contempla apenas aulas teórico-práticas não havendo uma divisão explícita em aulas teóricas e aulas práticas. No entanto, o tempo lectivo associado à UC será organizado de modo a contemplar exposição de conteúdos teóricos e execução de trabalhos práticos. Os conteúdos teóricos serão ministrados de forma a que possam ser atempadamente utilizados nos trabalhos práticos.

Os alunos terão uma prática laboratorial intensa com trabalhos em grupo. Cada grupo, perante trabalhos que lhe são atribuídos, terá de desenhar e implementar uma arquitectura que satisfaça os requisitos pretendidos.

bibliografia recomendada

Sam Newman et al. Building Microservices – Designing Fine-Grained Systems, O’Reilly Media, 2015, ISBN: 978-1-491-95035-7
Arno Puder et al. Distributed Systems Architecture: A Middleware Approach, Morgan Kaufmann, 2005, ISBN: 978-1558606487
George T. Heineman et al. Component-Base Software Engineering: Putting the Pieces Together, 2001, ISBN: 978-02001704853
Thomas Erl, Next Generation SOA – A Concise Introduction to service Technology & Service-Orientation, Prentice Hall, 2015, ISBN: 978-0-13-385904-1
Len Bass et al. Software Architecture in Practice, 3rd ed, Addison-Wesley, 2013, ISBN: 978-0-321-81573-6
Paulo Veríssimo, et al. Distributed Systems for System Architects, Springer, 2001, ISBN 0792372662

Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.