Alguém conhece, já usou ou ouviu falar em alguma ferramenta de time tracking que seja integrada ao Eclipse?
Time tracking
22 Respostas
Nao saquei - pra que vc precisa/quer isso?
A empresa para a qual trabalho está remodelando alguns processos internos e um deles é o controle de horas gastas em atividades de desenvolvimento de cada módulo de um sistema ou então em uma tarefa específica (como testes unitários ou prototyping).
Estamos usando um produto muito chato e pago para ‘logar’ as horas gastas em cada atividade. E isso implica em ficar abrindo o tal programa e digitando os horários de início e término de cada coisa.
Aí fiquei imaginando que talvez algum plugin pro Eclipse pudesse me resumir num dia quantas horas eu fiquei editando classes de um determinado projeto ou rodando o debugger e coisas do tipo … Mas não tenho idéia se algo assim existe.
Nao eh mais facil/pratico arrumar um bloco de post-its e ir anotando os horarios e colando do lado do monitor, e jogar os tempos todos no programa lah no fim do dia?
De qualquer forma, o que eles vao fazer com essa informacao incrivelmente detalhada sobre o que vcs estao fazendo no dia-a-dia?
Isso me cheira a implantação de PSP. Aliás, isso cheira muito mal (só podia ser criação da SEI) 
Não, trata-se na verdade de uma multinacional muito grande que está estruturando sua fábrica de software no Brasil, para concorrer com os maiores players do mercado.
Isso envolve CMMI e a construção de um processo de desenvovilmento de software todo formal inpirado no RUP.
Então, neste processo o desenvolvimento de uma aplicação X é quebrado em partes que tem tempos para serem desenvolvidas. E estes tempos tem que ser monitorados.
Exemplo: Aplicação X
Interface com usuários: 10 horas
Regras de negócio: 20 horas
Testes unitários: 15 horas
Integração com app Y: 20 horas
Testes de integração: 15 horas
Então, os desenvolvedores que estão trabalhando em cada uma das partes precisam cronometrar seus tempos o tempo todo, para que o ‘gestor’ deste processo possa acompanhar os tempos e saber se alguma coisa está saindo fora dos cronogramas.
:shock: Tudo está em algum cronograma.
Além disso, há uma série de outros documentos e diagramas que temos que ficar mantendo.
Então estamos tentando diminuir ao máximo a burocracia e todos os pontos em que isto for possível.
No caso citado das horas, um desenvolvedor acaba trabalhando em vários pontos do código durante um dia, que acaba consumindo horas de trabalho correspondentes a várias ‘partes’ do sistema.
Ficar fazendo anotações a cada instante atrapalha muito a concentração. Pois além de anotar os tempos o desenvolvedor ainda tem um certo trabalho para analisar “para qual das tarefas vou considerar estas horas”.
Controlar os cronogramas, como comentei no post anterior.
Se alguma coisa sair fora do cronograma o gestor tem que tomar uma ação imediatamente, pois se um atraso real ocorrer em uma entrega, as consequências são muito, muito graves. Multas altas, problemas legais por quebra de contrato, dentre outras coisinhas.
Ok, dado que essa informacao foi coletada, como exatamente os cronogramas sao controlados?
Se te deram 10 horas pra fazer uma tarefa, mas vc levou 80, o que acontece?
Scrum meeting ?
Mesmo ignorando todos os “porques” envolvidos na elaboracao do processo de voces e assumindo simplesmente que o gestor quer a informacao, essa ideia de um plugin nao eh viavel.
Como saber exatamente se voce esta debugando ou editando codigo? (eu as vezes edito e compilo no meio de uma sessao de debug)
Como mensurar o tempo gasto em cada projeto da empresa simplesmente pela edicao das classes de um projeto do Eclipse? (um projeto do Eclipse pode ser simplesmente uma dependencia utilizada em outros projetos diferentes, p.ex.)
Como manter esse processo funcionando se nao estiver usando Eclipse?
Enfim - a ideia ate pode parecer interessante por tentar tirar do desenvolvedor a necessidade de fazer esse tipo de controle, mas na pratica nao da pra automatizar isso, IMHO. Apenas quem esta executando a tarefa pode dizer o que esta fazendo e quanto tempo gastou naquilo. Nao vejo como automatizar essa “identificacao da duracao de cada atividade”.
Em todo caso nao queria estar na pele dos futuros usuarios/vitimas desse processo.
Marcio Kuchma
Ok, dado que essa informacao foi coletada, como exatamente os cronogramas sao controlados?Se te deram 10 horas pra fazer uma tarefa, mas vc levou 80, o que acontece?
Bem. Neste caso o gestor tem o poder de realocar pessoas de outras atividades ou até mesmo de outros projetos para suprir a deficiência que um eventual atraso tenha causado.
Ele pode até contratar novos desenvolvedores se for necessário.
Da mesma forma, se uma tarefa levar menos tempo do que o previsto, ele pode aproveitar este tempo que sobrou do desenvolvedor para aloca-lo em outra atividade ou projeto.
E se mesmo com estes rebalanceamentos não for possível cumprir o cronograma o gestor terá que partir para ações de renegociação de prazos com o cliente. Sempre se antecipando aos problemas.
Como saber exatamente se voce esta debugando ou editando codigo? (eu as vezes edito e compilo no meio de uma sessao de debug)
Bem, a informação não precisaria ser tão detalhada. Seria mais como uma ferramenta de apoio que dissesse ao desenvolvedor coisas como:
- Você editou tais arquivos hoje. Entre o horário de salvamento da primeira edição do arquivo X e o da última, transcorreram-se X horas.
- Você editou arquivos em tais projetos hoje. Para cada projeto o tempo transcorrido entre o primeiro salvamento do primeiro arquivo editado e o último salvamento do último arquivo editado foi de X horas.
Assim, o desenvolvedor poderia ter uma base para concluir:
- Trabalhei X horas em tais classes que fazem parte de módulo Y.
- Trabalhei X horas em projetos que compõem a camada Z da aplicação.
e assim por diante.
A idéia não seria usar tal ferramenta como fonte de informação 100% confiável. Seria apenas um apoio para que o desenvolvedor pudesse formular as suas próprias estatísticas, que ele complementaria com outras medições controladas por ele próprio ou por outras ferramentas.
Em todo caso nao queria estar na pele dos futuros usuarios/vitimas desse processo.
Infelizmente processos como este são a realidade de todas as grandes ‘fábricas de software’ que existem no Brasil.
Por isso que são ‘fábricas’, pois todos os processos tem que ser documentáveis, rígidos e qualquer ação tem que produzir evidências da sua eficácia.
Enfim, particularmente ainda prefiro XP.
Gcobr,
por favor, passe o nome da tua empresa pra galera saber pra onde não se deve mandar curriculos…hehehhe
Gcobr,por favor, passe o nome da tua empresa pra galera saber pra onde não se deve mandar curriculos…hehehhe
Bem. O nome da minha empresa prefiro não abrir assim tão publicamente, porque os acordos de confidencialidade que eu tive que assinar ao ser contratado são bem severos.
Entretanto, a informação de mercado que eu tenho é de que gigantes como a Indiana Tata (TCS Brasil) e a Mexicana Softtek possuem processos similares.
Ironia a parte, timetracking é algo bem comum em empresas multinacionais. De qualquer forma, não funciona.
Voltando ao tópico, não conheço anda livre mas existem pagos, basta dar uma googlada. Para algo grátis siga a idéia do CV.
Só não acredite que CMM ou timetracking valem algo e que vai trabalhar num lugar melhor por isso. No máximo sua empresa vai usar essas certificações apr aganhar mais contratos de clientes sem muito critério.
hehehe… Bom, agora sei pelo menos que não devo mandar curriculo para Tata e Softtek…heheheh 
é mais fácil mudar de trampo !!! heehehehe
:lol:
Na verdade, eu estou pagando pra ver. Tenho muitas reservas quanto a estes processo e estou com o pé muito atrás.
Só tenho certeza de que é graças a ele que a minha empresa está fechando contratos milionários. Sem contar o poder de fogo em concorrências públicas.
Então, como não posso lutar contra as metodologias, vou tentar me adequar a elas da maneira menos dolorosa possível.
Quanto a mudar de emprego … talvez … se tudo for por água abaixo. Porém o poderio financeiro da empresa em questão é grande e ainda não encontrei no mercado proposta melhor de trabalho.
Bom, um software excelente e barato eh o http://www.allnetic.com/index.html?home3wtt
Rafael
Não, trata-se na verdade de uma multinacional muito grande que está estruturando sua fábrica de software no Brasil, para concorrer com os maiores players do mercado.Isso envolve CMMI e a construção de um processo de desenvovilmento de software todo formal inpirado no RUP.
O PSP é o CMM aplicado individualmente. O “pai” do PSP, Watts Humphrey, é também considerado o pai do CMM.
Acho uma ilusão querer medir o tempo que os desenvoldores do projeto gastam no cafézinho. Por outro lado, são necessárias métricas que possibilitem o acompanhamento financeiro do projeto. Isso é uma grande carência em projetos de software e tem gerado grandes conflitos entre TI e Finanças nas empresas.
Bom, um software excelente e barato eh o http://www.allnetic.com/index.html?home3wttRafael
Sim, esse é legal, e até já usei em outra empresa. Estava procurando algo mais completo e que precisasse de menos interação do desenvolvedor.
O que você quer: http://timetrackplugin.sourceforge.net
Minha opinião: uiahuiahiuhaiuhaiuhaiuahiuahiauhaui