hukarz open source process 01.00-d01 alan kelon, silvio meira recife, 01/12/2006
TRANSCRIPT
Hukarz Open Source Process01.00-D01
Alan Kelon <[email protected]>,
Silvio Meira <[email protected]>
Recife, 01/12/2006
Modelo cascata
Modelo espiral
Desevolvimento Iterativo
Hukarz
Células
Catedral
Conceito do
softwareArquitetura
Design
Desenvolvimento
Teste
Requisitos
Versão estável
Começo da fase Bazar
Requisitos
Atividades
• Planejamento & Acompanhamento de Projetos
• Garantia da Qualidade de Software• Gerenciamento de Configuração • Gerenciamento de Requisitos• Arquitetura de software• Implementação• Testes
Planejamento e Acompanhamento de Projetos
• Prover um processo de planejamento, execução e monitoração de projetos;
• Estabelecer um processo de gerenciamento de riscos
• Definir responsabilidades, atividades e recursos necessários para o desenvolvimento do projeto
• Identificar e gerenciar riscos • Elaborar plano de projeto
• Plano de projeto• Plano de iterações • Cronograma• Planilha de gerência de riscos• Relatório de progresso
Garantia da Qualidade do Processo
• Assegurar conformidade com os padrões e procedimentos estabelecidos para o produto e o processo;
• Assegurar que oportunidades e inadequações aos produtos, processo e padrões são levadas à atenção dos gerentes para que sejam tratadas
• Planejar garantia da qualidade do projeto• Realizar auditoria de processo• Acompanhar correção dos desvios de auditorias encontrados
• Plano de Qualidade• Relatório de auditoria
Gerência de Configuração• Estabelecer e manter a integridade dos produtos de
software através do ciclo de vida do projeto
• Elaborar do Plano de Configuração• Apoiar equipe de desenvolvimento (suporte);• Prover ambiente de desenvolvimento de gerência de
configuração• Elaborar baseline• Auditar repositório• Gerar build
• Plano de gerência de configuração
Gerenciamento de Requisitos• Obter uma concordância com o cliente e
usuários sobre o que o sistema “deve fazer”;• Delimitar o escopo do sistema;• Prover a base para o planejamento do
desenvolvimento do sistema
• Elicitar requisitos, Analisar requisitos, Especificar requisitos, Validar requisitos, Interagir com a comunidade
• Documento de requisitos
Arquitetura
• Descrever como o software é decomposto e organizado em componentes;
• Estabelecer uma arquitetura robusta para o sistema
• Validar formalmente a arquitetura proposta
• Documento de arquitetura
Atividades em projeto de arquiteturas
ADD Evolutionary Delivery Life Cycle
Software
Concept
Preliminary
Requirements
AnalysisDesign of
Architecture
and System
CoreDevelop a
Version
Incorporate
Customer
Feedback
Deliver the
Version
Deliver
Final
Version
Elicit
Customer
Feedback
Implementação
• Implementar classes e objetos em termos de componentes definidos pela arquitetura do sistema;.
• Testar os componentes desenvolvidos como unidades;
• Integrar os resultados produzidos em um sistema executável
Teste• Verificar a integração adequada de todos os
componentes de software;• Verificar que todos os requisitos estão
corretamente implementados;
• Projetar testes • Efetuar testes de integração, de sistema e de
desempenho• Coletar relatos de erros da comunidade
• Plano de testes, Planilha de resultado de testes
Interação com a comunidade
Bazaar
Backlog
Requisito
Cliente
Core Team
Comunidade
Issues
Patch
Core Team
Avaliação patch
SVN
Arquitetura
Codificação Teste
Arquitetura
Teste Fix
Comunicação
• Listas de discussão– Fábrica– Projetos
• -devel• -users• -commits• -announce
Site do projeto
• Objetivo do projeto• Funcionalidades• Plano de release• Endereço de contato• Listas de discussão• Link para download• Link para ferramenta de controle de versão• Link para ferramenta de controle de mudança
Site do projeto
• Duas seções– Usuário
• Documentação• Screenshots• Demo público [se possível]
– Desenvolvedores• Documentos do projeto• Roadmap, TODO, FAQ, coding guidelines• Descrição do processo utilizado internamente
Dúvidas?