Escolar Documentos
Profissional Documentos
Cultura Documentos
MODELOS DE PROCESSO DE
SOFTWARE
maro / 2009
slide 1
PROCESSO
Definio
PROCESSO
O QUE ?
Exemplo:
Processo: fazer um bolo de chocolate
- procedimento: receita
- atividade: bater a massa
- restries: temperatura do forno
- recursos: aucar
- ferramentas: batedeira
maro / 2009
slide 3
PROCESSO DE SOFTWARE
Definio
maro / 2009
slide 4
PROCESSO DE SOFTWARE
Um processo de software inclui
Todas as principais atividades
Recursos
Produtos intermedirios e finais
Subprocessos, com hierarquia ou organizados de algum
modo
Critrios de entrada e sada para cada atividade
Seqncia de atividades, de modo que a ordem de
execuo de uma para outra seja clara
Conjunto de diretrizes que explicam os objetivos de
cada atividade
Monica de Souza Massa
maro / 2009
slide 5
PROCESSO DE SOFTWARE
maro / 2009
slide 6
PROCESSO DE SOFTWARE
Framework genrico para um processo de SW
especificao +
desenvolvimento +
validao +
evoluo
Monica de Souza Massa
slide 7
PROCESSO DE SOFTWARE
Especificao
Engenharia de requisitos
Composto de quatro estgios principais:
Estudo de viabilidade
Levantamento e anlise de requisitos
Especificao dos requisitos
Validao dos requisitos
maro / 2009
slide 8
PROCESSO DE SOFTWARE
Desenvolvimento (projeto e implementao do SW)
Atividades principais:
Projeto de arquitetura
Especificao das funes do SW
Projeto de Interface
Monica de Souza Massa
Projeto de Componentes
Projeto das Estruturas de Dad
Projetos de Algoritmos
maro / 2009
slide 9
PROCESSO DE SOFTWARE
Desenvolvimento (projeto e implementao do SW)
maro / 2009
slide 10
PROCESSO DE SOFTWARE
Desenvolvimento (projeto e implementao do SW)
Em muitos projetos de desenvolvimento, o projeto de SW ainda um processo
utilizado medida que for necessrio. Partindo de um conjunto de requisitos,
geralmente em linguagem natural, preparado um projeto informal. A codificao se
inicia, e o projeto modificado medida que o sistema implementado. Existe pouco
ou nenhum controle dessas modificaes ou do gerenciamento do projeto. Quando o
estgio de implementao se completa, o projeto normalmente foi to modificado ,
depois da sua especificao inicial, que o documento original de projeto uma
descrio incoerente e incompleta do sistema.
Sommerville (2007)
maro / 2009
slide 11
PROCESSO DE SOFTWARE
Validao de SW
Validao
pronto
ps implementao
iterativo
maro / 2009
slide 12
PROCESSO DE SOFTWARE
Validao de SW
UNIDADE
MDULO
SUBSISTEMA
Teste de
componentes
Programadores
SISTEMA
Teste de
integrao
Equipe de teste
ACEITAO
Teste de usurio
Equipe de teste
maro / 2009
slide 13
PROCESSO DE SOFTWARE
Evoluo do SW
maro / 2009
slide 14
MODELO DE PROCESSO DE
SOFTWARE
Contextualizando
MODELO DE PROCESSO DE
SOFTWARE
Contextualizando
maro / 2009
slide 16
MODELO DE PROCESSO DE
SOFTWARE
Alguns modelos de processo de SW:
Code-and-Fix
Modelo em cascata
Prototipao
Modelos iterativos (incremental e espiral)
Desenvolvimento orientado a reuso
Processo Unificado
Monica de Souza Massa
maro / 2009
slide 17
MODELO DE PROCESSO DE
SOFTWARE
Modelo Code-and-fix.
maro / 2009
slide 18
MODELO DE PROCESSO DE
SOFTWARE
Modelo Code-and-fix.
Vantagens:
maro / 2009
slide 19
MODELO DE PROCESSO DE
SOFTWARE
Modelo Code-and-fix.
Desvantagens:
Perigoso!
No existe controle.
No existe planejamento de recursos.
No existe estimativas de prazo ou custo.
Erros so difceis apra descobrir e corrigir.
maro / 2009
slide 20
MODELO DE PROCESSO DE
SOFTWARE
Modelo Clssico - Cascata.
Cascata de etapas.
Ciclo de vida mais antigo e mais utilizado.
Resultado de uma etapa usado na etapa
seguinte.
maro / 2009
slide 21
MODELO DE PROCESSO DE
SOFTWARE
Modelo Clssico - Cascata.
Requirements
definition
Systemand
softwaredesign
Implementation
andunittesting
Integr ationand
systemtesting
Operationand
maintenance
Ian Sommerville
Monica de Souza Massa
maro / 2009
slide 22
MODELO DE PROCESSO DE
SOFTWARE
Modelo Clssico - Cascata.
Vantagens:
maro / 2009
slide 23
MODELO DE PROCESSO DE
SOFTWARE
Modelo Clssico - Cascata.
O grande obstculo deste modelo a dificuldade
em acomodar mudanas ao longo do processo de
desenvolvimento.
Desvantagens:
maro / 2009
slide 24
MODELO DE PROCESSO DE
SOFTWARE
Modelo Clssico - Cascata.
Mais desvantagens:
Tempo necessrio
maro / 2009
slide 25
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Tipos de Prototipao:
EVOLUTIVA o objetivo trabalhar com o cliente e evoluir
uma especificao inicial para o SW pronto.
DESCARTVEL objeticvo entender os requisitos do SW.
maro / 2009
slide 26
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
maro / 2009
slide 27
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Concurrent
activities
Specifi ca
tion
Outline
description
Development
Validation
Initial
version
Intermediate
versions
Final
version
maro / 2009
slide 28
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Fluxo de Trabalho
maro / 2009
slide 29
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Vantagens:
maro / 2009
slide 30
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Desvantagens:
maro / 2009
slide 31
MODELO DE PROCESSO DE
SOFTWARE
Prototipao.
Aplicao:
maro / 2009
slide 32
MODELO DE PROCESSO DE
SOFTWARE
Processos Iterativos
Requisitos de sistema sempre evoluem durante o
desenvolvimento de um projeto de SW.
Desta forma, o retorno a estgios anteriores para alterao do
projeto sempre parte do processo de desenvolvimento,
principalmente em SW de grande porte ou grande complexidade.
A incluso da iterao como parte do processo de
desenvolvimento de SW pode ser aplicada em qualquer modelo
de processo..
Modelos iterativos:
Modelo Incremental
Modelo Espiral
maro / 2009
slide 33
MODELO DE PROCESSO DE
SOFTWARE
Modelo Incremental
maro / 2009
slide 34
MODELO DE PROCESSO DE
SOFTWARE
Modelo Incremental
Em um processo de desenvolvimento incremental, os
clientes identificam, em um esboo, as funes a
serem fornecidas pelo sistema, Eles identificam quais
as funes so mais importantes e quais as menos
importantes para eles. Em seguida definida uma
srie de estgios de entrega, com cada estgio
fornecendo um subconjunto das funcionalidades do
sistema. A alocao de funes aos estgios depende
da prioridade da funo. As funes prioritrias so
entregues primeiro ao cliente.
Monica de Souza Massa
maro / 2009
slide 35
MODELO DE PROCESSO DE
SOFTWARE
Modelo Incremental
Definir esboo dos
requisitos
Desenvolver
incremento do
sistema
Atribuir requisitos
aos incrementos
Projetar arquitetura
do sistema
Validar incremento
Integrar
incremento
Validar sistema
maro / 2009
slide 36
MODELO DE PROCESSO DE
SOFTWARE
Modelo Incremental
Vantagens:
maro / 2009
slide 37
MODELO DE PROCESSO DE
SOFTWARE
Modelo Incremental
Desvantagens:
maro / 2009
slide 38
MODELO DE PROCESSO DE
SOFTWARE
Modelo Espiral
O processo de desenvolvimento do SW representado com uma
Espiral.
maro / 2009
slide 39
MODELO DE PROCESSO DE
SOFTWARE
Modelo Espiral
maro / 2009
slide 40
MODELO DE PROCESSO DE
SOFTWARE
Modelo Espiral - fases
Comunicao com o cliente tarefas especficas para estabelecer a
comunicao efetiva entre desenvovledor e cliente
Planejamento definio de recursos, prazos e outras informaes para o
gerenciamento do projeto.
Anlise de risco considerao dos riscos gerenciais e tcnicos.
Engenharia construo dos modelos da aplicao (um ou mais modelos).
Construo e entrega - implementao, teste, instalao e suporte ao
usurio (documentao e treinamento).
Avaliao obteno de feedback do cliente sobre o SW.
maro / 2009
slide 41
MODELO DE PROCESSO DE
SOFTWARE
Modelo Espiral
Vantagens:
Realismo o modelo reflete a natureza iterativa do
desenvolvimento do SW.
Flexibilidade combina vantagens do modleo
cascata com o modelo evolutivo.
Anlise efetiva dos riscos.
maro / 2009
slide 42
MODELO DE PROCESSO DE
SOFTWARE
Modelo Espiral
Desvantagens:
Necessita de pessoas experientes em anlise e
gerenciamento de risco para que o modelo funcione bem.
O modelo no facilemtne entendido pelos gerentes da
rea usuria.
O modelo complexo e necessita de gerenciamento
especializado, o que causa um overhead administrativo.
maro / 2009
slide 43
MODELO DE PROCESSO DE
SOFTWARE
Desenvolvimento orientado ao reuso
Baseado na reutilizao sistemtica de componeentes de
SW.
maro / 2009
slide 44
MODELO DE PROCESSO DE
SOFTWARE
Desenvolvimento orientado ao reuso
Especificao de
requisitos
Projeto de sistema
com reuso
Anlise de
Componentes
Desenvolvimento
e integrao
Modificao de
requisitos
Validao do
sistema
maro / 2009
slide 45
MODELO DE PROCESSO DE
SOFTWARE
Desenvolvimento orientado ao reuso
Vantagens:
Reduo da quantidade de software produzida
Reduo de custos e riscos
Entrega mais rpida do software
Desvantagens:
Necessria adequaes nos requisitos
No atendimento s reais necessidades dos usurios
Alguma perda de controle sobre o sistema (componentes
reutilizveis fora do alcance).
Monica de Souza Massa
maro / 2009
slide 46
MODELO DE PROCESSO DE
SOFTWARE
UP unified process
maro / 2009
slide 47
MODELO DE PROCESSO DE
SOFTWARE
UP unified process
maro / 2009
slide 48
MODELO DE PROCESSO DE
SOFTWARE
UP unified process - DIMENSES
slide 49
MODELO DE PROCESSO DE
SOFTWARE
UP unified process - DIMENSES
maro / 2009
slide 50
MODELO DE PROCESSO DE
SOFTWARE
UP unified process FASES: dimenso tempo
(horizontal)
maro / 2009
slide 51
MODELO DE PROCESSO DE
SOFTWARE
UP unified process DISCIPLINAS: dimenso
fluxo de trabalho (vertical)
Modelagem de negcio
Requisitos
Anlise e Projeto
Implementao
workflow
Testes
Implantao
Gerenciamento de
mudanas
Gerenciamento de
projetos
Ambiente
Monica de Souza Massa
maro / 2009
slide 52
MODELO DE PROCESSO DE
SOFTWARE
UP unified process DISCIPLINAS: dimenso
fluxo de trabalho (vertical)
maro / 2009
slide 53
Incep tion
E la boratio n
C onstruction
Transitio n
Requirements
A n ite ra tio n in the
elabo ra tio n p h ase
Analysis
Design
Implementation
Test
P r e lim in a r y
I te r a t io n ( s )
it e r.
#1
it e r.
#2
it e r.
#n
it e r.
#n+1
ite r.
#n+2
it e r.
#m
it e r.
#m +1
maro / 2009
slide 54
MODELO DE PROCESSO DE
SOFTWARE
Combinao de Paradigmas.
maro / 2009
slide 55
MODELO DE PROCESSO DE
SOFTWARE
Exemplos:
Combinao de paradigmas:
evolutivo com cascata prototipao de
interfaces.
maro / 2009
slide 56