RUPinho
Qualidade de Software
César Delmas, Daniel Penaforte, Guilherme Carvalho, Hector Paulo,
Thiago Cavalcanti {cadcn, dap4, ggc, hplo, trc}@cin.ufpe.br
Roteiro
Objetivo
Estruturação de um processo que
possibilite pequenas empresas, trabalhar
de maneira organizada do ponto de vista
de planejamento, execução e controle.
Caracterização do ambiente
Características
Empresas de 5 a 20 funcionários
Menos de dois anos de atuação
Pouca experiência em processo de software
Problemas
Comunicação
Inadequação de documentação
Infra-estrutura inadequada
Origem
RUP (Rational Unified Process)
Orientado a objetos: UML
Fases: concepção, elaboração, construção e
transição
4P’s: pessoas, projeto, produto e processo
ProsCes (Processo do CESAR)
Baseado no RUP
Geração de artefatos
Orientado por Guias
Características
Agilidade
Documentação reduzida
Informações certas, para as pessoas certas, nas horas
certas.
Redução tanto no número de documentos, quanto no
escopo dos documentos adotados.
Baixo custo
Uso de ferramentas free
Etapas
Modelagem do Negócio
Planejamento e Gerenciamento de
Projetos
Requisitos
Análise e Projeto
Implementação
Teste
Implantação
Controle da qualidade
Estrutura
Resumo do objetivo do fluxo
As principais atividades a serem
realizadas
Os artefatos (obrigatórios e
opcionais) recomendados e gerados
no fluxo
Os templates e guias necessários
para produzir esses artefatos
Modelagem do
Negócio/Concepção
Objetivos
Atividades
Conhecer o contexto.
Mudar o contexto trabalhado.
Reuniões com representantes do cliente.
Identificar stakeholders
Identificar e priorizar processos derivado do negócio.
Artefatos
Modelo de Casos de Uso do Negócio/Acordo de Concepção
Planejamento e Gerenciamento de
Projetos (1/4)
Objetivos
Prover um processo de planejamento, execução,
monitoração e conclusão do projeto
Estabelecer um processo de gerenciamento de riscos
Garantir que o projeto seja executado conforme
planejado, com o mínimo possível de impacto
Estabelecer e manter o processo de desenvolvimento
adequado ao projeto, com base no processo de
software organizacional
Planejamento e Gerenciamento de
Projetos (2/4)
Atividades
Definir responsabilidades, atividades e recursos necessários
para o desenvolvimento do projeto
Identificar e gerenciar riscos
Controlar o desenvolvimento baseado no Plano do Projeto
Definir ferramentas e infra-estrutura necessárias
Selecionar procedimentos e padrões a serem utilizados
Formalizar a aceitação da entrega ao cliente de artefatos
desenvolvidos no projeto
Formalizar a conclusão do projeto
Planejamento e Gerenciamento de
Projetos (3/4)
Artefatos
Formulário de Abertura de Projetos
Plano do Projeto
Planilha de Gerência de Riscos
Relatório de Conclusão de Projetos
Ferramentas
Planilha de Estimativa e Acompanhamento de Custos
Cronograma
Lista de e-mail do projeto
Site do Projeto
[dotProject]
Planejamento e Gerenciamento de
Projetos (4/4)
Documentos Relacionados
Resumo sobre a técnica de estimativa por pontos de
caso de uso
Manual do dotProject
Requisitos (1/2)
Objetivos
Obter uma concordância com o cliente
sobre o que o sistema "deve fazer"
Delimitar o escopo do sistema
Prover a base para o planejamento do
desenvolvimento do sistema
Requisitos (2/2)
Atividades
Reuniões com representantes do cliente a fim de
obter um entendimento comum dos requisitos do
sistema
Identificar atores, requisitos e/ou casos de uso
Especificar requisitos e/ou casos de uso
Modelar e implementar protótipo
Artefatos
Documento de Requisitos
Documento de Caso de Uso
Análise e Projeto (1/2)
Objetivos
Transformar os requisitos no projeto do
sistema
Estabelecer uma arquitetura robusta
Adaptar o projeto ao ambiente de
implementação
Atividades
Analisar e projetar sistema
[Detalhar classes e subsistemas]
Definir arquitetura do software
Análise e Projeto (2/2)
Artefatos
[Modelo de Análise e Projeto]
[Modelo de Dados]
[Documento da Arquitetura]
Ferramentas
[Ferramenta CASE]
[Modelagem do Banco de Dados]
Implementação (1/2)
Objetivos
Implementar classes e objetos em
termos de componentes
Testar os componentes desenvolvidos
como unidades
Integrar os componentes produzidos
em um sistema executável
Implementação (2/2)
Atividades
Estruturar o modelo de implementação
Planejar integração
Implementar componentes
Efetuar testes unitários
Efetuar revisões de código
Ferramentas
Open source
Testes (1/2)
Objetivos
Verificar a integração de todos os
componentes de software
Verificar se todos os requisitos estão
corretamente implementados
Identificar e garantir que defeitos
sejam solucionados antes da
disponibilização do sistema
Testes (2/2)
Atividades
Artefatos
Projetar testes
Efetuar testes de integração, de sistema e de
desempenho
[Plano de Testes]
Ferramentas
Variam de acordo com ambiente
Implantação(1/2)
Objetivos
Distribuição do produto para o cliente.
Atividades
Preparar software para implantação
Disponibilizar o sistema em ambiente
de produção
Disponibilizar help e suporte ao usuário
Migrar dados pré-existentes
[Planejar e conduzir beta-testes]
Implantação(2/2)
Artefatos
Plano de Implementação
Help
Relatório de Avaliação Final do Cliente
Documentos Relacionados
Plano de Implementação
Controle da qualidade
Produtividade
Satisfação
Conformidade do cronograma
Análises qualitativas e quantitativas
Aplicabilidade
Cobertura do processo
Coerência do esforço
Perguntas?