Você já pensou quantas vezes tomou decisões ao longo do processo de desenvolvimento de software?
Já pensou quantas pessoas tomam decisões em diferentes níveis durante a execução do processo? Gestores de Projeto, decidem para assegurar que o projeto não ultrapasse o escopo, tempo e recursos; Arquitetos de Software decidem para que os requisitos funcionais e não funcionais estejam presentes na arquitetura proposta; Desenvolvedores decidem para que o código desenvolvido materialize os requisitos funcionais e não funcionais e os critérios de qualidade, previamente definidos.
Observe que tomar decisões ao longo do processo é algo natural e ocorre em diferentes níveis do projeto, por pessoas diferentes, causando diferentes impactos. Aí vem a pergunta: Como você toma as suas decisões?
Elas são mais embasadas em informações, na sua experiência ou no seu feeling?
Para exemplificar, vamos utilizar aquela pergunta clássica que todos os clientes fazem:
“Em quanto tempo você entrega a funcionalidade X?”
Para responder, o desenvolvedor ou gestor de projetos pode usar os dados históricos do projeto ou de uma base de conhecimento da empresa como, por exemplo, ponto de função ou ponto de história de usuários de funcionalidades parecidas com o que se quer produzir.
Repare que você precisa de uma base histórica simples, pode ser até uma planilha, para embasar a sua decisão. Dessa forma, você tem uma base para decidir em vez de um simples “achometrô”.
As informações necessárias para a tomada de decisão podem vir de diferentes fontes e devem ser providas pelo seu processo nos pontos chaves. Além das informações técnicas como requisitos e restrições do projeto, ao decidir aspectos relevantes, é fundamental ter à disposição informações como o feedback dos clientes, tipos de bugs mais comuns, tendências de mercado e tecnológicas, satisfação dos colaboradores, entre outras.
Você utiliza em seu processo algum indicador, métrica ou outro item de conhecimento que lhe dá suporte para a tomada de decisão ou usa apenas sua experiência e feeling?
Ou um pouco de cada?
Professor do Instituto Federal do Espírito Santo (Ifes), participante do Leds e atualmente doutorando em Ciência da Computação, no Nemo, com foco em Ontologia, Integração de dados e métodos ágies. Além disso, se arrisca na cerveja artesanal e no surfe, é comandado por 4 cachorros.
Doutor em Ciência da Computação com pesquisa voltada a Engenharia de Software e Modelagem Conceitual. É professor do IFES campus Serra, atuando no Bacharelado em Sistemas de Informação e no Mestrado em Computação Aplicada. Membro do LEDS, com foco em projetos de inovação.