Como fazer Engenharia de Software sem dinheiro!!! 2006 Agenda Quem somos? O que fazemos? Clientes e Parceiros Dilema: Como fazer software um produto flexível? O que precisamos? Nossas ferramentas Nosso processo de desenvolvimento Dilema 2: Atividade vs. Tarefa Conclusões Quem somos? Milestone em 2006 Saída do Instituto Gênesis 22 colaboradores 2 Linhas de atuação/Produtos 15 clientes ativos Equipe Técnica 3 gerentes 4 arquitetos de software/analistas de sistemas 7 programadores Como gerenciar e aumentar o capital intelectual? Competências Gestão por Competências Gestão do Conhecimento Comunidades de Prática Compartilhamento de Conhecimento Exemplo de Produto : Skillo Solução para Gestão de Competências Desenvolvido 100% pela Milestone Equipe 1 Gerente Técnico 1 Arquiteto 3 Programadores + de 200.000 linhas de código + de 1.100 classes java Início: Novembro de 2003 Cadastro de Perfis de Colaborador Índice de Competências Alguns clientes... Parceiros Dilema: Como fazer software um produto flexível? Clientes em Segmentos completamente diferentes Clientes com estruturas completamente diferentes Projetos = Produto + Customização + Serviços de Implantação Dilema: Como fazer software um produto flexível? Clientes em Segmentos completamente diferentes Clientes com estruturas completamente diferentes Projetos = Produto + Customização + Serviços de Implantação Nossas Ferramentas O que precisamos? Controlar o tempo gasto Controlar as tarefas pendentes e o andamento Planejar Novas Funcionalidades Testar o produto para cada cliente Nossas Ferramentas Como fazer engenharia de Software sem dinheiro!!! Ferramentas Open-Source www.asp.net/starterkits www.snip.snap.org Senso Crítico Você não precisa adotar todas as práticas Investir em bons desenvolvedores “Smart and Get Things Done” Criar a cultura da Engenharia de Software na empresa Nossas Ferramentas > Time Tracking Nossas Ferramentas > Time Tracking Aferindo custos reais de projetos Time Tracking (exemplo fictício) Skillo Pedro Manoel Joaquim Eduardo Luciana Leonardo Marcelo Bruno Juliana Ferrao Rodrigo Total Total R$ 52.117,34 R$ 52.117,34 R$ 52.117,34 R$ 47.223,43 R$ 21.534,70 R$ 34.008,30 R$ 7.020,43 R$ 11.510,50 R$ 7.888,24 R$ 9.500,00 R$ 3.000,00 R$ 298.037,62 % 0% 10% 3% 80% 55% 2% 0% 0% 18% 0% 0% Valor R$ 0,00 R$ 5.211,73 R$ 1.563,52 R$ 37.778,74 R$ 11.844,09 R$ 680,17 R$ 0,00 R$ 0,00 R$ 1.419,88 R$ 0,00 R$ 0,00 R$ 47.392,87 InstantaNews Valor % R$ 2.283,57 20% R$ 2.283,57 5% R$ 4.567,14 20% R$ 1.670,67 5% R$ 0,00 R$ 1.383,65 5% R$ 6.078,24 98% R$ 0,00 R$ 997,65 19% R$ 0,00 R$ 0,00 R$ 19.264,48 Nossas ferramentas > Issue Tracking Nossas Ferramentas > Issue Tracking Por que controlamos as tarefas? Exemplo Projetado vs. Realizado (horas) Total (92%) Projeto 4 (100%) Realizado Projeto 3 (90%) Projetado Projeto 2 (102%) Projeto 1 (88%) 500 0 1000 1500 2000 2500 3000 Projeto 1 (88%) Projeto 2 (102%) Projeto 3 (90%) Projeto 4 (100%) Total (92%) Realizado 1555,85 424,25 388,45 270 2638,55 Projetado 1374 434,75 349,75 270 2428,5 Nossas Ferramentas > Wiki Nosso Processo de Desenvolvimento Etapas 1. 2. 3. 4. 5. 6. 7. 8. Arquitetura (à la Niemeyer) Modelagem de Classes Definição de Tarefas (issues) Acompanhamento da execução Elaboração do Roteiro de Testes Execução do Roteiro de Testes Lista de Bugs Volta ao Passo 3 até Lista de Bugs ser vazia Dilema 2 Atividades vs. Tarefas Comercial vende Project (atividades) Programador realiza tarefas (Issue Tracking) Relatório de Análise de Gaps Consolidado •Modelar as classes •Modelar o banco de dados •Implementar a classe •Elaborar casos de teste •Executar roteiro de teste •... Conclusões Ainda há muito o que melhorar! “nada mais permanente do que o temporário” Implantar processos aos poucos Principal dificuldade: Traceability Proposta Comercial -> Código Produzido Sistema Integrado de controle Milestone Gestão do Conhecimento e Gestão por Compettências www.milestone-ti.com.br +55 (21) 2286-1113 Aumentando a Produtividade dos Programadores!