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!
Download

Dilema: Como fazer software um produto flexível? - (LES) da PUC-Rio