Disciplina
Desenvolvimento e Verificação de Software
Área
Área Científica de Metodologia e Tecnologias da Programação > Linguagens de Programação
Activa nos planos curriculares
MEIC-A 2006 > MEIC-A 2006 > 2º Ciclo > Área de Especialização Complementar > Ciência da Computação > Desenvolvimento e Verificação de Software
MMA 2006 > MMA 2006 > 2º Ciclo > Perfis > Matematica da Computação > Metodologia e Tecnologia da Programação > Desenvolvimento e Verificação de Software
Nível
Projecto (30%) + 2 Testes (70%)
Tipo
Não Estruturante
Regime
Semestral
Carga Horária
1º Semestre
3.0 h/semana
1.5 h/semana
147.0 h/semestre
Objectivos
Esta UC pretende cobrir diversos tópicos relacionados com o desenvolvimento de software robusto, incluindo teste, detecção de erros, verificação e metodologias para a construção de código robusto. O foco será nas metodologias mais recentes que permitem o desenvolvimento de software robusto a custo moderado. Pretende-se que esta UC efectue a ligação entre os fundamentos teóricos e a aplicação prática dos diversos tópicos cobertos.
Programa
Técnicas de debugging. Geração automática de testes. Instrumentalização e monitorização em runtime. Detecção de invariantes. Detecção e análise de problemas de desempenho. Métodos de caixa-negra. Introdução à análise estática. Sistemas de tipos. Detecção de erros. Análise de programas. Verificação de modelos.
Metodologia de avaliação
Projecto (30%) + 2 Testes (70%)
Pré-requisitos
Componente Laboratorial
Princípios Éticos
Componente de Programação e Computação
Componente de Competências Transversais
Bibliografia
Principal
Software Abstractions: Logic, Language, and Analysis
Introduction to Software Testing