RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática...
-
Upload
caio-canedo-cordeiro -
Category
Documents
-
view
218 -
download
0
Transcript of RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática...
RUP – Rational Unified Process
Márcia Seabra CabralProf. Augusto Sampaio
Centro de Informática - UFPE
Agenda
• Introdução• Melhores práticas• Elementos essenciais o processo• Visão arquitetural• Visão horizontal• Visão vertical• Limitações• Bibliografia
Introdução
• Criado por pela Rational Software Corporation
• Aplicado em grandes projetos de software
• Conjunto de filosofia e práticas para o desenvolvimento de software• Melhores práticas
Introdução
• Atribui tarefas e responsabilidades de forma disciplinada
• Tem como objetivo assegurar a produção de software de alta qualidade de acordo com o escalonamento e orçamento
RUP – Melhores práticas
• Desenvolvimento iterativo• Atenuação dos riscos nas fases iniciais do
projeto• Mudança de requisitos são gerenciadas
anteriormente• Melhoria e refinamento do produto• Aprendizado da organização• Reuso
RUP – Melhores práticas
RUP – Melhores práticas
• Gerenciamento de requisitos• Requisitos funcionais representados por
casos de uso• Arquitetura baseada em componentes
• Identificar, isolar, projetar e testar componentes
• Reuso• Modelagem visual
• Uso da UML
RUP – Melhores práticas
• Verificação contínua da qualidade• Identificar métricas aceitáveis• Identificar medições apropriadas de
avaliação• Identificar os casos que afetam a
qualidade• Gerenciamento de mudança
Implementação: uso de ferramentas da Rational
Elementos essenciais ao processo
• Desenvolver uma visão do sistema• Gerenciar o plano de projeto • Atenuar riscos e trilhar issues• Examinar business case• Projetar uma arquitetura baseada em componente• Desenvolver de forma incremental e testar o produto• Avaliar resultados regularmente• Gerenciar e controlar mudanças• Entregar um produto usável• Adotar um processo que seja adequado ao projeto
Visão arquitetural
Visão arquitetural• Horizontal – representa o tempo e mostra
aspectos do ciclo de vida• Fases• Iterações• Milestones
• Vertical – representa as disciplinas agrupadas logicamente• Disciplinas• Atividades• Workflows• Artefatos• Papéis
Visão horizontal - Ciclo de vida do RUP Fases e milestones
Esforço e escalonamento de um projeto de tamanho médio
Visão Horizontal - Fase de Concepção• Fazer o business case inicial do
projeto• Estimar o retorno do investimento
• Delimitar o escopo do projeto• Definir a arquitetura candidata• Identificar e atenuar riscos• Elicitar requisitos
• Identificar requisitos funcionais e não-funcionais
Visão Horizontal - Fase de concepção• Saída
• Primeira versão de um modelo de negócios que descreve o contexto do sistema
• Primeira versão• Modelo de caso de uso• Modelo de análise e projeto• Arquitetura candidata• Protótipo• Lista de risco inicial e suas prioridades• Plano de projeto (incluindo as fases)
Visão Horizontal - Fase de Elaboração• Requisitos funcionais descritos como
casos de uso• Definir uma arquitetura sólida• Monitoramento dos riscos críticos e
seu impacto no caso de negócio• Detalhar o plano de projeto
Visão Horizontal - Fase de Elaboração• Saída
• Modelo de negócios completo• Nova versão de todos os modelos
iniciados na fase de concepção• Arquitetura executável• Descrição arquitetural• Lista de risco atualizada• Plano de projeto atualizado para as fases
posteriores• Manual do usuário (opcional)
Visão Horizontal - Fase de Construção• Ênfase no desenvolvimento• Versão inicial do produto (beta)
Visão Horizontal - Fase de Construção• Saída
• Plano de projeto para a próxima fase• Software executável• Todos os artefatos• Descrição da arquitetura atualizada• Manual do usuário com detalhe suficiente• Business case refletindo a situação atual
Visão Horizontal - Fase de Transição• Validar os requisitos• Encontrar falhas• Fornecer informação/treinamento ao
usuário
Visão Horizontal - Fase de Transição• Saída
• Software executável, incluindo instalação• Documentação• Produto completo e correto• Manual do usuário• Suporte ao usuário
Visão Horizontal - Iteração
• Uma iteração é um miniprojeto• O software é desenvolvido através de
pequenos passos gerenciáveis• Um pouco de planejamento• Um pouco de Especificar, projetar e
implementar• Um pouco de integração, teste e
execução
Visão Horizontal - Iteração
Visão Horizontal - Iteração
• Vantagens• Atenuação de riscos• Definição de uma arquitetura candidata
de acordo com os requisitoa• Auxilia no acompanhamento e
planejamento do projeto• Validar o sistema com o usuário, podendo
ocorrer mudanças nos requisitos
Visão vertical• Papel - Descreve comportamento e
responsabilidade do indivíduo• Atividade - É uma unidade de trabalho
executada por algum papel• Workflow - Sequência de atividades que
produz um resultado• Artefatos - É o produto de trabalho do
processo. Os papéis usam artefatos para executar atividades
Visão vertical
Visão Vertical - Workflow
Visão Vertical - WorkflowVisão de Artefato
Visão Vertical - Workflow
Visão vertical - Disciplinas• Fornece uma visão para fornecer suporte aos
elementos de processo.• Descreve um conjunto associado de atividades e
artefatos• Disciplinas do RUP
• Modelagem de negócios• Requisitos• Análise e Projeto• Implementação• Teste• Configuração e Gerência de Mudança• Gerência de Projeto• Ambiente
Visão vertical - Disciplinas
• Disciplina• Atividades• Artefatos• Templates• Guidelines• Ferramenta de suporte
Visão vertical - Disciplinas
• Modelagem de negócios• Descreve o processo de negócios da
organização• Encontrar requisitos relevantes para a
organização• Requisitos
• Elicitação e análise de requisitos• Gerenciamento de requisitos
Visão vertical - Disciplinas• Análise e Projeto
• Análise - Refinamento e estruturação de requisitos na linguagem do desenvolvedor
• Projeto – Refinar a arquitetura do sistema iniciada na fase de análise
• Implementação• Implementação do sistema em termos de
componentes, código fonte, scripts.• Testar os componentes como unidades• Gerar um código executável
Visão vertical - Disciplinas
• Teste• Verificar se os requisitos foram
implementados corretamente• Assegurar que as falhas encontradas
foram corrigidas corretamente• Configuração e Gerência de Mudança
• Controlar as atualizações dos artefatos prduzidos
• Analisar o impacto a mudança no desenvolvimento do software
Visão vertical - Disciplinas
• Gerência de Projeto• Criar e acompanhar o cronograma,
deliverables, gerenciar riscos• Ambiente
• Definir ambiente e ferramentas para o desenvolvimento do software
RUP - Limitações
• Uso formal da documentação e templates é necessário comprar o RUP e ferramentas
• Requer customização• Processo “pesado”• É gerado overhead em iterações
curtas
Bibliografia
• The Unified Software Development Process – Ivar Jacobson, Grady booch, James Rumbaugh. 1999.
• Rational Unified Process. Version 2003.06.13