Vous êtes sur la page 1sur 44

O Processo Unificado (PU)

SSC 121 Engenharia de Software I


Profa. Dra. Elisa Yumi Nakagawa
2o semestre de 2012

Modelos de Processo de
Software
Desenvolver software geralmente
uma tarefa complexa e sujeita a erros
Sucesso ou fracasso dependem de
inmeros fatores que ocorrem durante
todo o processo
Necessidade de estabelecer processos
sistemticos para desenvolvimento
Modelos de processo de Software
2

Exemplos de Modelos de
Processo de Software
Modelo em Cascata
Modelo de Prototipagem
Modelo Evolucionrio
Desenvolvimento Baseado em Componentes
Modelo de Mtodos formais
Extremme Programming
Processo Unificado
3

Modelo em Cascata
Engenharia de
Sistemas
Anlise de
Requisitos

Projeto
Codificao
Testes
Manuteno

Problemas com o Modelo


Cascata
Projetos

reais raramente seguem o fluxo


seqencial que o modelo prope
Logo no incio difcil estabelecer
explicitamente todos os requisitos. No
comeo dos projetos sempre existe uma
incerteza natural
O cliente deve ter pacincia. Uma verso
executvel do software s fica disponvel
numa etapa avanada do desenvolvimento
5

O Paradigma de Prototipao
para obteno dos requisitos
Obter Requisitos

Elaborar Projeto Rpido


Refinamento do Prottipo

Construir Prottipo
Avaliar Prottipo
6

Problemas com a
Prototipao
cliente no sabe que o software que ele v
no considerou, durante o desenvolvimento,
a qualidade global e a manutenibilidade a
longo prazo
desenvolvedor freqentemente faz uma
implementao comprometida (utilizando o
que est disponvel) com o objetivo de
produzir rapidamente um prottipo
7

Comentrios sobre o
Paradigma de Prototipao
ainda que possam ocorrer problemas, a
prototipao um ciclo de vida eficiente.
a chave definir as regras do jogo logo no
comeo.
o cliente e o desenvolvedor devem ambos
concordar que o prottipo ser construdo
para servir como um mecanismo a fim de
definir os requisitos
8

O Modelo Incremental
o modelo incremental combina elementos
do modelo cascata (aplicado
repetidamente) com a filosofia iterativa da
prototipao
o objetivo trabalhar junto com o usurio
para descobrir seus requisitos, de
maneira incremental, at que o produto
final seja obtido.
9

O Modelo Incremental
Verso Inicial
Anlise

Descrio
geral

Projeto

Engenharia de
sistemas/informao

Verses
Descrio
Descrio
Intermedirias
geral
geral

Codificao

Teste

Verso
Final
10

O Modelo Incremental
a verso inicial frequentemente o
ncleo do produto (a parte mais
importante)

a evoluo acontece quando novas


caractersticas so adicionadas medida
que so sugeridas pelo usurio

Este modelo importante quando difcil


estabelecer a priori uma especificao
detalhada dos requisitos
11

O Modelo Incremental
o modelo incremental mais apropriado
para sistemas pequenos
As novas verses podem ser planejadas
de modo que os riscos tcnicos possam
ser administrados (Ex. disponibilidade de
determinado hardware)

12

O que o Processo Unificado


(PU)?
um modelo de processo de software
baseado no modelo incremental,
visando a construo de software
orientado a objetos
Usa como notao de apoio a UML
(Unified Modeling Language)

13

PU
Histria:

Razes no trabalho de Jacobson na Ericsson no


final da dcada de 1960.
1987 Jacobson iniciou uma companhia
chamada de Objectory AB desenvolvimento de
um processo chamado Objectory
1995 a Rational comprou a Objectory AB,
aperfeioou o Objectory e foi criado o Processo
Objectory da Rational (ROP) (Jacobson,
Rumbaugh e Booch)
Paralelamente, desenvolviam a UML
14

PU
Histria (cont..):
Progresso do ROP e a aquisio e
desenvolvimento de ferramentas de
desenvolvimento agregaram valor ao ROP
1998 Rational mudou o nome do ROP
para Processo Unificado da Rational
(RUP- Rational Unified Process)
O RUP uma especializao, com
refinamento detalhado, do PU

