Guia de Cursos

Queres conhecer a oferta de cursos da NOVA, nas áreas das licenciaturas, mestrados e doutoramentos?
No nosso Guia de Cursos encontras informação útil sobre Faculdades, Institutos e Escolas.
Podes ainda aceder a informações complementares necessárias a uma completa integração.

saber mais Guia de Cursos

Faculdade de Ciências e Tecnologia

Requisitos e Arquitetura de Software

Código

11171

Unidade Orgânica

Faculdade de Ciências e Tecnologia

Departamento

Departamento de Informática

Créditos

6.0

Professor responsável

Ana Maria Dinis Moreira

Horas semanais

4

Total de horas

4

Língua de ensino

Português

Objectivos

Objectivo: estudo dos vários tipos de requisitos como pilares orientadores da arquitetura de software. Os requisitos não-funcionais (NFRs) e análise de conflitos servem de base para derivação sistemática da arquitetura de software.

Saber:

  • Lidar com desafios colocados pela dimensão, objectivos contraditórios e descrição deficiente dos problemas reais.
  • Compreender as vantagens da sistematização e reutilização planeada para a derivação da arquitetura.
  • Ponderar a arquitectura com base em alternativas nem sempre disjuntas.

Saber fazer:

  • Aplicar abordagens orientadas a objectivos para identificar, especificar, validar e gerir requisitos.
  • Usar o NFR Framework para refinar NFRs e resolver conflitos.
  • Analisar alternativas arquiteturais e escolher para satisfazer as restrições impostas pelos NFRs, promovendo a derivação sistemática da arquitetura.
  • Descrever arquiteturas usando visões, padrões e estilos.

Utilizar linguagens de descrição arquitetural ferramentas automáticas.

Pré-requisitos

Métodos de Desenvolvimento de Software

Engenharia de Software

Linguagens de Modelação para Domínios Específicos

Conteúdo

1. Introdução
1.1 A natureza e a importância da Engenharia de Requisitos
1.2 Requisitos como drivers da Arquitetura de Software
1.3 Arquitetura de software e sua importância na evolução

2. Processo de Engenharia de Requisitos
2.1 Processos e modelos de engenharia de requisitos
2.2 Requisitos Elicitação e Exploração (Design Thinking, Brainstorming)
2.3 Análise e Negociação de Requisitos (gestão de conflitos e priorização)
2.4 Validação de Requisitos (Inspeções, protótipos, validação de modelo e teste de requisitos)
2.5 Gestão de Requisitos (Requisitos variáveis ​​e duradouros, gestão de mudanças, rastreabilidade)
2.6 Padrões de documentação de requisitos ((por exemplo, IEEE 830-1998) 

3. Técnicas de engenharia de requisitos
3.1 Métodos para especificação de requisitos
3.2 Estrutura de requisitos não funcionais (Refinamento e operacionalização)
3.3. Modelação baseada em objetivos com iStar (modelagem organizacional intencional)
3.4 Derivação de modelos orientados a objetos (mapeamentos entre paradigmas, modelos e conceitos)

4. Fundamentos de desenho  arquitetural 
4.1 Princípios de arquitetura de software
4.2 Mapeamento de requisitos para conceitos arquiteturais
4.3 Documentação da arquitetura de software 

5. Técnicas de arquitetura de software
5.1 Estruturação do sistema e decomposição modular
5.2 Vistas arquiteturais
5.3 Estilos e padrões arquiteturais (catálogos de arquiteturas de software)
5.4 Linguagens de descrição arquiteturais
5.5 Avaliação da arquitetura

6. Avanços em requisitos e arquitetura
6.1 Questões transversais
6.2 Análise de Domínio e Linhas de Produto de Software

Bibliografia

  • An Introduction to requirements Engineering, I. K. Bray, Addison-Wesley, 2002
  • K. Wiegers, J. Beatty, Software Requirements, Microsoft Press, 2013
  • J.Dick, E. Hull, K. Jackson, Requirements Engineering,  Springer-Verlag, 2010 
  • A. Lamsweerde, Requirements Engineering, Wiley, 2009
  • I. Alexander, N. Maiden, Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle, Wiley, 2004
  • G. Kotonya, I. Sommerville, “Requirements Engineering: Processes and Techniques”, Wiley, 1998
  • I. Alexander, R. Stevens,  “Writing Better Requirements”, Addison Wesley, 2002
  • R. N. Taylor, et al, "Software Architecture: Foundations, Theory, and Practice" John Wiley and Sons, 2009
  • L. Bass, et al, "Software Architecture in Practice", 2nd edition, Addison-Wesley, 2003
  • P. Clements, et al "Documenting Software Architectures: Views and Beyond", Addison-Wesley, 2003.

Método de ensino

O objectivo desta UC é o estudo dos vários tipos de requisitos como pilares orientadores da arquitetura de software no contexto do estado da arte atual, envolvendo por isso: 

- brainstorming para compreensão do domínio do problema e o estudo de técnicas próprias de engenharia de requisitos dirigida por objectivos com ênfase na especificação e análise de requisitos não-funcionais que são fundamentais para a derivação informada e sistemática da arquitetura do software (Partes 1 e 2); 

- a análise e propagação dos resultados para a arquitetura de software com vista a facilitar a evolução do futuro sistema leva ao estudo das visões, padrões e estilos arquiteturais, terminando com o refinamento e avaliação da arquitetura resultante (Partes 1, 3 e 4); e

- uma visão global do estado da arte atual (Parte 4).

Método de avaliação

**As regras de avaliação podem sofrer ajustes durante as duas primeiras semanas de aulas**

A avaliação consiste em duas componentes obrigatórias:

(i) Trabalho prático (50%) com entregáveis ao longo do semestre;

(ii) Dois testes (50%).

O trabalho (e respectivo relatório) é realizado em grupos de 2-3, e os testes individualmente.

A nota é uma média ponderada do trabalho prático (50%), e da nota dos testes (25% cada um).

A frequência é dada pelos trabalhos e apenas alunos com média superior a 9.5 valores têm frequência.

Os alunos que não cumprirem qualquer uma das componentes de avaliação são classificados como "Reprovados" e “Ausentes” caso não entreguem qualquer componente de avaliação.

O exame de época de recurso é para alunos que têm frequência, mas que não obtiveram um desempenho satisfatório na avaliação contínua, com média entre 9.5 e 20, ou que desejam fazer melhoria.

Para melhorias de nota realizadas na época de recurso do semestre em que foi obtida aprovação na cadeira, as regras de cálculo da nota são as da época de recurso, ou seja, a nota final é a nota do exame. Melhorias de notas obtidas em semestres anteriores são feitas exclusivamente por exame, em época de recurso ou época especial, sendo a nota final a nota obtida no exame.

Na época especial, a nota final é a nota do exame.

Cursos