RUP INTRODUÇÃO Abreviação de Rational Unified Process - é um processo proprietário de Engenharia de Software criado pela Rational Software Corporation, adquirida pela IBM, fornecendo técnicas a serem seguidas pelos membros da equipe de desenvolvimento de software com o objetivo de aumentar a sua produtividade. É uma plataforma de processo de desenvolvimento de software configurável que oferece melhores práticas comprovadas e uma arquitetura configurável. Permite selecionar e implementar apenas os componentes de processo que você precisa para cada estágio de seu projeto. Uma abordagem iterativa, centrada na arquitetura e orientada por caso de uso, permitindo a customização de uma ampla gama de projetos e organizações de software. A plataforma inclui: Ferramentas para configurar a RUP para as necessidades específicas de seu projeto. Ferramentas para desenvolver seu próprio conhecimento interno em componentes de processo. Ferramentas de implementação eficientes e personalizáveis baseadas na Web. Milestone ou marco é uma técnica de gerência de projetos que permite o teste da funcionalidade de um novo produto ao longo do projeto, não é uma atividade e não possui duração. Milestones em cada fase: Concepção Elaboração Construção Transição – Concordância do escopo e do custo – Arquitetura validada Produto suficientemente maduro para os clientes Aceite do cliente ou final do projeto. Algumas práticas: - Desenvolvimento Iterativo e Incremental - Gerenciamento de Requisitos - Arquitetura baseada em componentes - Modelagem visual - verificação contínua da qualidade - gerenciamento e controle das mudanças Princípios do RUP Durante as fases e disciplinas ele gerencia Tempo Recursos Objetivos O que precisamos? Atingir os objetivos dos projetos do laboratório gerenciando tempo e recursos, adquirindo sucesso profissional. Administrando objetivos - tempo - recursos Benefícios para nossos projetos: Objetivos mais claros, requisitos bem definidos, comunicação mais efetiva, estimativas bem feitas e gerenciamento eficaz. AS DISCIPLINAS COMPÕEM A DIMENSÃO ESTÁTICA DO RUP. MODELAGEM DE NEGÓCIOS - visa entender a estrutura e a dinâmica da organização para qual se vai desenvolver o projeto, deixando uma (única visão para cliente), usuários e desenvolvedores. O objetivo de cada fase é realizar o conteúdo suficiente de qualquer disciplina necessário para alcançar os objetivos desta fase até que o (milestone) se conclua. Tudo é orientado para (minimizar ou atacar) os riscos envolvidos. As fases definem os estados do projeto, quais riscos estarão sendo atacados. Objetivo: Chegar até o Milestone da fase cumprindo as tarefas: Fase1 1. Entender o que construir. Concepção 2. Identificar funcionalidades chave. 3. Determinar, pelo menos, uma possível solução. 4. Entender os custos agenda e riscos. 5. Decidir que processo seguir. Nesta fase serão percorridas as seguintes disciplinas: Gerência de projeto Análise e Design Requisitos Modelagem de negócios As práticas mais importantes que caracterizam o projeto são: Visão do Projeto - Objetivo – Milestone. - funcionalidades chave; - arquitetura candidata; - plano inicial de custo, agenda e riscos; - estabelecer uma visão do projeto. RISCOS – quando algo inesperado acontece e o objetivo não é alcançado. O RUP sugere a técnica de iteração, que é repetição. Ou seja, se um risco aconteceu, podemos avaliar a iteração, aprendendo com os erros e utilizando a experiência para planejar as próximas iterações. 2. Executar 1. Planejar 3. Avaliar Etapas do processo iterativo: Se a etapa de avaliação não atender ao esperado, devemos cancelar ou refazer o fragmento. Com isso estamos minimizando os riscos do projeto. (A iteração serve justamente para gerenciar mudanças e incertezas). Eliminar riscos e avaliar o que funciona e não funciona. Objetivos principais desta fase: - concordância sobre custos agenda e riscos; - concordância sobre funcionalidades chave; - concordância sobre uma possível solução; - concordância sobre um processo a seguir e quais as ferramentas usar; - concordância sobre o que é o projeto, ou seja o que deve ser feito. Entender o que produzir. Check-list do Milestone: - A equipe concorda com a definição de escopo do sistema e a estimativa inicial de tempo e custo? - Há um acordo de que o conjunto certo de requisitos foi capturado e compartilha-se o entendimento dos mesmos? - Há acordo de que as prioridades, riscos e processo são apropriados? - Há acordo sobre a estratégia de eliminação dos riscos? (Concepção- iterativamente minimizar os riscos de negócio, construindo uma visão clara sobre os objetivos do projeto. No final da fase saiba responde se o projeto é viável) Objetivo: Chegar até o Milestone da fase cumprindo as tarefas: Fase2 1. Detalhar os requisitos. Elaboração 2. Projetar. 3. Implementar e validar a arquitetura. 4. Detalhar riscos. 5. Agenda e custos. 6. Refinar processo e ambiente. -> Refinamento - protótipo - Milestone Nesta fase serão percorridas as seguintes disciplinas: Implementacao Análise e Design Requisitos Para minimizar os riscos técnicos, devemos refinar: A visão do produto, arquitetura, planos e estimativas do projeto. Objetivos principais desta fase: - compreensão detalhada dos requisitos; - validar a arquitetura; - detalhar precisamente agenda e estimativa de custos; - detalhar plano de iteração para minimizar riscos essenciais. Nesta etapa é importante validar um protótipo, para minimizar ainda mais os riscos técnicos. Definir a arquitetura que satisfaça os requisitos dentro do custo e tempo estimados. Pode acontecer se estenda por um tempo maior que o previsto, exemplos: - arquitetura não comprovada ou instável; - requisitos instáveis; - ambiente de desenvolvimento instável; - requisitos não funcionais vagos ou complexos. Check-list do Milestone: - A visão e requisitos são instáveis? - A arquitetura é estável? - Testes e avaliação demonstram que os principais riscos foram eliminados? - Os planos para construção estão suficientemente detalhados para prosseguir? - As estimativas têm credibilidade? - A equipe concorda que a visão pode ser alcançada? - A relação gasto ocorrido x planejado é aceitavél? (Elaboração- iterativamente minimizar os (riscos técnicos) e alcançar planos detalhados sobre o restante do projeto). Objetivo: Chegar até o Milestone da fase cumprindo as tarefas: Fase3 Construção 1. Minimizar o custo de desenvolvimento e desenvolver um produto pronto para a transição. Construção - comparação – Milestone. Nesta fase serão percorridas as seguintes disciplinas: Testes e implantação Desenvolvimento Análise e Design Requisitos Paralelizar o desenvolvimento é a melhor maneira para minimizar os riscos logísticos: Ao invés de todos trabalharem, é melhor que cada um faça uma parte, minimizando riscos de logísticas e paralelizando o desenvolvimento. As despesas reais dos recursos foram iguais as planejadas? Dar ênfase na avaliação entre o que foi planejado e o que foi efetivamente gasto no desenvolvimento. Check-list do Milestone: - O release do produto é maduro o suficiente para ser entregue ao usuário final? - Toda equipe está preparada para a transição para a comunidade do usuário? - A relação gasto ocorrido x planejado é aceitável? (Construção- iterativamente minimizar os (riscos logísticos), e concluir a fase entregando uma versão beta para o cliente) Objetivo: Chegar até o Milestone da fase cumprindo as tarefas: Fase4 Transição Preparar empacotamento, produção e distribuição, preparar local de implantação, treinar usuários e mantedores, melhorar projetos futuros com lições aprendidas, testes beta para avaliar aceitação do usuário. -> Teste projeto - entrega do projeto - Milestone Nesta fase serão percorridas as seguintes disciplinas: Desenvolvimento Gerência de projeto Implantação Testes Uma das ênfases desta fase é concluir os trabalhos de teste da equipe. Esta etapa serve para validarmos o sistema perante a expectativa dos usuários. Check-list do Milestone: - Os usuários finais estão satisfeitos? - A relação gasto ocorrido x planejado é aceitável? - Se não, como melhorar no futuro para resolver o problema? (Transição- iterativamente minimizar os (riscos de não entregar), no final da fase, um produto completo e robusto) ÊNFASE DE CADA DISCIPLINA EM CADA FASE CONCEPÇÃO Gerência de projeto Requisitos Desenvolvimento Arquitetura Testes ELABORAÇÃO Arquitetura Requisitos Desenvolvimento Testes Gerência de projeto CONSTRUÇÃO Desenvolvimento Testes Gerência de projeto Requisitos Arquitetura TRANSIÇÃO Testes Gerência de projeto Arquitetura Requisitos Desenvolvimento •40% •20% •5% •5% •30% Obras Citadas Sa ntos , M. (2007). Ruppers Experience - Gonow. Acesso em 14 de abril de 2011, disponível em ruppers experience: http://www.ruppers .com.br/ DOCUMENTOS PARA USO NO LABORATÓRIO: MODELAGEM DE NEGÓCIOS DOC. DE VISÃO REGRAS DE NEGÓCIO GLOSSÁRIO DE NEGÓCIOS CASOS DE USO DE NEGÓCIO ESPECIFICAÇÃO SUPLEMENTAR DE NEGÓCIOS REQUISITOS GLOSSÁRIO PLANO DE GERENCIAMENTO DE REQUISITOS VISÃO ESPECIFICAÇÃO SUPLEMENTAR CASO DE USO ANÁLISE E DESIGN TESTE PLANO DE TESTE GERÊNCIA DE PROJETO PLANO DE DESENVOLVIMENTO DE SOFTWARE LISTA DE RISCOS PLANO DE GERENCIAMENTO DE RISCOS GERENCIAMENTO DE CONF. E MUDANÇA IMPLANTAÇÃO NOTAS DE RELEASE IMPLEMENTAÇÃO AMBIENTE