15

O que o PU?
um processo de Software: conjunto de
atividades executadas para transformar
um conjunto de requisitos do cliente em
um sistema de software.
um framework que pode ser
personalizado de acordo com as
necessidades especficas e recursos
disponveis para cada projeto.

16

Elementos do PU
Um processo descreve
quem (papel) est fazendo
o qu (artefato),
como (atividade) e
quando (disciplina).

17

Papel
Um trabalhador algum que
desempenha um papel e responsvel
pela realizao de atividades para
produzir ou modificar um artefato.

18

Artefato
Poro significativa de informao interna ou
a ser fornecida a interessados externos que
desempenhe um papel no desenvolvimento
do sistema.
Um artefato algum documento, relatrio,
modelo ou cdigo que produzido,
manipulado ou consumido.

Exemplos: modelo de caso de uso, modelo do


projeto, um caso de uso, um subsistema, um caso
de negcio, um documento de arquitetura de
software, cdigo fonte, executveis, etc.
19

Atividade
uma tarefa que um trabalhador
executa a fim de produzir ou modificar
um artefato.

20

Disciplina
Descreve as sequncias das atividades que
produzem algum resultado significativo e
mostra as interaes entre os participantes
So realizadas a qualquer momento durante
o ciclo de desenvolvimento (Fases do PU)
Requisitos, Anlise, Projeto, Implementao
e Teste

21

Princpios bsicos do PU
Desenvolvimento iterativo
Baseado em casos de uso
Centrado na arquitetura

22

Desenvolvimento Iterativo
O desenvolvimento de um software dividido
em vrios ciclos de iterao, cada qual
produzindo um sistema testado, integrado e
executvel.
Em cada ciclo ocorrem as atividades de
anlise de requisitos, projeto, implementao
e teste, bem como a integrao dos artefatos
produzidos com os artefatos j existentes.
23

Desenvolvimento Iterativo

Figura extrada de Larman, 2004


24

Desenvolvimento Iterativo
planejar quantos ciclos de desenvolvimento
sero necessrios para alcanar os objetivos
do sistema
as partes mais importantes devem ser
priorizadas e alocadas nos primeiros ciclos

a primeira iterao estabelea os principais riscos


e o escopo inicial do projeto, de acordo com a
funcionalidade principal do sistema.
partes mais complexas do sistema devem ser
atacadas j no primeiro ciclo, pois so elas que
apresentam maior risco de inviabilizar o projeto.
25

Desenvolvimento Iterativo
O tamanho de cada ciclo pode variar de uma
empresa para outra e conforme o tamanho
do sistema.

Por exemplo, uma empresa pode desejar ciclos


de 4 semanas, outra pode preferir 3 meses

Produtos entregues em um ciclo podem ser


colocados imediatamente em operao, mas
podem vir a ser substitudos por outros
produtos mais completos em ciclos
posteriores.
26

Baseado em Casos de Uso


Um caso de uso uma seqncia de aes,
executadas por um ou mais atores e pelo
prprio sistema, que produz um ou mais
resultados de valor para um ou mais atores.
O PU dirigido por casos de uso, pois os
utiliza para dirigir todo o trabalho de
desenvolvimento, desde a captao inicial e
negociao dos requisitos at a aceitao do
cdigo (testes).
27

Baseado em Casos de Uso


Os casos de uso so centrais ao PU e
outros mtodos iterativos, pois:
Os requisitos funcionais so registrados
preferencialmente por meio deles
Eles ajudam a planejar as iteraes
Eles podem conduzir o projeto
O teste baseado neles

28

Centrado na Arquitetura
Arquitetura a organizao fundamental do
sistema como um todo. Inclui elementos
estticos, dinmicos, o modo como
trabalham juntos e o estilo arquitetnico total
que guia a organizao do sistema.
A arquitetura tambm se refere a questes
como desempenho, escalabilidade, reso e
restries econmicas e tecnolgicas.
29

