Disciplina Curricular

Arquitectura de Software ASof

Mestrado Bolonha em Engenharia Informática e de Computadores - Alameda - MEIC-A 2021

Contextos

Grupo: MEIC-A 2021 > 2º Ciclo > Area Principal > Agrupamentos > Engenharia de Software

Período:

Peso

6.0 (para cálculo da média)

Objectivos

Formar nos métodos, técnicas e linguagens do desenho de software de qualidade utilizando as abordagens de arquiteturas de software e desenho centrado no domínio para o desenvolvimento de sistemas de software de larga escala. Estudar os métodos e as técnicas da passagem do espaço do problema para o espaço da solução de modo a garantir a rastreabilidade entre os requisitos do sistema e o seu desenho. Ler, analisar e desenhar arquiteturas de software.

Programa

Introdução à Arquitetura de Software: definição de arquitetura de software; o ciclo de influência da arquitetura. Dos requisitos para a arquitetura: atributos de qualidade arquitetural; táticas para atingir as qualidades arquiteturais; as qualidades arquiteturais de disponibilidade, facilidade de modificação, desempenho, segurança, interoperabilidade, facilidade de teste, usabilidade e escalabilidade. Documentar arquiteturas de software: vistas e estilos arquiteturais; o tipo vista módulo e os seus estilos arquiteturais; o tipo vista componente-e-conetor e os seus estilos arquiteturais; o tipo vista de afetação e os seus estilos arquiteturais. Desenvolvimento de sistemas de software de larga escala: desenho centrado no domínio; arquitetura de microserviços; tecnologias para processar um grande número de eventos assíncronos. Casos de estudo: sistemas reais como, por exemplo, Facebook, Twitter, Amazon e Netflix.

Metodologia de avaliação

A avaliação da cadeira de Arquitecturas de Software é composta pelos seguintes elementos: • Exame teórico: 40% da nota final, nota mínima de 8.5 valores (em 20) • Mini testes: 40% da nota final, 4 mini testes realizadas durante as aulas práticas, são consideradas as 3 melhores notas • Trabalhos práticos (em grupo): 20% da nota final A nota final é calculada de acordo com a fórmula • NotaFinal = roundHalfUp(0.4 x E + 0.4 x MT + 0.2 x TP) em que "E", "MT" e "TP" correspondem às notas (de 0 a 20 valores) do Exame, Mini Testes e dos Trabalhos Práticos, respectivamente. A nota dos mini testes é calculada • MT = ((MT1 + ... + MT4) - MIN(MT1, ... , MT4))/3. A nota dos trabalhos práticos "TP" é a média aritmética, sem arredondamentos, das notas obtidas em cada um dos trabalhos práticos realizados. Opção para trabalhadores estudantes: Os alunos que tiverem o estatuto de trabalhador-estudante realizam apenas exame final, cujo peso na nota final é de 100%.

Componente de Competências Transversais

Um grupo de 6 elementos analisa um caso de estudo real da indústria, o que corresponde a 20% da avaliação.

Componente Laboratorial

Análise da arquitetura de software de casos de estudo reais da indústria de software, como sejam Uber, Netflix, Facebook, Twitter, etc.

Componente de Programação e Computação

No curso onde esta UC é oferecida estão asseguradas as componentes de Computação e Programação de acordo com o MEPP 2122.

Princípios Éticos

Todos os membros de um grupo são responsáveis pelo trabalho do grupo. Em qualquer avaliação, todo aluno deve divulgar honestamente qualquer ajuda recebida e fontes usadas. Numa avaliação oral, todo aluno deverá ser capaz de apresentar e responder a perguntas sobre toda a avaliação.

Disciplinas Execução

2021/2022 - 1º Semestre