O cliente precisa de um software que faça algo legal que esteja precisando. Pesquisa as empresas que fornecem o software ou as empresas que desenvolva o novo software. Em seguida avalia o custo e os benefícios que cada empresa pode oferecer e o tempo para ser adquirido. O contrato é fechado.
Bem, esse é um simples caso de como pode ocorrer a compra de um sistema ou serviço por uma empresa.
Existe algumas variações que podem envolver muitas outras variáveis nesse contexto.
Quando um contrato é fechado entre o cliente e o prestador de serviço, alguns pontos devem ser analisados, obrigatoriamente, tanto pela empresa cliente como pela empresa fornecedora do serviço de TI.
Focando no aspecto de arquitetura e tecnologia, deixo as perguntas:
Quem decide a tecnologia? A equipe de TI ou o cliente?
Recentemente trabalhei em um projeto onde o cliente possuia uma equipe interna de TI. Essa equipe tinha conhecimentos de administração de redes, suporte e desenvolvimento. Ao perceberem que o software em desenvolvimento por nós tinhas algumas tecnologias X, Y e Z, solicitaram que fosse retirado a tecnologia Y e Z, e no lugar fosse utilizado a tecnologia W.
Vários foram os motivos desta solicitação: Performance, Manutenção e Complexidade foram os mais discutidos.
Sou desenvolvedor, e temos que confessar que, quando solicitado para desenvolver um sistema já pensamos direto na tecnologia A que gostamos e achamos legal. Não é verdade? Ou até mesmo aquela única tecnologia B que conhecemos.
Sem ao menos pensar se isso será bom para o cliente ou não, se ele quer ou não, muitas equipes de TI impõe as vontades e desejos de seus egos que muitas vezes é ruim para o negócio do cliente.
Vamos nos colocar agora, somente na visão de fornecedor de serviços de TI para tentar analisar de uma forma correta o produto para o cliente. Apartir dai acho que existe 3 caminhos a seguir. Talvez você conhece outro caminho, então deixe um comentário para criticar e deixar as sugestões para a comunidade.
#1: O cliente não possui equipe de TI em suas dependências:
A empresa fornecedora do produto deve analisar o negócio do cliente, as expectativas e saber desenvolver o produto de forma que suas necessidades sejam atendidas.
Neste caso, o produto poderia utilizar tecnologias que a empresa está habituada no seu dia a dia para que o tempo de criação e construção seja rápido, não tendo, portanto, uma curva grande de aprendizado da equipe.
Utilização de tecnologias novas e, diga-se de passagem, mirabolantes, podem ser utilizadas, desde que exista membros na equipe com conhecimento suficiente para resolver os problemas classificados como imprevistos ou mesmo de utilização da tecnologia.
Mas principalmente, foco 100% no negócio do cliente. Nessas horas é que o ego das equipes de TI ficam grandes para que seja utilizado tecnologias que para o cliente somente irá dificultar e causar aborrecimentos.
Tenha atenção, percepção e usabilidade.
#2: O cliente possui equipe de TI mas não irá dar manutenção no produto:
Em cliente que possui uma equipe de TI, mas que não é especializada em desenvolvimento, é comum que eles conversem e perguntem qual tecnologia irá ser utilizada.
Nessas horas também é comum que membros de ambas as equipes, cliente e fornecedor, entre em conflitos por experiências passadas ruins, pois uma não gostaria de utilizar a tecnologia que a outra pode estar palpitando ou sugerindo.
Depois de feito o levantamento de todo o negócio do cliente, a equipe de TI deste cliente costumam ser mais experientes e procuram saber se a equipe de TI fornecedora do serviço tem experiência com as tecnologias que serão utilizadas. Nessa hora é que pode gerar algum conflito e interesse que a tecnologia M e X sejam excluídas e adicionada a tecnologia Y.
A equipe de TI fornecedora deve ter sua metologia de desenvolvimento e dados concretos que prove que as tecnologias empregadas no serviço serão de fato as necessárias para suprir a necessidade do cliente.
Resumindo, a equipe de TI tem que estar afiada e experiente no uso de tecnologias para não deixar o cliente em apuros nos momentos de imprevistos ou urgências.
#3: O cliente possui equipe de TI com conhecimentos de desenvolvimento e manutenção de software:
Se o cliente possui toda uma equipe de TI que pensa e ajuda a empresa a crescer, e ele te escolheu para ser o fornecedor, então é pq ele sabe o que você faz e como faz. Parabéns!
Empresas assim até conseguem agilizar o processo de desenvolvimento do produto. Eles tem expertise e sabem o será bom para eles. Possui tb toda uma infra-estrutura que irá receber o seu produto. E sabe muito bem que se o produto for construído com uma arquitetura ABC utilizando as tecnologias X, Y e Z, ela irá perder performance.
A equipe de TI fornecedora, tem que definir muito bem o negócio e ser receptível com críticas construtivas. Mas e as críticas destrutivas? Relaxe, basta apresentar os dados e o sucesso que sua arquitetura e tecnologias tiveram no passado com outros clientes.
Claro que metologias novas de desenvolvimento é sempre bem vista quando se tem tempo de aprender sem apertar o cronograma.
Então fique atento e estude a necessidade alvo objetivo.
E vc? É quem decide a tecnologia, ou é o cliente, ou são ambos?
Acho válido esta discussão, pois muitas equipes deixam a razão e os objetivos e acabam se perdendo durante o ciclo de desenvolvimento, e consequentemente o cliente.
Deixe seu comentário!
Valeu _o/
