Visão Geral do RUP

1/22
Visão Geral do RUP
Objetivo
Depois desta aula você terá uma visão geral do
RUP (uma metodologia para desenvolvimento
de software), incluindo suas características e
seus componentes principais.

2/22
O que é o RUP?
O nome é uma abreviação de Rational Unified
Process
mas na verdade é
Processo + Métodos + Linguagem (UML)

e os autores argumentam que é
Framework para gerar processos

3/22
O que é o RUP?
Conjunto de atividades
bem definidas
com responsáveis
com artefatos de entrada e saída
com dependências entre as mesmas e ordem de
execução
com modelo de ciclo de vida
descrição sistemática de como devem ser realizadas
guias (de ferramentas ou não), templates
utilizando diagramas de UML
4/22
Características Principais do RUP
O desenvolvimento de sistemas seguindo o
RUP é
Iterativo e incremental
Guiado por casos de uso (use cases)
Baseado na arquitetura do sistema

5/22
O RUP é iterativo e incremental
O ciclo de vida de um sistema consiste de
quatro fases:
concepção

elaboração

construção

transição

tempo

Concepção (define o escopo do projeto)
Elaboração (detalha os requisitos e a arquitetura)
Construção (desenvolve o sistema)
Transição (implanta o sistema)
6/22
O RUP é iterativo e incremental
Cada fase é dividida em iterações:
Inception

Preliminary
iteration

Elaboration

Architect. Architect. Devel..
iteration iteration iteration

Construction

Devel..
iteration

Devel..
iteration

Transition

Transition
iteration

Transition
iteration

Minor Milestones: Releases
7/22
O RUP é iterativo e incremental
Cada iteração
é planejada
realiza uma seqüência de atividades (de
elicitação de requisitos, análise e projeto,
implementação, etc.) distintas
geralmente resulta em uma versão executável
do sistema
é avaliada segundo critérios de sucesso
previamente definidos
8/22
O RUP é iterativo e incremental

9/22
O RUP é guiado por casos de uso
Os casos de uso não servem apenas para
definir os requisitos do sistema
Várias atividades do RUP são guiadas pelos
casos de uso:
planejamento das iterações
criação e validação do modelo de projeto
planejamento da integração do sistema
definição dos casos de teste
10/22
O RUP é baseado na arquitetura do
sistema
Arquitetura
visão geral do sistema em termos dos seus
subsistemas e como estes se relacionam

A arquitetura é prototipada e definida logo nas
primeiras iterações
O desenvolvimento consiste em complementar
a arquitetura
A arquitetura serve para definir a organização
da equipe de desenvolvimento e identificar
oportunidades de reuso
11/22
O RUP é baseado na arquitetura do
sistema
Idealmente, tem-se 5 visões da arquitetura
Logical
View
Analysts/
Designers
Structure

End-user
Functionality

Process
View

System integrators
Performance Scalability
Throughput

Implementation
View
Programmers
Software management

Deployment
View

System Engineering
System topology
Delivery,installation
Communication

12/22
Organização do RUP
Fluxos de atividades
Atividades
passos
entradas e saídas
guias (de ferramentas ou não), templates

Responsáveis (papel e perfil, não pessoa)
Artefatos

13/22
Planejamento e Gerenciamento

14/22
Elicitação de Requisitos

Analista de
Sistema

Desenvolver
Elicitar
Documento de
necessidades
Visão
dos Stakeholders

Gerenciar
Dependências

Encontrar Atores e
Capturar um Casos de Uso
vocabulário comum

Detalhar UC

Especificador
de UC

Revisor de
Requisitos

Revisar os
Requisitos

Prototipar a
Modelar a
Interface com o Usuário
Interface com o Usuário

Projetista da
Interface com o Usuário

Arquiteto

Estruturar o
Modelo de UC

Priorizar UC

15/22
Análise e Projeto (Simplificado)

Projetar
arquitetura

Arquiteto

Revisor do
projeto
Projetar
subsistema
Projetista

Projetista de
banco de
dados

Analisar
caso de
uso

Projetar
caso de
uso

Projetar
classes

Revisar
projeto

Projetar
base de
dados

16/22
Implementação
Integrar Sistema
e Subsistemas

Planejar Integração
Integrador do
Sistema e
Subsistemas
Corrigir
Defeitos

Programador
Estruturar Modelo de Implementar Realizar Testes
Implementação
Componentes de Unidade

Revisor de Código

Revisar
Código Fonte

17/22
Testes
Projetista de Testes Elaborar PlanoProjetar Testes
de Testes

Testador de Integração

Testador de Sistema

Programador

Avaliar Testes

Executar Testes
de Integração

Executar Testes de
Sistema

Implementar Testes

18/22
Resumo
O RUP é:
iterativo e incremental
guiado por casos de uso
baseado na arquitetura do sistema
organizado em fases, iterações, fluxos,
atividades e passos

19/22
Referências
Ivar Jacobson, Grady Booch e James
Rumbaugh. The Unified Software Development
Process. Capítulos 1 a 5.
Philippe Kruchten. The Rational Unified
Process – an Introduction.

