RUP (Rational Unified Process) - Processo Unificado Rational
Processo Unificado Rational
O processo Unificado é um processo de desenvolvimento iterativo e incremental de software constituído por 4 fases: concepção, elaboração, construção, transição.
Concepção
Essa fase é responsável pela comunicação com cliente e planejamento inicial. Na comunicação com cliente são descritos os requisitos fundamentais em formato de casos de uso. No planejamento inicial é realizado uma analise de risco, identifica os principais recursos e cria um cronograma inicial para a entrega dos incrementos de software.
Elaboração
Essa fase é responsável pelo planejamento e Modelagem. No planejamento da elaboração, é refinado e estendido os casos de uso feitos durante a concepção e criado uma arquitetura base para o incremento de software. É feita 5 modelos sobre o software:
- Modelo de caso de uso
- Modelo de análise
- Modelo de projeto
- Modelo de implementação
- Modelo de entrega
Construção
Essa fase é responsável pela Codificação das funcionalidades e Testes das funcionalidades que foram identificadas nos casos de uso. Na codificação será implementado as funcionalidades referentes ao incremento de software. Durante esse fase deverá ser feito testes unidade a medida que um componentes for finalizado. Testes de integração a medida que mais componentes forem finalizados. A implementação deverá passar nos Testes de aceitação criadas a partir dos casos de uso.
Transição
Essa fase é responsável pelo deploy e feedback. Deploy significa que será enviado um incremento de software para usuários de teste beta e coletado o feedback como: defeitos e mudanças. Após as correções necessárias o incremento do software já poderá ser utilizado.
---
title: Fluxo das Fases do Processo Unificado Rational
---
%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart TD
con
ela
cons
trans
begin["Começo"] -->con
con --> ela
ela --> cons
cons --> trans
trans --> con
end_trans["No final dessa fase, o incremento de software está pronto para uso"] --> trans
subgraph con["`**Concepção**`"]
direction RL
com["`**Comunicação com Cliente:** criação de casos de uso preliminares`"]
pla["`**Planejamento:** Indentificação dos riscos e recursos dos casos de uso preliminares`"]
end
subgraph ela["`**Elaboração**`"]
direction LR
pla2["`**Planejamento:**
Expanção e refino dos casos de uso preliminares, criando uma arquitetura base`"]
subgraph m[" "]
model["`**Modelagem**:
Cria 5 modelos do software`"]
use_m["Modelo de casos de uso"]
ana_m["Modelo de análise"]
proj_m["Modelo de projeto"]
impl_m["Modelo de implementação"]
model --> use_m
model --> ana_m
model --> proj_m
model --> impl_m
end
end
subgraph cons["`**Construção**`"]
direction TB
impl["`**Implementação:** Codificação das funcionalidades exegidas para o incremento de software`"]
subgraph t2[" "]
direction TB
test["testes"]
unit_test["`**Testes Unitários**`"]
intr_test["`**Testes de Integração**`"]
accep_test["`**Teste de Aceitação**
Os caso de uso são utilizados para a criação dos testes de aceitação`"]
test --> unit_test
test --> intr_test
test --> accep_test
end
end
subgraph trans["`**Transição**`"]
deploy["Entrega"]
feedback["Feedback"]
deploy -->de_msg["Entrega um encremento \n do software para beta tester\n"]
feedback --> feed_msg["Rescebe um relato \n com modificações \n necessárias e erros \n encontrados"]
end