Title: Slide sem t
1Rational Unified Process ( Parte 1 )
2Um Ponto de Mudança em Eng. de SW
Processo
3Resumo
- O que é o Rational Unified Process?
- Arquitetura do Processo
- Características chave do processo
- Workflow do núcleo do processo
- Implementando o processo
4Problemas Relacionados
- Processo não repetível - resultados
imprevisíveis, e altamente dependentes de
programadores heróicos - Software que preenche pobremente as necessidades
dos usuários - Inabilidade para contar com mudanças nos
requisitos - Procedimentos de teste caros e tediosos
5Problemas Relacionados
- Descoberta tardia de defeitos sérios no projeto
- Software que é difícil de manter e estender.
6Processo de Desenvolv. de SW
- Processo - Um conjunto de passos parcialmente
ordenados para alcançar um objetivo. Em Eng. SW,
o objetivo é construir um produto de software ou
melhorar um já existente.
7Rational Unified Process
- Fornece guias para o desenvolvimento eficiente de
software de qualidade - Reduz riscos e aumenta a previsibilidade
- Captura e apresenta as melhores práticas
- Promove uma cultura e visão comum
- Roadmap para usar ferramentas CASE com sucesso
8Processo como um Produto
- Não apenas um livro texto, não apenas um outro
método OOAD - Disponibilizado como um web site
- Melhorado continuamente através de atualizações
regulares.
9Histórico do Processo
10RUP
Processo Online
Ferramentas de Suporte
Treinamento
Consultoria e Mentoring
11Arquitetura do Processo
- Duas estruturas ortogonais
- Estrutura estática
- Trabalhadores, artefatos, atividades, workflows
- Configuração e autoria do processo
- Estrutura dinâmica
- Estrutura do ciclo de vida fases, iterações
- Realização do processo planejamento, execução
-
12Duas Dimensões
13Fases no Ciclo de Vida
14Fase de Concepção
- Critério de entrada
- visão original, sistemas legados, necessidades
- Critério de saída
- caso de negócio inicial
- formulação da visão do produto
- critério de sucesso
- avaliação do risco inicial
- estimativa de recursos para fase de elaboração
15Fase de Concepção
- Critério de saída (cont.)
- Modelo de requisitos inicial, 10-20 completo
- 20 dos use cases dirigidos à concepção da
arquitetura - Protótipo da arquitetura inicial (opcional)
- Milestone Objetivos do Ciclo de Vida
16Fase de Elaboração
- Critério de saída
- Visão da baseline
- Modelos de requisitos, 80 completo
- suficiente para chamar a arquitetura de
completa - Baseline executável da arquitetura
- Maiores riscos técnicos foram eliminados
17Fase de Elaboração
- Critério de saída (cont.)
- Plano de desenvolvimento de software detalhado
- Riscos, plano de gerenciamento, alocação da
equipe - Planejamento das fases, mostrando suas iterações
e conteúdos. - Critério objetivo de avaliação mensurável das
próximas iterações - Milestone Arquitetura do Ciclo de Vida
18Fase de Construção
- Para cada iteração
- Critério de entrada
- Plano de iteração
- Use case, cenários
- Riscos a tratar
- Defeitos a consertar
- Critérios objetivos e mensuráveis para avaliar os
resultados.
19Fase de Construção
- Critério de saída
- Produtos e artefatos, atualizados
- Descrição do release
- Casos de teste baseados em cenários, e resultados
de testes - Plano de iteração para a próxima iteração.
20Fase de Construção
- Para iterações seguintes nesta fase
- Plano de entrega
- empacotamento
- preço
- saídas planejadas
- suporte
- treinamento
- produção
- estratégia de transição
- documentação do usuário
- Milestone Versão beta do software
21Fase de Transição
- Critério de saída
- Artefatos e produtos anteriores, atualizados
quando necessário - Análise post-mortem do desempenho da organização
produtos adicionais evolução potencial. - Milestone Release do produto.
22Iterações no Ciclo de Vida do Software
23Uma Iteração como uma Mini-Cascata
24Uma Iteração
25Fases e Iteração
26Iteração Número e Duração
- Duração dirigida por
- tamanho da organização
- tamanho do projeto
- - familiaridade com o projeto, maturidade
- - simplicidade técnica
- 6 mais ou menos 3
- Concepção 0..1
- Elaboração 1..3
- Construção 1..3
- Transição 1..2
27Estrutura Estática
28Trabalhadores, Atividades, Artefatos
Trabalhador
Atividades
Encontrar classes de projeto
Distribuir comportamento
Projetista de Use-Case
responsável por
Artefato
Use Case
- Em termos de UML
- Trabalhadorobjeto ativo
- Atividade operação sobre um trabalhador
- Artefato parâmetro de uma atividade
29Conceito Chave Trabalhador
- Um trabalhador (Worker) define o comportamento e
responsabilidades de um indivíduo, ou um conjunto
de indivíduos, trabalhando juntos como uma
equipe. - Comportamento um conjunto de atividades
coesivas. - Responsabilidade usualmente definida relativa
para certos artefatos. - Um trabalhador é um chapéu usado por
- um indivíduo.
- Em termos de OO é um objeto ativo.
30Exemplos de Trabalhadores
- Analista de sistema
- Gerente de projeto
- Projetista de Use-Case
- Projetista de teste
- Instrutor de curso.
31Trabalhadores e Pessoas
Cada indivíduo no projeto é associado a um ou
vários trabalhadores
32Conceito Chave Atividade
- Um trabalho que um trabalhador é convidado a
executar - Granularidade de poucas horas a poucos dias
- Unidade de planejamento
- Repetido, quando necessário, em cada iteração
- Em termos de OO uma operação sobre um
trabalhador.
33Exemplos de Atividades
- Planejar uma iteração
- Encontrar use cases e atores
- Revisar o projeto
- Executar o teste de desempenho.
34Passos
- Atividades são decompostas em passos
- Tipos de passos
- Passos de pensamento
- Passos de realização
- Passos de revisão.
35Exemplo de Atividade
- Atividade Encontrar use-case e atores
- Passo 1 Encontrar atores
- Passo 2 Encontrar use cases
- Passo 3 Descrever como atores e use cases
interagem - Passo 4 Empacotar use cases e atores
- Passo 5 Apresentar o Modelo de Use Case em
Diagramas de Use Case - Passo 6 Desenvolver um detalhamento do modelo de
use cases - Passo 7 Avaliar seus resultados.
36Conceito Chave Workflow
- Seqüências de atividades que produzem um
resultado observável - Diferentes workflows
- Workflows núcleo
- Workflows de iteração
- Em termos de OO diagramas de interação ou
diagramas de atividades
37Exemplo de Workflow
38Nove Workflows Núcleo
39Exemplo Workflow de Modelagem de Negócios
40Conceito Chave Artefato
- Alguma informação que é produzida, modificada, ou
apenas utilizada por um processo. - Define uma área de responsabilidade.
- Provavelmente é passível de controle de
configuração. - Tipos de artefatos
- Modelos
- Documentos
- Planos.
- Artefatos podem conter outros artefatos.
41Exemplo de Artefatos
- Modelo de projeto
- Classe
- Use Case
- Caso de teste
- Plano de desenvolvimento de software
- Release
- Documento de avaliação de status
- Lista de risco.
42Conjuntos Agrupamento de Artefatos
- Conjunto de gerenciamento
- Casos de negócio, plano de desenvolvimento de
software, documento de avaliação de status. - Conjunto de requisitos
- documento de visão, modelo de use cases,
especificações suplementares. - Conjunto de projeto
- modelo de projeto, modelo de teste, descrição da
arquitetura.
43Conjuntos Agrupamento de Artefatos
- Conjunto de implementação
- Código fonte, executáveis,...
- Conjunto de entrega
- Baseline do produto, manual do usuário, manual de
instalação,...
44Evolução dos Conjuntos nas Fases
D Conjunto de Entrega
45Artefatos, Documentos, Relatórios
- Não é um processo dirigido a documentos
- Produz somente artefatos que serão usados
- Mantém o artefato na ferramenta mais apropriada,
em formato eletrônico (Rose, Excel, ReqPro,
etc.) - Somente poucos artefatos são documentos
- Quando necessário extrai relatórios a partir das
ferramentas (ex para revisão)
46Conceitos Adicionais
- Conceitos
- Introduzem definições principais, idéias chave.
- Guidelines
- Técnicas, regras, heurísticas, listas de
checagem... - Mentores de ferramentas
- Ligação do processo com ferramentas específicas
- Templates
- Para os principais artefatos.
47Guidelines
- Guidelines são regras, recomendações, heurísticas
que suportam atividades e passos. - Atividades e passos devem ser bastante concisos e
enxutos - Guidelines descrevem artefatos bem-formados,
focando na qualidade. - Guidelines descrevem técnicas específicas
- transformações de um artefato em outro
- uso de UML
48Guidelines
- Usados também para avaliar a qualidade dos
artefatos - Feitos sob medida para a organização
49Guidelines exemplos
- Guidelines de modelagem
- Artefatos bem-formados classes, use cases,
pacotes, modelos - Guidelines de programação
- Programas bem-formados
- Guidelines de projeto de interface com o usuário
- Interfaces fáceis de usar
- Checklists
- Para revisão.
50Mentores de Ferramentas
- Similares a guidelines
- Explicam como usar uma ferramenta específica para
executar uma atividade ou passos em uma atividade - Exemplos
- RequisitePro gerenciamento de requisitos
- Rational Rose modelagem visual, usando UML
- SoDA geração de documentação
- ClearQuest gerenciamento de mudança, trilhagem
de defeitos - ... e mais.
51Templates
- Artefatos pré-definidos, protótipos
- Templates para documentos do MS Word
- Templates de planos do MS Project
- Templates para páginas html do processo
- Conectados à atividade que cria o artefato
correspondente - Feitos sob medida para a organização
52Guidelines, Mentores, Templates
53Resumo
- Estrutura estática
- Trabalhador, AtividadePasso, Artefato
- Workflow
- Guideline, Template, mentor de ferramenta,
conceito - Estrutura dinâmica
- Fase
- Milestone principal
- Iteração
- Milestone secundário, release