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)
Pré-requisitos
Unidades curriculares de licenciatura de Engenharia de Software, Programação por Objetos, Bases de Dados e Sistemas Distribuídos
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.