Requisitos e Especificação de Software

Ano
1
Ano lectivo
2025-2026
Código
02055929
Área Científica
Engenharia de Software
Língua de Ensino
Inglês
Outras Línguas de Ensino
Português
Modo de Ensino
Presencial
Duração
Semestral
Créditos ECTS
6.0
Tipo
Opcional
Nível
2º Ciclo - Mestrado

Conhecimentos de Base Recomendados

Programação, Matemática.

Métodos de Ensino

Aulas teórico-práticas (TP): apresentação detalhada dos tópicos, exemplos e discussão.

Aulas práticas laboratoriais (PL): exercícios e aplicação dos conceitos a diversos casos de estudo, bem como apoio aos trabalhos práticos.

Resultados de Aprendizagem

O desenvolvimento de software exige o domínio de métodos para transpor o fosso entre o problema concreto a ser resolvido e o sistema informático funcional. Nesta unidade curricular os estudantes aprendem e aplicam técnicas para

(1) Compreender e descrever o problema que se pretende resolver, os diversos fatores que condicionam o espaço de soluções e as diversas abordagens para escolher as melhores alternativas(requisitos)

(2) Especificar software formalmente bem como métodos e ferramentas de verificação automática de programas contra as suas propriedades(especificação)

No final, cada estudante deverá ser capaz de: (i) identificar diferentes tipos de problemas e as respetivas estruturas; (ii) analisar as condicionantes de natureza técnica, organizacional, de usabilidade e de mercado que influenciam a solução a adotar; (iii) especificar formalmente propriedades de sistemas de software; e (iv) construir programas verificados usando anotações de código e ferramentas de prova automática.

Estágio(s)

Não

Programa

1. Requisitos e especificação em software.

2. Design contextual.

3. Requisitos funcionais e não-funcionais.

4. Requisitos executáveis (BDD).

5. Especificação de pré- e pós-condições, invariantes e asserções.

6. Anotação de código com propriedades.

7. Construção de programas verificados.

8. Verificação automática de programas.

Docente(s) responsável(eis)

Mário Alberto da Costa Zenha Rela

Métodos de Avaliação

Avaliação
Exame: 30.0%
Projecto: 70.0%

Bibliografia

Software Requirements, 3rd Edition, Karl Wiegers, Joy Beatty, 672 pages, ISBN-13: 978-0735679665, Microsoft Press, 2013.

Program proofs, K. Rustan M. Leino, Paperback, ISBN: 9780262546232, Pub date: March 7, 2023, Publisher: The MIT Press, 2023.