Visão Geral do RUP
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.
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
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
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
O RUP é iterativo e incremental O ciclo de vida de um sistema consiste de quatro fases: 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) tempo concepção elaboração construção transição
O RUP é iterativo e incremental Cada fase é dividida em iterações: Minor Milestones: Releases Inception Elaboration Construction Transition Transition iteration Preliminary iteration Architect. iteration Architect. iteration Devel.. iteration Devel.. iteration Devel.. iteration Transition iteration
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
O RUP é iterativo e incremental
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
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
O RUP é baseado na arquitetura do sistema Idealmente, tem-se 5 visões da arquitetura Logical View Process View Deployment View Implementation View Programmers Software management Analysts/ Designers Structure System Engineering System topology Delivery,installation Communication System integrators Performance Scalability Throughput End-user Functionality
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
Planejamento e Gerenciamento
Elicitação de Requisitos Projetista da Interface com o Usuário Especificador de UC Arquiteto Priorizar UC Analista de  Sistema Desenvolver Documento de Visão Elicitar  necessidades dos Stakeholders Encontrar Atores e Casos de Uso Revisor de Requisitos Gerenciar Dependências Capturar um vocabulário comum Detalhar UC Modelar a Interface com o Usuário Revisar os  Requisitos Prototipar a Interface com o Usuário Estruturar o Modelo de UC
Análise e Projeto (Simplificado) Analisar caso de uso Projetista Projetista de banco de dados Revisar projeto Projetar caso de uso Arquiteto Revisor do projeto Projetar base de dados Projetar arquitetura Projetar subsistema Projetar classes
Implementação Estruturar Modelo de Implementação Revisor de Código Programador Integrador do Sistema e Subsistemas Planejar Integração Integrar Sistema e Subsistemas Implementar Componentes Corrigir Defeitos Realizar Testes de Unidade Revisar Código Fonte
Testes Programador Implementar Testes Testador de Integração Testador de Sistema Projetista de Testes Elaborar Plano  de Testes  Executar Testes de Integração Executar Testes de Sistema Projetar Testes  Avaliar Testes
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
Referências Ivar Jacobson, Grady Booch e James Rumbaugh. T he Unified Software Development Process.  Capítulos 1 a 5. Philippe Kruchten.  The Rational Unified Process – an Introduction.
Visão Geral do RUP

Visao Geral Rup

  • 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.
  • 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
  • 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
  • 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
  • 6.
    O RUP éiterativo e incremental O ciclo de vida de um sistema consiste de quatro fases: 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) tempo concepção elaboração construção transição
  • 7.
    O RUP éiterativo e incremental Cada fase é dividida em iterações: Minor Milestones: Releases Inception Elaboration Construction Transition Transition iteration Preliminary iteration Architect. iteration Architect. iteration Devel.. iteration Devel.. iteration Devel.. iteration Transition iteration
  • 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
  • 9.
    O RUP éiterativo e incremental
  • 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
  • 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
  • 12.
    O RUP ébaseado na arquitetura do sistema Idealmente, tem-se 5 visões da arquitetura Logical View Process View Deployment View Implementation View Programmers Software management Analysts/ Designers Structure System Engineering System topology Delivery,installation Communication System integrators Performance Scalability Throughput End-user Functionality
  • 13.
    Organização do RUPFluxos de atividades Atividades passos entradas e saídas guias (de ferramentas ou não), templates Responsáveis (papel e perfil, não pessoa) Artefatos
  • 14.
  • 15.
    Elicitação de RequisitosProjetista da Interface com o Usuário Especificador de UC Arquiteto Priorizar UC Analista de Sistema Desenvolver Documento de Visão Elicitar necessidades dos Stakeholders Encontrar Atores e Casos de Uso Revisor de Requisitos Gerenciar Dependências Capturar um vocabulário comum Detalhar UC Modelar a Interface com o Usuário Revisar os Requisitos Prototipar a Interface com o Usuário Estruturar o Modelo de UC
  • 16.
    Análise e Projeto(Simplificado) Analisar caso de uso Projetista Projetista de banco de dados Revisar projeto Projetar caso de uso Arquiteto Revisor do projeto Projetar base de dados Projetar arquitetura Projetar subsistema Projetar classes
  • 17.
    Implementação Estruturar Modelode Implementação Revisor de Código Programador Integrador do Sistema e Subsistemas Planejar Integração Integrar Sistema e Subsistemas Implementar Componentes Corrigir Defeitos Realizar Testes de Unidade Revisar Código Fonte
  • 18.
    Testes Programador ImplementarTestes Testador de Integração Testador de Sistema Projetista de Testes Elaborar Plano de Testes Executar Testes de Integração Executar Testes de Sistema Projetar Testes Avaliar Testes
  • 19.
    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
  • 20.
    Referências Ivar Jacobson,Grady Booch e James Rumbaugh. T he Unified Software Development Process. Capítulos 1 a 5. Philippe Kruchten. The Rational Unified Process – an Introduction.
  • 21.