Escolar Documentos
Profissional Documentos
Cultura Documentos
Modelos de Processos
Modelos de Processos
Modelos de Processo
de Software
Ricardo Argenton Ramos
ricargentonramos@gmail.com
A Engenharia de Software
Uma Tecnologia em Camadas
ENGENHARIA DE SOFTWARE
pode ser vista como uma abordagem dedesenvolvimento
de software elaborada com disciplina e mtodos bem
definidos.
Modelos de Processo de
Software
Modelos de Processo de
Software
O Modelo Seqencial Linear
(tambm chamado Ciclo de Vida Clssico ou
Modelo Cascata)
O Modelo
Baseado em
Componentes
O Modelo Espiral
O Paradigma de
Prototipao
Processo Unificado
O Modelo Cascata
O Modelo em Cascata
Verificar Plano
Explorao de
conceitos
Requisitos
Projeto
Projeto de V & V
Implementao
Evoluir
O qu
Requisitos de V & V
Testes
Como
Sistema de V & V
Tarefas de V & V
Operao
Sistema
Feedback
Instalao e
de V & V
liberao
Operao
Manuteno e
de V & V
operao
8
O Modelo em Cascata
Explorao de Conceitos / Informao e
Modelagem
Engenharia de
Sistemas
Anlise de
Requisitosde requisitos do sistema, com uma pequena
Envolve a elicitao
quantidade de projeto e Projeto
anlise de alto nvel;
O Modelo em Cascata
O Modelo em Cascata
Projeto
traduo dos requisitos do software para um
conjunto de representaes que podem ser
avaliadas quanto qualidade, antes que a
codificao inicie
11
O Modelo em Cascata
Implementao
traduo das representaes do projeto para uma
linguagem artificial resultando em instrues
executveis pelo computador e implementado
num ambiente de trabalho.
12
O Modelo em Cascata
Testes
Concentra-se:
13
O Modelo em Cascata
Manuteno
provavelmente o software dever sofrer
mudanas depois que for entregue ao cliente
causas das mudanas: erros, adaptao do
software para acomodar mudanas em seu
ambiente externo e exigncia do cliente para
acrscimos funcionais e de desempenho
14
com o Modelo em
Cascata
16
O Modelo em Cascata
17
O Paradigma de Prototipao
18
O Modelo de Prototipao
19
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
Construir Prottipo
Avaliar Prottipo
20
O Paradigma de Prototipao
para obteno dos requisitos
1- OBTENO
DOS REQUISITOS:
Obter Requisitos
desenvolvedor e cliente definem os
objetivos gerais do software,
identificam quais requisitos
so Projeto Rpido
Elaborar
conhecidos e as reas que necessitam
Refinamento do Prottipo
de definies adicionais.
Construir Prottipo
Avaliar Prottipo
21
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
2- PROJETO RPIDO:
Elaborar Projeto Rpido
representao dos aspectos do
Refinamento do Prottipo
software que so visveis ao usurio
(abordagens de entrada e formatos
de sada)
Construir Prottipo
Avaliar Prottipo
22
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
3- CONSTRUO DO PROTTIPO:
implementao rpida do
projeto
Construir Prottipo
Avaliar Prottipo
23
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
Elaborar
Projeto
5- REFINAMENTO DO PROTTIPO:
cliente
e Rpido
Refinamento
do Prottipo
desenvolvedor
refinam
os requisitos do
software a ser desenvolvido.
Construir Prottipo
Avaliar Prottipo
25
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
CONSTRUO
Refinamento
do Prottipo
DO
PRODUTO
Construir Prottipo
Avaliar Prottipo
26
O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos
6- CONSTRUO PRODUTO:
identificados os requisitos, o
Elaborar
Projeto Rpido
prottipo
deve
ser
descartado
e
a
CONSTRUO
verso
de do
produo
Refinamento
Prottipo deve ser
DO
PRODUTO
construda considerando os
critrios de qualidade.
Construir Prottipo
Avaliar Prottipo
27
Comentrios sobre o
Paradigma de Prototipao
Exerccio
Refinamento do
Prottipo
Avaliar Prottipo
Elaborar Projeto
Rpido
Construir Prottipo
30
O Modelo Espiral
31
O Modelo Espiral
(Boehm, 1986)
32
DETERMINAR OBJETIVOS,
ALTERNATIVAS E
RESTRIES
Risk
analys is
Risk
analys is
Risk
analys is
REVIEW
Requirements plan
Life-cycle plan
Develop ment
plan
Integrati on
and test p lan
PLANEJAR PRXIMA FASE
Prot otyp e 3
Prot otyp e 2
Risk
analysis Prot oty pe 1
Operati onal
protoyp e
S/W
requi rement s
Requi rement
valid ati on
Prod uct
desi gn
Detail ed
desi gn
Code
Uni t tes t
Desi gn
V& V
Integr ati on
test
Accep tance
test
Serv ice
DESENVOLVER, VERIFICAR O
PRODUTO NO PRXIMO NVEL
33
DETERMINAR OBJETIVOS,
ALTERNATIVAS E
RESTRIES
Risk
analys is
Risk
analys is
Risk
analys is
Prot otyp e 3
Prot otyp e 2
Risk
analysis Prot oty pe 1
Operati onal
protoyp e
S/W
requi rement s
Requi rement
valid ati on
Prod uct
desi gn
Detail ed
desi gn
Code
Uni t tes t
Desi gn
V& V
Integr ati on
test
Accep tance
test
Serv ice
DESENVOLVER, VERIFICAR O
PRODUTO NO PRXIMO NVEL
34
Risk
analysis Prototy pe 1
Concept o f
Operati on
35
Risk
analys is
Prototype
Development
plan
Requi rement
validati on
36
o ciclo um pouco
mais externo est
concentrado no
projeto do sistema
Integrati on
and test plan
prototype 3
Desi gn
V&V
37
Operati onal
protoype
Detail ed
desi gn
Code
Uni t tes t
Integrati on
test
Acceptance
test
Serv ice
38
DETERMINAR OBJETIVOS,
ALTERNATIVAS E
RESTRIES
Risk
analys is
Risk
analys is
REVIEW
Requirements plan
Life-cycle plan
Develop ment
plan
Integrati on
and test p lan
PLANEJAR PRXIMA FASE
Prot otyp e 3
Prot otyp e 2
Risk
analysis Prot oty pe 1
Operati onal
protoyp e
Concept o f
Operati on
S/W
requi rement s
Requi rement
valid ati on
Prod uct
desi gn
Detail ed
desi gn
Code
Uni t tes t
Desi gn
V& V
Integr ati on
test
Accep tance
test
Serv ice
DESENVOLVER, VERIFICAR O
PRODUTO NO PRXIMO NVEL
39
Cada loopEspiral
do espiral(com
dividido
O Modelo
4 regies)em 4
setores
AVALIAR ALTERNATIVAS
IDENTIFICAR, RESOLVER RISCOS
DETERMINAR OBJETIVOS,
ALTERNATIVAS E
RESTRIES
Risk
analys is
ESTABELECIMENTO DE
OBJETIVOS
REVIEW
Requirements plan
Life-cycle plan
PLANEJAMENTO
Develop ment
plan
Integrati on
and test p lan
PLANEJAR PRXIMA FASE
Risk
analys is
Risk
analys is
AVALIAO E
REDUO DE
RISCOS OperaProt otyp e 3
ti onal
protoyp e
Prot otyp e 2
Risk
analysis Prot oty pe 1
S/W
requi rement s
Detail ed
desi gn
DESENVOLVIMENTO E
Code
VALIDAO
Uni t tes t
Requi rement
valid ati on
Desi gn
V& V
Prod uct
desi gn
Integr ati on
test
Accep tance
test
Serv ice
DESENVOLVER, VERIFICAR O
PRODUTO NO PRXIMO NVEL
40
ESTABELECIMENTO DE
OBJETIVOS
41
AVALIAO E
REDUO DE
RISCOS
42
ESTABELECIMENTO DE
OBJETIVOS
AVALIAO E
REDUO DE
RISCOS
DESENVOLVIMENTO
E VALIDAO
43
44
O Modelo Espiral
engloba as melhores caractersticas do ciclo de
vida Clssico e da Prototipao, adicionando um
novo elemento: a Anlise de Risco
segue a abordagem de passos sistemticos do
Ciclo de Vida Clssico incorporando-os numa
estrutura iterativa que reflete mais realisticamente
o mundo real
usa a Prototipao em todas as etapas da
evoluo do produto, como mecanismo de reduo
de riscos
45
46
47
O Modelo Espiral
O MODELO BASEADO EM
COMPONENTES
49
O Modelo Baseado em
Componentes
50
O Modelo de Montagem de
Componentes
Planejamento
Anlise de Riscos
Comunicao
com Cliente
Avaliao do Cliente
Engenharia
Construo e Liberao
51
O Modeloidentificar
de Montagem de
componentes
Componentes
candidatas
procurar Planejamento
Construir a na
componentes
iterao do
na biblioteca
sistema
extrair
Comunicao
componentes
com
Cliente
se disponveis
Anlise de Riscos
colocar os
novos
componentes
na biblioteca
construir os
componentes
no
Avaliao do Cliente
disponveis
Engenharia
Construo e Liberao
52
O Modelo Baseado em
Componentes
53
Processo Unificado da
Rational
54
O que o RUP?
mas na verdade
O que o RUP?
Conjunto de atividades
bem definidas
com responsveis
com artefatos de entrada e sada
com dependncias entre as mesmas e ordem de execuo
com modelo de ciclo de vida
descrio sistemtica de como devem ser realizadas
guias (de ferramentas ou no), templates
utilizando diagramas de UML
Caractersticas Principais do
RUP
Iterativo e incremental
Guiado por casos de uso (use cases)
Baseado na arquitetura do sistema
O RUP iterativo e
incremental
elaborao
construo
tempo
transio
O RUP iterativo e
incremental
Preliminary
iteration
Elaboration
Construction
Devel..
iteration
Devel..
iteration
Transition
Transition
iteration
Transition
iteration
O RUP iterativo e
incremental
Cada iterao
planejada
realiza uma seqncia de atividades (de
elicitao de requisitos, anlise e projeto,
implementao, etc.) distintas
geralmente resulta em uma verso executvel do
sistema
avaliada segundo critrios de sucesso
previamente definidos
Passos dentro de
uma iterao
Iterao e Workflow
Fases
Core Workflows
Concepo
Elaborao
Construo
Transio
Requisito
Uma iterao na
fase de Elaborao
Anlise
Desenho
Implementao
Teste
Iterao
Preliminar
ite r.
#1
ite r.
#2
ite r.
#n
ite r.
#n+1
ite r.
#n+2
ite r.
#m
ite r.
#m +1
O RUP baseado na
arquitetura do sistema
Arquitetura
Organizao do RUP
Fluxos de atividades
Atividades
passos
entradas e sadas
guias (de ferramentas ou no), templates
Exemplo de Fluxo:
Planejamento e Gerenciamento
Iniciar
Projeto
Aprovar
Projeto
Atestar
Concluso
do Projeto
Contratante
Identificar
Riscos
Estudar
Viabilidade
Desenvolve
r Plano de
Projeto
Gerente de
projeto
Arquiteto
Executar
Plano de
Iterao
Desenvolve
r Plano de
Iterao
Avaliar
Iterao
Reavaliar
Riscos
Priorizar
Casos de
Uso
Finalizar
Projeto
Resumo
O RUP :
iterativo e incremental
guiado por casos de uso
baseado na arquitetura do sistema
organizado em fases, iteraes, fluxos,
atividades e passos
Entre no site:
http://www.wthreex.com/rup/portugues/index.htm
68
Mtodos geis
69
Sociedade demanda
Mas, infelizmente,
no h gente suficiente para
desenvolver tanto software com qualidade.
Problemas
Com software
Melhores Tecnologias
Melhores Metodologias
Mtodos geis
outras... (RUP, relacionadas a CMM, etc.)
Mtodos geis de
Desenvolvimento de Software
O Manifesto do
Desenvolvimento gil de Software
1.
2.
3.
4.
75 / 69
Scrum
Definio informal:
Estratgia em um jogo de rugby onde
jogadores colocam uma bola quase perdida
novamente em jogo atravs de trabalho em
equipe.
Scrum
Programao eXtrema
XP
A Quem se Destina os
Mtodos geis
Grupos de 2 a 10 programadores
Projetos de 1 a 36 meses (calendrio)
De 1000 a 250 000 linhas de cdigo
Coloca o foco
Retira o foco de
83
Exerccio