rational unified process ( parte 1 ). 2 um ponto de mudança em eng. de sw processo componentes de...

Post on 17-Apr-2015

110 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Rational Unified Process( Parte 1 )

2

Um Ponto de Mudança em Eng. de SW

Processo

Componentes de Software

Ferramentas

Arquitetura

3

Resumo

• O que é o Rational Unified Process?• Arquitetura do Processo• Características chave do processo• Workflow do núcleo do processo• Implementando o processo

4

Problemas 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;

5

Problemas Relacionados

• Descoberta tardia de defeitos sérios no projeto;• Software que é difícil de manter e estender.

6

Processo 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.

Processo de Engenharia de Software

Requisitos novos ou mudados

Sistema novo ou mudado

7

Rational 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

8

Processo 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.

9

Histórico do ProcessoRational Unified

Process 5.0

Rational Objectory Process 4.1

Rational Objectory Process 4.0

UML 0.8

Teste de DesempenhoEngenharia de NegóciosGerenciamento deConfiguração e de Mudança

Engenharia deRequisitos

Processo deSQA

RationalApproach

Objectory Process 3.8

12/1996OMTBooch

10/1997UML 1.1

Engenharia de Dados

ObjectoryUI design1998

1995

10

RUP

Processo Online

Treinamento

Consultoria eMentoring

+ Ferramentas de Suporte+

11

Arquitetura 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

12

Duas DimensõesEstrutura Dinâmica

Est

rutu

ra E

stát

ica

13

Fases no Ciclo de Vida

Concepção Elaboração Construção Transição

tempo

Concepção - Definir o escopo do projeto;Elaboração - Planejar o projeto, especificar as características e a baseline (linha base) da arquitetura;Construção - Construir o produto;Transição - Disponibilizar o produto para a comunidade de usuários.

14

Fase 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

15

Fase 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

16

Fase 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”

17

Fase 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

18

Fase 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.

19

Fase 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.

20

Fase 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

21

Fase 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.

22

Iterações no Ciclo de Vida do Software

Concepção Elaboração Construção Transição

Iteraçãoda Arquit.

Iteraçãoda Arquit.

Iteraçãode Desenv.

Iteraçãode Desenv.

Iteraçãode Desenv.

IteraçãoTransição

IteraçãoTransição

Milestones

Uma iteração é uma seqüência distinta de atividades com um plano de linha base (baseline) e critério de avaliação resultando em um release (interno ou externo).

23

Uma Iteração como uma “Mini-Cascata”

Planejamento da Iteração

Requisitos

Análise e Projeto

Implementação

Teste

Preparação do Release

Iteração 3 Iteração 4 Iteração 5

24

Uma IteraçãoEm uma iteração você

caminha através de todosworkflows

25

Fases e IteraçãoPontos Planejados de Decisão (Negócios)

Estabelecer recursos para a fase de elaboração

Estabelecer recursos para a construção

Produtos maduros o suficiente para os consumidores usarem

Aceitação ou final da vida

Concepção Elaboração Construção Transição

Iteraçãoda Arquit.

Iteraçãoda Arquit.

Iteraçãode Desenv.

Iteraçãode Desenv.

Iteraçãode Desenv.

IteraçãoTransição

IteraçãoTransição

IteraçãoPreliminar

(Entender o problema) (Entender a solução) (Ter a solução)

Pontos Planejados de Visibilidade (Técnico)

26

Iteraçã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

27

Estrutura Estática

28

Trabalhadores, Atividades, Artefatos

Projetista deUse-Case

Encontrarclasses de projeto

Distribuir comportamento

Trabalhador Atividades

Artefato

Use Case

Em termos de UML:•Trabalhador:objeto ativo•Atividade: operação sobre um trabalhador•Artefato: parâmetro de uma atividade

responsável por

29

Conceito 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.

30

Exemplos de Trabalhadores

• Analista de sistema;• Gerente de projeto;• Projetista de Use-Case;• Projetista de teste;• Instrutor de curso.

31

Trabalhadores e Pessoas

Cada indivíduo no projetoé associado a um ou vários

trabalhadores

Recurso

Paulo

Maria

João

Sílvia

Daniel

Projetista Definir Operações

Especificador Descrever um Use Casede Use-case

Projetista de Use-case Distribuir comportamento

Revisor de Projeto Revisar o modelo de use-cases

Arquiteto Definir uma visão de use-case Definir uma visão lógica

Trabalhador Atividades

32

Conceito 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.

33

Exemplos de Atividades

• Planejar uma iteração;• Encontrar use cases e atores;• Revisar o projeto;• Executar o teste de desempenho.

34

Passos

• Atividades são decompostas em passos• Tipos de passos

– Passos de pensamento;

– Passos de realização;

– Passos de revisão.

35

Exemplo 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.

36

Conceito 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

37

Exemplo de Workflow

38

Nove Workflows Núcleo

39

Exemplo: Workflow de Modelagem de Negócios

Analista do Processodo Negócio

Captura um vocabulário comum

Encontra atores e UC do negócio

Estrutura o modelo

de UC do negócio

Revisor domodelo denegócios

Projetista deNegócio

Descreve um UC de Negócios

Encontra trabalhadorese entidades do negócio

Descreve um trabalhador do negócio

Descreve uma entidade do negócio

Revisa o modelode UC do negócio

Revisa o modelode objetos do negócio

40

Conceito 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.

41

Exemplo 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.

42

Conjuntos: 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.

43

Conjuntos: 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,...

44

Evolução dos Conjuntos nas FasesConjuntos “crescem” ao longo do ciclo de vida.

Fase

M R D I D M R D I D M R D I D M R D I D

Concepção Elaboração Construção Transição

R : Conjunto de Requisitos

M : Conjunto de Gerenciamento

D : Conjunto de Projeto

I : Conjunto de Implementação

D : Conjunto de Entrega

45

Artefatos, 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)

46

Conceitos 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.

47

Guidelines

• 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

48

Guidelines

• Usados também para avaliar a qualidade dos artefatos

• Feitos sob medida para a organização

49

Guidelines: 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.

50

Mentores 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.

51

Templates

• 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

52

Guidelines, Mentores, Templates

Trabalhador

Artefato

Realização de Use CaseTemplate de Use Case

responsável por

Projetista Encontrar classes de projeto Distribuir comportamento

Atividades

Mentor da ferramenta RoseGuideline de Projeto

Rational Rose 98

53

Resumo

• Estrutura estática– Trabalhador, Atividade+Passo, Artefato

– Workflow

– Guideline, Template, mentor de ferramenta, conceito

• Estrutura dinâmica– Fase

• Milestone principal

– Iteração• Milestone secundário, release

top related