Entenda o problema do cliente antes de codificar
Desenvolver software não é fácil. A possibilidade do resultado final ser bem diferente do planejado é muito grande.
Mas como fazer então?
Entendimento, planejamento, arquitetura, etc e tal.
1º Passo: Entender o problema
Primeira coisa é realmente entender o que o cliente deseja. Sem isso não vale avançar.
Por exemplo:
A visão que o cliente nos passa sempre vai ser mais simples, ele vai achar que só precisa de um select com where. Não é bem assim.
Entender de fato, fazer todas as perguntar necessárias e com isso tentar gerar os requisitos do sistema.
Depois de conseguir fazer e organizar os requisitos, fica mais fácil avançar para a próxima etapa.
2º Planejamento
Planejar é importante.
Eu gosto muito primeiramente em tentar visualizar as funcionalidades que serão necessárias desenvolver. Abaixo um exemplo bem simples.
O segundo passo tento gerar uma visão de objetivos. “Qual é os objetivos do projeto?”, “Qual os objetivos técnicos?”.
Assim com os objetivos, analisamos a timeline do projeto do projeto e definimos qual objetivo será focado em sequencia.
Por último, crio uma visão de execução de sprint projetando todas as funcionalidades.
3º Arquitetura e Issues
Analisar como vai ser a arquitetura, mesmo que de uma forma simples é muito importante, porque com isso conseguimos enxergar complexidades, impeditivos, etc..
Um exemplo de uma issue e arquitetura é assim:
Na Alcatéia Dev temos um baita curso focado em cliente, planejamento, arquitetura e desenvolvimento. Clique aqui e confira.