terça-feira, 17 de junho de 2008

Projectos e Atrasos...

Este é um assunto complicado. Principalmente em casos onde não existe nenhuma metodologia de desenvolvimento como "Agile Software Development".

Nestes casos, quem é que tem a culpa? É o programador? É o gestor de projectos?

Melhor ainda, como é que se avalia a culpa num projecto atrasado?

Acho que é impossível de se avaliar a culpa de um atraso num projecto, pelo menos na maior parte dos casos. A não ser que aja mesmo um grande erro de um dos lados.

A meu ver a culpa pode ser atribuída aos dois, ao gestor porque não geriu bem o tempo, não explicou precisamente o que era necessário fazer. Ao programador porque demorou mais tempo do que devia a fazer certas partes da aplicação.

Quem é que deve ser responsabilizado? Depende do caso, mas eu diria que a maior parte das vezes deve ser o gestor, o gestor é o responsável pelo projecto, é ele quem coordena, organiza, planeia todo um projecto. O gestor tem de ter em conta tudo o que se possa passar com os programadores à sua volta.

Isto aconteceu-me no último projecto onde estive envolvido, que finalizei hoje!

O que é que aconteceu?

Eu comecei a desenvolver o script, e acabei-o em 3 dias. Tinha feito de acordo com as especificações que me tinham dado.

No entanto quando foi altura de mostrar ao gestor para ver se estava tudo em ordem, não estava. Afinal o que era um script aparentemente fácil de executar sem grandes complicações, deixou de ser. Passou a existir uma quantidade enorme de cálculos com datas ( basicamente aplicar operações de conjuntos a vários intervalos de datas várias vezes com diferenças entre intervalos de datas, uniões e etc's... ).

Ou seja maior parte do que tinha sido feito, foi simplesmente para o lixo. Toca de refazer praticamente todo o script de novo.

Claro que aplicar todas estas operações no script não foi tarefa fácil, e como é lógico atrasou logo tudo montes de tempo.

Aqui a culpa é de quem?

Em parte também é minha, porque se calhar devia-me ter informado melhor sobre o que estava a fazer, de maneira a não ter que refazer o script outra vez.

Do gestor, por não ter enunciado logo tudo o que o script envolvia, fazendo-me perder tempo, por ter desenvolvido 2 maneiras completamente diferentes.

Quem é que paga?

Paguei eu ( que sou o programador ), que tive de vir trabalhar 6º feira ( feriado ) umas duas horas porque o gestor me andava a apertar os calos. ( Embora ache que não tenha culpa no cartório, pelo menos neste caso, e não devia ter ido ).

Pagou o gestor, porque lhe atrasou tudo o que tinha planeado.

Paga o cliente, porque em vez de pagar 3 dias de trabalho, vai pagar mais.

Soluções para que isto nunca aconteça? Pelo que estive a ler sobre "Agile Software Development", parece que é uma boa aposta, partir o software em várias tarefas minúsculas e só passar para a próxima após a anterior estar completa e testada.

Tenho é impressão que o meu gestor de projecto não vai achar grande piada ( até porque lhe ia aumentar bastante o trabalho )

Um bom link para se irem entretendo sobre desenvolvimento de produtos "Managing Product Development", tenho acompanhado o blog e tenho gostado bastante.

Nenhum comentário: