1ª Apresentação (A1) Modelos de Processos de Software RA: 991646 / Edson Amorina Junior RA: 983775 / Peterson Peixoto dos Santos MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 1 AGENDA 1. O que é RUP? 2. Histórico 3. Conjunto das “Melhores” Práticas 4. Processo (Estático e Dinâmico) 5. Aspectos de qualidade, padrões e estratégias de testes 6. Gerência de Projeto 7. Ferramentas 8. Referências MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 2 O Que é RUP? O RUP (Rational Unified Process) é um processo de engenharia de software desenvolvido pela empresas Rational. Ele serve como um guia de como utilizar de maneira eficiente a UML (Unified Modeling Language). Utiliza desenvolvimento Iterativo e Incremental. Tem como objetivo oferecer um processo de desenvolvimento “bem definido” e “bem gerido”. MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 3 Histórico MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 4 “Melhores” Práticas do RUP São seis: 1. Desenvolvimento de software interativo 2. Gerenciamento de Requisitos 3. Arquitetura baseada em Componentes 4. Modelo de Software Visual (UML) 5. Verificação contínua da qualidade do Software 6. Gerenciamento e controle de mudanças MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 5 Processo Pode ser dividido em duas dimensões: 1. Horizontal (Dinâmico) 2. Vertical (Estático) MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 6 Processo (Dinâmico) Iniciação (Inception) Definição do escopo do projeto, identificação dos atores, casos de uso e descrição dos mais significativos Elaboração (Elaboration) Análise do sistema, definição da arquitetura de software Construção (Construction) Desenvolvimento iterativo e incremental do produto Transição (Transition) Atividades de “entrega” do software CADA FASE PODE SER DECOMPOSTA EM ITERAÇÕES MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 7 Processo (Estático) Estruturo do processo: Intervenientes (Workers) - Quem? (who) Atividades (Activities) - Como? (how) Artefatos (Artifacts) - O Que? (what) Fluxo de Trabalho (Workflows) - Quando? (when) MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 8 Processo (Estático) Fluxo de Trabalho (Workflow) MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 9 Processo (Estático) Fluxo de Trabalho “Chave”: Fluxo de Trabalho de Engenharia (Engineering) 1. Modelação do negócio (Business modeling) 2. Levantamento de Requisitos (Requirements) 3. Análise & Projeto (Analysis & Design) 4. Implementação (Implementation) 5. Testes (Test) 6. Implantação (Deployment) Fluxo de Trabalho de Suporte (Supporting) 1. Gerência de projeto (Project Management) 2. Gerência de configuração e mudança (Configuration and Change Management) 3. Ambiente (Environment) MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 10 Qualidade, Padrões e Estratégia de Testes •Qualidade: Verificação a cada artefato/atividade; •Padrões: Guidelines definidos pelo usuário do processo; •Estratégias de Testes: Não restritivo, porém recomenda a verificação da qualidade dos testes aplicados; MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 11 Diretrizes para o Gerenciamento do Projeto O gerenciamento de projeto de software é a arte de equilibrar objetivos concorrentes, gerenciar risco e superar limites para entregar com sucesso um produto que vá ao encontro das necessidades dos clientes e dos usuários. Os propósitos do gerenciamento de projeto são: Fornecer intensivo; Fornecer executar, e Fornecer uma estrutura para gerenciar projetos de softwarediretrizes práticas para planejar, montar equipes, monitorar projetos; uma estrutura para gerenciamento de risco; O papel de gerente de projeto é alocar recursos, modelar prioridades, coordenar interações com clientes e usuários, e manter a equipe do projeto focalizada no objetivo. O gerente de projeto estabelece um conjunto de práticas que assegurem integridade e qualidade aos artefatos do projeto. MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 12 Diretrizes para o Gerenciamento do Projeto A disciplina de Gerenciamento do Rational Unified Process (RUP) não tenta cobrir todos os aspectos de gerenciamento de projeto. Por exemplo, não cobre questões como: Gerência de pessoal: contratação, treinamento, instrução Gerência de orçamento: definição, alocação Gerência de contratos, com fornecedores e clientes MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 13 Diretrizes para o Gerenciamento do Projeto MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 14 Rational Suite Enterprise •Rational RequisitePro •Rational Unified Process •Rational Rose –Rational QualityArchitect •Rational PurifyPlus –Purify –Quantify –PureCoverage •Rational Robot •Rational TestManager •Rational ProjectConsole •Rational ClearCase LT •Rational ClearQuest Gerência de Requisitos Engenharia de Processo Análise/Projeto Gerador de Stubs para Teste Suite para Teste -Análise de memória -Análise de desempenho -Cobertura de código Automação de Testes Gerência de Testes Gerência de Projeto Gerência de Versão Gerência de Mudança MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 15 Referências 1. Rational Software (http://www.rational.com) 2. Choose Technologies (http://www.choose.com.br) 3. Rational Unified Process - Best Practices for Software Development Teams, Rational Software White Paper, TP026B, Rev 11/01 (www.rational.com/media/whitepapers/rup_bestpractices.pdf ) MO409 / Engenharia de Software I - 1º Semestre / 2003 - Prof. Eliane 16