es capítulo 2 - processos de software

42
Engenharia de Software Processos de Software Felipe Cunha; Yugo Alencar

Upload: felipe-oliveira

Post on 06-Jun-2015

151 views

Category:

Education


2 download

DESCRIPTION

Engenharia de Software

TRANSCRIPT

Page 1: Es   capítulo 2  - processos de software

Engenharia de Software

Processos de SoftwareFelipe Cunha; Yugo Alencar

Page 2: Es   capítulo 2  - processos de software

Tópicos1. Objetivos e conceitos2. Modelos de Processo de SW

1. Modelo Cascata2. Modelo Incremental3. Modelo Orientado a Reuso

3. Atividades do Processo de SW1. Especificação2. Projeto e implementação3. Validação4. Evolução

4. Lidando com mudanças1. Prototipação2. Entrega incremental3. Modelo espiral de Boehm

5. Rational Unified Process-RUP

Page 3: Es   capítulo 2  - processos de software

321 54

Objetivos e conceitos

Page 4: Es   capítulo 2  - processos de software

Conjunto de atividades relacionadas que levem à Produção de software

Page 5: Es   capítulo 2  - processos de software

Atividades Básicas à todos os Processos

Especificação de Software

Projeto e Implementação de Software

Validação de Software

Evolução de Software

Page 6: Es   capítulo 2  - processos de software

Categorias de Processos de Softwares

Dirigidos a planos

Ageis

Page 7: Es   capítulo 2  - processos de software

321 54

Modelos de Processos de SW

Page 8: Es   capítulo 2  - processos de software

Modelo Cascata

Modelo Incremental

Modelo Orientado a Reuso

Page 9: Es   capítulo 2  - processos de software

Modelo Cascata

Dirigido a plano

Foi o primeiro a ser adotado pelos desenvolvedores

Possui um conjunto de fases bem definidas que correspondem àsetapas do ciclo de vida do software

Não há mistura de fases: uma fase só começa quando a anteriorTermina

Ao final de cada fase, um ou mais documentos devem seraprovados pela equipe de desenvolvimento

Page 10: Es   capítulo 2  - processos de software
Page 11: Es   capítulo 2  - processos de software

Estágios

Análise e definição de requisitos

Projeto de sistema

Implementação e testes unitarios

Integração e testes do sistemas

Operação e manutenção

Page 12: Es   capítulo 2  - processos de software

Principais Problemas

Projetos reais raramente seguem o fluxo seqüencial

Dificuldade em congelar os requisitos no início e em acomodar mudanças dinâmicas

O cliente precisa ter paciência

Page 13: Es   capítulo 2  - processos de software

Modelo Incremental

Desenvolver uma implementação inicial, apresentarao cliente e continuar por meio de varias versõesaté o fim do sistema.

Page 14: Es   capítulo 2  - processos de software
Page 15: Es   capítulo 2  - processos de software

Vantagens

Menor custo de mudanças nos requisitos

O cliente pode avaliar o sistema em estágio inicial (feedback mais fácil)

Existe um risco menor de fracasso completo do sistema

Page 16: Es   capítulo 2  - processos de software

Problemas

Processo não visível

A estrutura tende a se degradar

Page 17: Es   capítulo 2  - processos de software

321 54

Atividades do Processo de Software

Page 18: Es   capítulo 2  - processos de software

Processo de software: inclui atividades:

Objetivo: especificarprojetarimplementar testarevoluir

Técnicas

Gerência

Colaboração

Page 19: Es   capítulo 2  - processos de software

Especificação

Projeto e implementaç

ão

Validação Evolução

Page 20: Es   capítulo 2  - processos de software

Como organizar essas atividades ?

Page 21: Es   capítulo 2  - processos de software

Especificação

Especificação de software é a atividade de compreensão e definição dos serviços requisitados do sistema e de identificação de restrições relativas à operação e ao desenvolvimento do sistema

Page 22: Es   capítulo 2  - processos de software

Estudo de viabilidade

Elicitação e análise de requisitos

Especificação de requisitos

