Escolar Documentos
Profissional Documentos
Cultura Documentos
Contexto
No suficiente apenas a presena de desenvolvedores altamente treinados:
Precisamos de uma linguagem para a equipe poder se comunicar entre si e com os clientes (UML), alm disso necessitamos de um guia organizacional: Um processo (RUP).
Team-Based Development
Modeling Language
Unified Process
O que RUP
um processo configurvel de Engenharia de Software. O RUP um guia para como usar efetivamente a UML
RUP e CMM
O objetivo do RUP assegurar uma produo de alta qualidade de software, que realiza a necessidade do usurio seguindo prazos e o oramento. Com o advento do CMM as organizaes focalizam a qualidade em primeiro plano e o RUP pode ser bastante til quando se quer atingir nveis maiores.
Utilidade
O RUP, como processo de desenvolvimento de software, tem 4 regras:
servir de guia; especificar quais artefatos devem ser desenvolvidos e quando devem ser desenvolvidos; dirigir as tarefas individuais e do time como um todo; oferecer critrios para monitorar e medir os produtos e atividades do projeto.
Histrico RUP
2002 Rational Unified Process 2002 Rational Unified Process 2000 Rational Unified Process 5.5 Rational Unified Process 5.0 Rational Objectory Process 4.1 Rational Objectory Process 4.0 Web Based Development UML 1.3 Business Engineering UML 1.2 SQA Process + Requirements College UML 1.1 OMT + Mtodo Booch UML 0.8 Plug-ins - .NET, J2EE, ...
2000 1999
1998
1997
1996
1995
Rational Approach
Processo Unificado
Dirigido por casos de uso Baseado em componentes Centrado em arquitetura Iterativo e Incremental Framework genrico de um processo de desenvolvimento
Baseado em componentes
A caracterstica principal do RUP ser baseado em componente (parte fsica e atualizvel do sistema), ou seja, o software desenvolvido formado por componentes de software que se comunicam atravs de interfaces bem definidas.
10
Centrado na arquitetura
No RUP os use cases e a arquitetura vo sendo desenvolvidos em paralelo. O conceito de arquitetura engloba os aspectos mais relevantes, tanto estticos, como dinmicos, do sistema.
11
Iterativo e Incremental
O RUP utiliza pequenos ciclos de projeto (miniprojetos) que correspondem uma iterao e que resultam em um incremento no software. Iteraes referem-se a passos e incrementos a evolues do produto. UP repete vrios ciclos at o trmino do sistema Cada ciclo de vida possui 4 fases:
Concepo, Elaborao, Construo, e Transio.
12
Elaborao
Construo
Transio
Define o escopo do projeto e sua viabilidade Plano do Projeto, especificao de e definio de baseline da arquitetura Construo do produto Substituio do antigo sistema e implantao
13
14
15
16
17
Iterativo e Incremental
Cada fase possui iteraes
Concepo
Iterao1 ...
Elaborao
Iterao n
Construo
Iterao n Iterao n
Transio
Iterao n Iterao n
Itera- Iterao n o n
release
release
release
release
produto
18
Iterao e Workflow
Core Workflows
Requisito
Fases
Concepo Elaborao Construo Transio
Anlise
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
19
Iterativo e Incremental
No to eficaz entender todo o problema, desenhar toda a soluo, e construir o sistema e ento testar o produto em separado.
Um processo iterativo requerido para permitir um entendimento crescente de todo o problema atravs de sucessivos refinamentos.
20
Framework
21
Modelos e Workflow
Requisito
Modelo de Use Case Modelo de Anlise Modelo Projeto Modelo de Implantao
Modelo de Implementao
Anlise
Modelo de Teste
22
Atividades ou Workflows
So atividades conduzidas em todas as fases de um ciclo, variando de intensidade conforme a fase. Do origem aos artefatos do projeto. Em cada fase so desenvolvidas vrias atividades do processo
modelagem de negcio levantamento de requisitos anlise e projeto implementao testes...
23
Concepo - Produtos
Modelo de negcio, que estabelece o contexto do sistema. Primeira verso simplificada do Modelo de Caso de Usos, Modelo de Anlise e Modelo de Design; opcionalmente um esboo rudimentar dos Modelos de Implementao e Teste. Proposta inicial de uma descrio de arquitetura com base nas vises dos modelos descritos acima. Prottipo de prova-de-conceito, ou storyboards. Lista de riscos
24
Concepo - Workflows
Requisitos: capturar os requisitos mais crticos (na forma de casos de uso) e definir o escopo do sistema. Anlise: analisar os requisitos e montar uma proposta para o modelo de classes e objetos, com foco nas classes de negcio, mais o glossrio. Desenho: preparar o Modelo de Design ou storyboard, apresentando um rascunho preliminar da arquitetura do sistema: identificar os primeiros componentes, interfaces e subsistemas, assim como o Modelo de Implantao. Implementao: pode ser necessrio criar um prottipo descartvel para demonstrar o caminho escolhido. Testes: criar primeiros esboos de teste com base nas informaes j adquiridas.
25
Elaborao - Produtos
Modelo de negcio completo descrevendo todo o contexto do sistema. Novas verses dos modelos: Casos de Uso, Anlise, Design, Implementao e Implantao. Verso preliminar do manual de usurio (opcional). Previso do custo de implementao. Cronograma de implementao.
26
Elaborao - Workflows
Requisitos: encontrar, priorizar, detalhar e estruturar os Casos de Uso, capturando aproximadamente 80% dos requisitos. Anlise: detalhar as classes de negcio, fazer o particionamento em pacotes, atualizar o glossrio e refinar os Casos de Uso. Design: fazer o design dos Casos de Uso, classes e subsistemas para estabelecer uma estrutura bsica do sistema. Pacotes de anlise e subsistemas de design, so importantes. So considerados: sistema operacional, linguagem, banco de dados, distribuio de objetos, etc.. Implementao: implementar e testar os componentes arquiteturalmente significantes. Eventualmente criar prottipos para testar alguma nova tecnologia. Testes: planejar e especificar os testes, definindo casos de teste e rotinas de teste.
27
Construo - Produtos
Primeira verso do manual de usurio, juntamente com o help, manual de operao e instalao devero ser esboados. Material para curso e treinamento. Verso beta do sistema disponibilizada.
28
Construo - Workflows
Requisitos: capturar os requisitos remanescentes, refinando Casos de Uso e cenrios Anlise: capturar algum detalhe que passou despercebido nas classes pertinentes ao negcio. Design: refinar os casos de uso e cenrios remanescentes com base na tecnologia utilizada. Implementao: codificar e integrar componentes, priorizando os casos de uso mais importantes. Testes: testar funcionalidades e performance do sistema. Se necessrio testar novos casos e rotinas de teste.
29
Distribuio - Objetivos
Verificar se os requisitos foram implementados corretamente Corrigir os problemas identificados pelos usurios na verso beta e tomar as aes necessrias para colocar o sistema em produo. Produzir e/ou atualizar:
Programas executveis Documentao legal (contrato, garantia...) Especificao tcnica Manual do sistema, de administrao do sistema e material de treinamento
30
Distribuio - Workflow
Requisitos: eventual correo da documentao devido a bugs encontrados no sistema. Anlise: eventual correo do modelo de anlise devido a bugs encontrados no sistema. Design: eventual correo do modelo de design devido a bugs encontrados no sistema. Implementao: eventual correo do cdigo devido a bugs encontrados no sistema. Testes: eventual correo do modelo de teste devido a bugs encontrados no sistema.
31
FIM
32