Centrado na Arquitetura
No PU, a arquitetura do sistema em
construo o alicerce fundamental
sobre o qual ele se erguer
Deve ser uma das preocupaes da
equipe de projeto
A arquitetura, juntamente com os casos
de uso, deve orientar a explorao de
todos os aspectos do sistema
30

Centrado na Arquitetura
A arquitetura importante porque:
Ajuda a entender a viso global
Ajuda a organizar o esforo de
desenvolvimento
Facilita as possibilidades de reso
Facilita a evoluo do sistema
Guia a seleo e explorao dos casos de
uso

31

As Fases do PU
O PU dividida em quatro fases:
Concepo
Elaborao
Construo
Transio

32

As Fases do PU

33 2004
Figura extrada de Larman,

Fases do PU: Concepo


Estabelece-se a viabilidade de implantao
do sistema.
Definio do escopo do sistema
Estimativas de custos e cronograma
Identificao dos potenciais riscos que
devem ser gerenciados ao longo do projeto
Esboo da arquitetura do sistema, que
servir como alicerce para a sua construo.
34

Fases do PU: Elaborao


Viso refinada do sistema, com a
definio dos requisitos funcionais,
detalhamento da arquitetura criada na
fase anterior e gerenciamento contnuo
dos riscos envolvidos.
Estimativas realistas feitas nesta fase
permitem preparar um plano para
orientar a construo do sistema.
35

Fases do PU: Construo


O sistema efetivamente desenvolvido
e, em geral, tem condies de ser
operado, mesmo que em ambiente de
teste, pelos clientes.

36

Desenvolvimento Iterativo e Evolutivo

37

Fases do PU: Transio


O sistema entregue ao cliente para
uso em produo.
Testes so realizados e um ou mais
incrementos do sistema so
implantados.
Defeitos so corrigidos, se necessrio.

38

As Disciplinas do PU
Se analisarmos as fases do PU, podemos ter a
impresso de que cada ciclo de iterao
comporta-se como o modelo em Cascata.
Mas isso no verdade: paralelamente s fases
do PU, atividades de trabalho, denominadas
disciplinas do PU, so realizadas a qualquer
momento durante o ciclo de desenvolvimento
As disciplinas entrecortam todas as fases do PU,
podendo ter maior nfase durante certas fases e
menor nfase em outras, mas podendo ocorrer em
qualquer uma delas
39

As Disciplinas do PU

40

Figura extrada de Larman, 2006

As Disciplinas do PU

Figura extrada de Larman, 2006

41

Os Artefatos do PU
Cada uma das disciplinas do PU pode gerar um ou
mais artefatos, que devem ser controlados e
administrados corretamente durante o
desenvolvimento do sistema
Artefatos so quaisquer dos documentos produzidos
durante o desenvolvimento, tais como modelos,
diagramas, documento de especificao de requisitos,
cdigo fonte ou executvel, planos de teste, etc.
Muitos dos artefatos so opcionais, produzidos de
acordo com as necessidades especficas de cada
projeto
42

Os Artefatos do PU
Disciplina
Modelagem de
Negcio
Requisitos

Projeto

Implementao

Artefato
Iterao

Concepo Elaborao Construo Transio


C1
E1...En
C1...Cn
T1...Tn

Modelo Conceitual
Diagrama de Casos de Uso
Casos de Uso Textuais
Diagrama de Seqncia do
Sistema
Contratos para operaes
Glossrio
Diagrama de Classes
Diagrama de Colaborao
Diagrama de Pacotes
Documento de Arquitetura do
Software
Cdigo fonte

p
p
p
p

r
r
r

p
p

r
r
p
p
p
p

r
r
r

r
43

Referncias
LARMAN, CRAIG Utilizando UML e
Padres, 2a edio, Bookman, 2004.
WASLAWICK, RAUL Anlise e Projeto de
sistemas de Informao Orientados a
Objetos, Campus, 2004.
Kendall Scott O Processo Unificado
Explicado, Bookman, 2003.
Ernani Medeiros Desenvolvendo Software
com UML 2, Makron Books, 2004.
44

Vous aimerez peut-être aussi