Sou engenheiro de software em uma equipe de desenvolvimento de software. Nos últimos 3 anos, trabalhamos para um cliente interno em um novo produto. Agora que este produto terminou, vamos trabalhar nos principais novos recursos dos produtos existentes. Para um recurso específico, o gerenciamento de produtos calculou que leva 150 horas para ser desenvolvido. Juntamente com nosso gerente de projeto, criamos um plano muito detalhado e chegamos a um esforço de 300 horas. Ontem discutimos isso e eles acham que superestimamos as coisas.
Em nosso planejamento, estimamos horas para escrever testes de unidade, a idéia deles é descartá-los para economizar tempo. A decisão ainda não foi tomada e defenderei esse planejamento e os testes de unidade, se necessário. Mas o que realmente não gosto aqui é que o gerenciamento está interferindo no nosso processo de desenvolvimento. Como mantê-los fora do nosso processo de desenvolvimento? E que argumentos eu poderia usar para manter os testes de unidade no local (além da qualidade e economia de tempo a longo prazo)?
Como observação, nossa empresa possui três equipes de engenharia e a equipe em que eu integro entrega o software no prazo (com uma margem de 10%). Enquanto as outras equipes sempre entregam com atraso, principalmente devido à subestimação no planejamento. Eles planejam apenas a codificação e não o gerenciamento, os testes e o manuseio.