por xultz » 23 Fev 2008 21:19
Baseado no que você falou, não dá prá imaginar nada, faltam muitos detalhes. Porém, você tá trabalhando em duas coisas que podem tornar o prazo do projeto em algo cinza, ou seja, podem aparecer pepinos difíceis de resolver e mais difíceis ainda de se prever no início do projeto.
Eu procuro separar num projeto as partes cinzas, que eu chamo de incertezas. Se eu não tenho certeza de como fazer uma parte, eu procuro eliminá-la primeiro. Por exemplo, se teu acionamento de potência não é algo do tipo "ah, isso eu faço assim que eu garanto que dá certo", então é necessário horas de pesquisa, estudo, e muito protoboard até dominar a área e fazer o trecho funcionar. O mesmo com wireless. Depois de todas as incertezas sanadas, é só juntar todas as peças do quebra-cabeças e fazer o produto.
A dúvida é: você está com teu projeto enroscado na primeira ou segunda parte? Se você está enroscado em alguma incerteza e não consegue achar solução, então das duas uma: ou você contrata uma consultoria, ou desiste do projeto. A consultoria às vezes é cruel, porque ela pode minar todo o teu lucro estimado, que daí você descobre que foi muito mal calculado.
Já se você está enroscado na segunda parte, então foi uma questão de inexperiência por não dar o tempo certo a algumas coisas. Por exemplo, é comum olhar pros blocos do projeto e pensar "ah, esse dispositivo se comunica com o outro através desse protocolo, tranquilo" e na hora de programar, descobrir que é bem menos tranquilo que parecia.
Uma outra coisa que faz toda diferença são recursos de laboratório. Vou dar um exemplo: há vários anos atrás, eu peguei um projeto (eu tinha empresa de projetos na época) que devia se comunicar com o PC através da porta de teclado (estranho, mas fazia todo o sentido pro produto). Antes do projeto, estudamos o protocolo de teclado, tava tranquilo, metemos bala. Fazer o circuito funcionar com o PC não foi muito simples, mas demos conta. Quando fomos mostrar no cliente, não funcionou. Voltamos para a empresa, e lá funcionava. Testamos em outros computadores, e quase todos funcionaram. Investigamos o que poderia ocorrer com os demais que não funcionavam, alguns ajustes, e todos funcionavam. Voltamos no cliente, e nenhum dos computadores dele aceitavam. Daí para frente, foram semanas de testes e sucessos parciais e frustrantes. O projeto atrasou horrores, o cliente ficou muito emputecido. Mas aqui vem o detalhe mais cruel: na época não tínhamos scope digital e somente um scope analógico velho que vivia com mal contato. O problema é que naquela época os scopes digitais custavam muito mais caro que hoje em dia. Para sorte, consegui um scope digital emprestado de um cliente rico, e matamos todos os problemas em uma semana. Se tivéssemos um scope digital desde o começo, teríamos entregado um produto excelente dentro do prazo. Mas acabamos atrasando vários meses.
O que eu quero dizer é que às vezes o projeto enrosca num bug ou problema que um scope digital, um analizador lógico, um analisador de espectro, uma ponte RLC, etc, podem fazer toda a diferença, mas normalmente não temos nenhum acesso a um equipamento destes.
Pensando um pouco nisso, onde você acha que teu projeto está enroscado?
98% das vezes estou certo, e não estou nem aí pros outros 3%.