Escolar Documentos
Profissional Documentos
Cultura Documentos
Atividades
Fases (tempos)
Fase de Definio
deve-se analisar os requisitos, recursos e
restries para apresentar solues, estudar a viabilidade, planejar e gerenciar o desenvolvimento a partir de estimativas e anlise de riscos que se utilizam de mtricas Esta fase encerra-se com o contrato de desenvolvimento.
Engenharia de Software, 2006 Jair C Leite
Fase de desenvolvimento
Design de Software
- Design conceitual, design da interface de usurio, design da arquitetura de software, design de algoritmos e estruturas de dados
Implementao e integrao
- Codificao, compilao, integrao e verificao de programas (testes, inspeo, depurao)
Verificao da qualidade
- Testes beta, avaliao de usabilidade, avaliao de desempenho, etc.
Fase de Operao
Distribuio e entrega Instalao e configurao Utilizao Manuteno
- Corretiva - correo de erros - Evolutiva ou adaptativa - novas verses
Econmica - relao custo/benefcio; Tcnica - tecnologia e capacitao; Jurdica - aspectos legais. - Levantamento e anlise de requisitos Entrevista, observao, reunies - Especificao de requisitos Documento contendo os requisitos do usurio e do sistema funcionais e no-funcionais
- Validao de requisitos
Feasibility report
Design de Software
Processo de converter a especificao num conjunto
de modelos que descrevem a estrutura e o comportamento do software, particionado em unidades abstratas.
Descreve como o software ser realizado. Modelos de processo mais atuais consideram que o
design pode ocorrer simultaneamente com a especificao e com a implementao Atividades - Viso tradicional:
- Arquitetura, Especificao abstrata; Design das interfaces; Design de componentes; Design de algoritmos e estruturas de dados; - Todas as anteriores e mais: Design conceitual e design das interfaces de usurio. Muitas vezes ocorrem na definio.
Engenharia de Software, 2006 Jair C Leite
System architectue
Interface specifiction
Algorithm specifiction
Diferentes etapas
System specification
System design
Detailed design
Service
Acceptance test
O processo de testes
Unit testing Module testing Sub-system testing System testing Acceptance testing
Component testing
Fonte: Ian Sommerville
Integration testing
User testing
Evoluo de software
O software normalmente precisa evoluir, por variados motivos:
- Mudanas no domnio de aplicao implicam em novos requisitos - Surgimento de novas tecnologias de software e hardware
Modify systems
Existing systems
New system
Engenharia de Software, 2006 Jair C Leite
Tools
Workbenches
Environments
Editors
Compilers
File comparators
Integrated environments
Process-centred environments
Programming
Testing
Multi-method workbenches
Single-method workbenches
General-purpose workbenches
Language-specific workbenches