20/22
Visão Geral do RUP

21/22

Visaogeraldorup

  • 1.
  • 2.
    Visão Geral doRUP Objetivo Depois desta aula você terá uma visão geral do RUP (uma metodologia para desenvolvimento de software), incluindo suas características e seus componentes principais. 2/22
  • 3.
    O que éo RUP? O nome é uma abreviação de Rational Unified Process mas na verdade é Processo + Métodos + Linguagem (UML) e os autores argumentam que é Framework para gerar processos 3/22
  • 4.
    O que éo RUP? Conjunto de atividades bem definidas com responsáveis com artefatos de entrada e saída com dependências entre as mesmas e ordem de execução com modelo de ciclo de vida descrição sistemática de como devem ser realizadas guias (de ferramentas ou não), templates utilizando diagramas de UML 4/22
  • 5.
    Características Principais doRUP O desenvolvimento de sistemas seguindo o RUP é Iterativo e incremental Guiado por casos de uso (use cases) Baseado na arquitetura do sistema 5/22
  • 6.
    O RUP éiterativo e incremental O ciclo de vida de um sistema consiste de quatro fases: concepção elaboração construção transição tempo Concepção (define o escopo do projeto) Elaboração (detalha os requisitos e a arquitetura) Construção (desenvolve o sistema) Transição (implanta o sistema) 6/22
  • 7.
    O RUP éiterativo e incremental Cada fase é dividida em iterações: Inception Preliminary iteration Elaboration Architect. Architect. Devel.. iteration iteration iteration Construction Devel.. iteration Devel.. iteration Transition Transition iteration Transition iteration Minor Milestones: Releases 7/22
  • 8.
    O RUP éiterativo e incremental Cada iteração é planejada realiza uma seqüência de atividades (de elicitação de requisitos, análise e projeto, implementação, etc.) distintas geralmente resulta em uma versão executável do sistema é avaliada segundo critérios de sucesso previamente definidos 8/22
  • 9.
    O RUP éiterativo e incremental 9/22
  • 10.
    O RUP éguiado por casos de uso Os casos de uso não servem apenas para definir os requisitos do sistema Várias atividades do RUP são guiadas pelos casos de uso: planejamento das iterações criação e validação do modelo de projeto planejamento da integração do sistema definição dos casos de teste 10/22
  • 11.
    O RUP ébaseado na arquitetura do sistema Arquitetura visão geral do sistema em termos dos seus subsistemas e como estes se relacionam A arquitetura é prototipada e definida logo nas primeiras iterações O desenvolvimento consiste em complementar a arquitetura A arquitetura serve para definir a organização da equipe de desenvolvimento e identificar oportunidades de reuso 11/22
  • 12.
    O RUP ébaseado na arquitetura do sistema Idealmente, tem-se 5 visões da arquitetura Logical View Analysts/ Designers Structure End-user Functionality Process View System integrators Performance Scalability Throughput Implementation View Programmers Software management Deployment View System Engineering System topology Delivery,installation Communication 12/22
  • 13.
    Organização do RUP Fluxosde atividades Atividades passos entradas e saídas guias (de ferramentas ou não), templates Responsáveis (papel e perfil, não pessoa) Artefatos 13/22
  • 14.
  • 15.
    Elicitação de Requisitos Analistade Sistema Desenvolver Elicitar Documento de necessidades Visão dos Stakeholders Gerenciar Dependências Encontrar Atores e Capturar um Casos de Uso vocabulário comum Detalhar UC Especificador de UC Revisor de Requisitos Revisar os Requisitos Prototipar a Modelar a Interface com o Usuário Interface com o Usuário Projetista da Interface com o Usuário Arquiteto Estruturar o Modelo de UC Priorizar UC 15/22
  • 16.
    Análise e Projeto(Simplificado) Projetar arquitetura Arquiteto Revisor do projeto Projetar subsistema Projetista Projetista de banco de dados Analisar caso de uso Projetar caso de uso Projetar classes Revisar projeto Projetar base de dados 16/22
  • 17.
    Implementação Integrar Sistema e Subsistemas PlanejarIntegração Integrador do Sistema e Subsistemas Corrigir Defeitos Programador Estruturar Modelo de Implementar Realizar Testes Implementação Componentes de Unidade Revisor de Código Revisar Código Fonte 17/22
  • 18.
    Testes Projetista de TestesElaborar PlanoProjetar Testes de Testes Testador de Integração Testador de Sistema Programador Avaliar Testes Executar Testes de Integração Executar Testes de Sistema Implementar Testes 18/22
  • 19.
    Resumo O RUP é: iterativoe incremental guiado por casos de uso baseado na arquitetura do sistema organizado em fases, iterações, fluxos, atividades e passos 19/22
  • 20.
    Referências Ivar Jacobson, GradyBooch e James Rumbaugh. The Unified Software Development Process. Capítulos 1 a 5. Philippe Kruchten. The Rational Unified Process – an Introduction. 20/22
  • 21.
    Visão Geral doRUP 21/22