Post original: link
Todo processo de desenvolvimento de software começa com uma ideia, geralmente são boas ideias mas acabam se perdendo quando deixamos a emoção falar mais alto.
Você provavelmente já deve ter tido uma ideia que achou incrível, pensou que seria o novo Steve Jobs, mudando o mundo e colocando seu nome na história, mas na hora de passar pro papel se enrolou, não soube por onde começar, pulou etapas, começou a modelar banco de dados e pensar em requisitos de layout e bateu no primeiro problema, um novo requisito que não estava previsto apareceu e a implementação dele quebra toda sua aplicação.
Bom esse é o ponto onde muitos desistem, quando os problemas aparecem, quando as coisas não acontecem como o planejado. Tenho uma coisa pra lhe dizer caro amigo, nada nessa vida se comporta como planejamos, controle é uma mera ilusão. Nesse momento você para e se pergunta: E agora? Como posso desenvolver um bom software, já que você acabou de dizer que não existe controle?, calma meu amigo, não podemos controlar o clima, a doença, a morte e uma infinidade de eventos que ocorrem ao nosso redor, mas no nosso universo de criação de softwares de qualidade podemos sim controlar alguns eventos.
Etapas para um bom desenvolvimento
“Essas são as minhas interpretações, opiniões que construi com minha experiência como desenvolvedor, não significa que são etapas e regras absolutas.”
- Escreva sua ideia, leia e releia até ficar claro o que o seu software vai fazer, ele terá muitas funcionalidades, mas terá uma que será o seu diferencial, a cereja do bolo. De atenção para ela, mas não esqueça das outras, pois não adianta tem um software que faz sua casa voar sendo que você não consegue mudar o toque da sua campainha.
- Crie protótipos, no mercado tem bastante material para te auxiliar nesse processo, o foco principal é ter uma base simples de como o sistema vai funcionar, qual será o fluxo de telas, coisas simples, sem designer, recomendo fazer no papel ou utilizar o Balsamiq.
- Faça um esboço do banco de dados, gosto muito de usar papel nessa etapa, seguindo o modelo de mapa mental, tem um aplicativo muito bom pra criar mapas mentais, o MindNode, nessa etapa não me preocupo com colunas, maxlenght e etc, deve ser algo simples mas que já mostre como o banco vai se comportar a nível de tabelas.
- Modele o banco de dados, de maneira progressiva, lembre-se que a tendência é que seu sistema cresça e junto com esse crescimento seu banco deve acompanha-lo, use relacionamentos coesos.
- Utilize TDD, teste seus modelos, teste suas funções, teste rotas, teste views, teste TUDO, TESTES SALVAM!!! Lembre-se “TODO CÓDIGO NÃO TESTADO É LEGADO”.
- Independente da linguagem que você escolha, divida a responsabilidade, use controller, service, interface, factory, nada de colocar toda a responsabilidade no controller ou em um único lugar.
- De importância para o Designer, UI e UX. Não adianta ter uma casa incrível por dentro se por fora ela está toda suja, e descuidada. Essas são etapas, assuntos que acho importante no processo para o desenvolvimento de um software de qualidade.
Fiquem com Deus e até a próxima.
Nunca desista de correr atrás dos seus sonhos
Top comments (0)