10 dicas de ouro para o desenvolvimento de soluções digitais
Alguns aprendizados para desenvolver metodologias de desenvolvimento de softwares para automatizar processos e produzir soluções digitais para o bem comum
Há pelo menos dois anos venho me dedicando a acompanhar o desenvolvimento de soluções digitais na Mídia NINJA dentro do que carinhosamente chamamos de Zona de Propulsão, nosso hub de inovação.
Na Zona circula muita gente, muitas ideias, muitos desenhos, protótipos e desejos. E é incrível poder acompanhar tão de perto, tanta gente inovadora que acredita que a tecnologia pode colaborar para a transformação do mundo.
Nessa jornada venho sistematizando aprendizados e, junto a outros, desenvolvendo nossas metodologias de desenvolvimento de softwares para automatizar processos e produzir soluções digitais para o bem comum.
Afinal, queremos democratizar e tornar acessível conhecimentos para que muitas pessoas possam compreender e se empoderar de como criar e desenvolver tecnologia. Como diria Cláudio Prado, um delírio utópico que caminhamos coletivamente para que seja realizado.
Então, aí seguem algumas dicas bacaninhas para quem fazer seu próprio aplicativo:
1 – Comece do início: esta é uma redundância pedagógica. Defina os objetivos de sua solução digital. Quando queremos desenvolver soluções digitais, queremos tudo ao mesmo tempo agora. Mas o desenvolvimento de software não funciona assim. Aliás, nada funciona assim. É necessário construir o objetivo do projeto, a organização das etapas e fases, e na lógica de desenvolvimento vinculado às funcionalidades que são pré-requisitos para uma boa solução digital.
2 – Desapega.com: com certeza você é uma pessoa genial e sua ideia é maravilhosa, mas não se apegue a ela achando que é a melhor coisa do mundo e que vai resolver a vida do outro. Alías, você precisa compreender e definiar quem é o seu público. Esteja aberto à escuta e à descoberta, compreenda sua ideia como um pontapé inicial para o desconhecido.
3 – Ciência do achismo: o achimo é a teorização calcada no subjetivismo do ‘eu acho que’, siginifica que não há argumentação fundamentada e aprofudanda. E isso aqui não caberá. Você precisa fazer um benchmarking, ou seja, pesquisar e conhecer profundamente quem são os concorrentes do setor e como eles trabalham.
4 – Ouça quem irá usar para validar: você quer que as pessoas usem a sua solução, certo? Então faça pesquisas quantitativas e qualitativas com elas. Organize os dados gerando informações que podem ser relevantes para você ter insights, validar e melhorar ainda mais sua ideia.
5 – Entrega de valor: se você já viu que tem varias soluções digitais como esta que você esta pensando no mercado, no que de fato a sua é diferente? Quais são os benefícios que estou entregando às pessoas que entendo que são meu público alvo?
6 – Backlog dos sonhos: faça a lista de funcionalidades sem medo de ser feliz. Como o time de desenvolvimento sempre me fala: papel e código aceita tudo… Aproveite para depois organizar esta lista em fases, em versões de entrega. Disso vai derivar automaticamente um backlog.
7 – Time Multidiscilplinar: monte um time de pessoas com capacidades, técnicas e experiências diferentes e não esqueça jamais de construir o espírito de time, de colaboração e de trabalho coletivo.
8 – Fases do desenvolvimento: agora é mão na massa e os integrantes do time se organizam, as tarefas são priorizadas, e os responsáveis iniciam o desenvolvimento do software. Neste momento, é muito comum ouvirmos falar sobre uma grande gama de “métodos ágeis” de desenvolvimento de software.
9 – Buguiugui: vai ter bug, sempre tem, por isso é importante testar sua solução em todos os tipos de diveces. Para isso também é importante desenvolver um protocolo de testes e uma forma de reportar bugs para a equipe de desenvolvimento poder realizar as correções e ajustes.
10 – Não tenha medo de pivotar: se você sacou que sua solução não teve êxito, após ter testado e não obteve os resultados esperados: pivote! Não significa desistir de sua ideia, mas sim analisar o que está dando errado e tentar identificar novas oportunidades com base no que já existe.