Como identificar desafios de negócios para desenvolver apps
A falta de uso de aplicativos e a crise do software
Imagens como a que está abaixo são conhecidas e familiares para muitos de nós que estão envolvidos com desenvolvimento de software. Temos uma frase que usamos para casos como este: "Não sei se rio ou choro". E é que, infelizmente, muitos de nós sofremos muitas das decepções que os projetos de desenvolvimento de software geram.
Um dos fenômenos que tem ocorrido nos últimos anos é a falta de utilização das funcionalidades de aplicativos desenvolvidos com métodos que envolvem a coleta de todos os requisitos desde o início (Examining the "Big Requirements Up Front (BRUF) Approach, 2022)
Esta não é apenas uma percepção ou sentimento de alguns desenvolvedores. De acordo com o Standish Group, mais da metade dos projetos de software excedem seus orçamentos e duração, além de não cumprirem o escopo acordado (The Standish Group, 2015). Poderíamos dizer que esse fenômeno é uma das principais causas do conceito de “A crise do software” (Software Crisis, 2022).
A importância do envolvimento do usuário
Se formos um pouco mais a fundo, descobriremos que um dos principais fatores que influenciam o fato de mais da metade dos projetos terem dificuldades ou até serem cancelados, é a falta de envolvimento do usuário:
E se, por outro lado, avaliarmos qual é o principal fator que influencia projetos de sucesso, descobriremos que é exatamente o mesmo, o envolvimento dos usuários:
Então, como engajar os usuários?
Há várias maneiras de fazer isso:
1- Fale diretamente com eles: eu sei que parece óbvio, mas é incrível quantos projetos eu estive envolvido em que T.I. eles definem os requisitos para os aplicativos, em vez dos usuários finais.
2- Selecione uma técnica de levantamento de requisitos, que os envolva, e use-a. Aqui estão algumas:
- Entrevistas,
- pesquisas,
- Grupos de foco,
- Prototipagem
- Observação (Job Shadowing)
- Outros
Identifique qual é o desafio do negócio
Muitos usuários ou clientes abordam os desenvolvedores de software com uma proposta do aplicativo que desejam desenvolver, mas o que aconteceria se eles abordassem primeiro para explicar qual é o desafio de negócios que enfrentam?
Quando falo em desafio de negócios, quero dizer:
- Objetivo de negócios que eles querem ou precisam alcançar.
- Problema de negócio que precisa ser resolvido.
- Oportunidade de negócio que eles querem ou precisam aproveitar.
- Regulamento a cumprir.
Normalmente, uma iniciativa que visa desenvolver software está alinhada a um, ou alguns, dos quatro desafios anteriores, mas não necessariamente a todos eles. Então imagine este cenário:
O cenário anterior apresenta diferentes pontos em que, potencialmente, pode haver contato com os usuários, mas focaremos na etapa de identificação dos desafios do negócio. Para isso, proponho a utilização dos seguintes formatos:
Como definir um problema de negócios
Como definir um objetivo de negócio
O formato anterior está relacionado à metodologia do Google para definição de objetivos, conhecidos como OKRs (Objectives and Key Results), para mais informações, consulte este guia.
Como definir uma oportunidade de negócio
Conclusões
Para ser concreto e resumir o que é apresentado aqui:
- Estão sendo continuamente desenvolvidos aplicativos que oferecem funcionalidades que não são utilizadas por seus usuários.
- A falta de uso de aplicativos é um dos problemas enfrentados pela indústria de software na crise que atravessa.
- Uma das causas desta crise de software é a falta de envolvimento do usuário durante os projetos de software.
- Os usuários podem ser envolvidos de diferentes maneiras.
- Uma dessas maneiras pelas quais eles podem/devem se envolver é identificando seus desafios de negócios para posteriormente determinar qual é a melhor solução de negócios para aquele desafio.