Validação de requisitos

Relatório de viabilidade

Modelos de sistema Requisitos de

usuários e de sistema

Documentação de requisitos

Especificação

Page 23: Es   capítulo 2  - processos de software

Projeto e implementação de software

É o processo de conversão de uma especificação do sistema em um sistema executável, isso inclui o projeto do software e a programação do software.

Page 24: Es   capítulo 2  - processos de software

Informação de plataforma

Especificação de requisitos

Descrição de dados

Arquitetura de sistema

Especificação de Banco de dados

Especificação de interface

Especificação de componentes

Projeto de arquitetura

Projeto de interface

Projeto de componentes

Projeto de Banco de dados

Entradas de projeto

Atividades de projeto

Saídas de projeto

Projeto e implementação

Page 25: Es   capítulo 2  - processos de software

Validação de software

É o processo de verificação que objetiva mostrar que um software se adéqua a suas especificações ao mesmo tempo que satisfaz as especificações do cliente.

Page 26: Es   capítulo 2  - processos de software

Teste de componente Teste de sistema Teste de aceitação

Validação

Page 27: Es   capítulo 2  - processos de software

Especificação dos requisitos

Especificação do sistema

Projeto do sistema

Projeto detalhado

Serviço Teste de aceitação

Teste de integração do

sistema

Teste de integração do sub-sistema

Código e teste unitário e de

módulo

Plano de testes de aceitação

Plano de testes de integração do

sistema

Plano de teste de integração do

sub-sistema

Fases de testes dirigido a planos

Page 28: Es   capítulo 2  - processos de software

Evolução do software

É o processo de evoluir o software durante seu período de vida em resposta às mudanças de requisitos e às necessidades do cliente.

Page 29: Es   capítulo 2  - processos de software

Definir requisitos de

sistema

Avaliar sistemas existentes

Propor mudanças de

sistema

Modificar sistemas

Sistemas existentes

Novo sistema

Evolução do software

Page 30: Es   capítulo 2  - processos de software

321 54

Lidando com mudanças

Page 31: Es   capítulo 2  - processos de software

Lidando com mudanças

• Mudanças de negócios levar a requisitos novos e alterados do sistema

• As novas tecnologias abrem novas possibilidades para melhorar as implementações

• Plataformas novas exigem alterações de aplicativos

Mudança leva a reformular de modo que os custos de mudança incluem tanto retrabalho, bem como os custos de implementação de novas funcionalidades

Page 32: Es   capítulo 2  - processos de software

321 54

Rational Unified Process-RUP

Page 33: Es   capítulo 2  - processos de software

Rational Unified Process-RUP

É um modelo constituido quatro fases distintas no processo de software

Page 34: Es   capítulo 2  - processos de software
Page 35: Es   capítulo 2  - processos de software
Page 36: Es   capítulo 2  - processos de software

Concepção

Definir o escopo do software

Descobrir os casos de uso críticos

Estimar por alto o custo e o cronograma de todoo projeto

Levantar os potenciais riscos

Page 37: Es   capítulo 2  - processos de software

Elaboração

Detalhar a maioria dos requisitos

Construir a arquitetura do sistema

Produzir protótipos evolucionários oudescartáveis

Page 38: Es   capítulo 2  - processos de software

Elaboração

Detalhar a maioria dos requisitos

Construir a arquitetura do sistema

Produzir protótipos evolucionários oudescartáveis

Page 39: Es   capítulo 2  - processos de software

Construção

Produzir a versão para testes

Ênfase na produção de software operacional

Envolve análise, projeto e implementação dos requisitos

Page 40: Es   capítulo 2  - processos de software

Transição

Validar o sistema em relação às expectativas dos usuários

Testes e operacionalização do software(geralmente, em paralelo com o sistema legado)

Treinamento de usuários

Correção de erros, pequenas melhorias, pequenos ajustes

Page 41: Es   capítulo 2  - processos de software

Obrigado!

Page 42: Es   capítulo 2  - processos de software

Referências

Ian Sommerville. Engenharia de Software, 9a. Edição. 2011