Gerência de Projetos Dev & TI

24 fev, 2015

Como gerenciar um produto mobile do jeito certo

Publicidade

Na Concrete Soutions, onde trabalho, dividimos a teoria do nosso desenvolvimento mobile em três “fases”: descobrir, desenvolver e gerenciar, bem como em três “partes”: práticas, papéis e plataforma. Lembrando, claro, que toda essa teoria surgiu da nossa experiência de 10 anos, tempo em que fizemos, erramos, tentamos de novo, acertamos, aprendemos e mudamos de ideia. Já falamos aqui sobre como descobrimos o produto certo a ser desenvolvido e aqui sobre como desenvolvemos esse produto. Agora, vamos falar sobre a fase final de desenvolvimento mobile: o gerenciamento.

Depois de descobrir o aplicativo certo a ser desenvolvido e desenvolvê-lo, é preciso instrumentar as múltiplas dimensões do produto para monitorar a qualidade de forma preventiva. Digo preventiva porque, se a qualidade já era importante no desenvolvimento web, para mobile chega a ser indispensável, uma vez que o lançamento de um app de má qualidade (com alto tempo de carregamento, erros, conteúdo confuso ou navegação não-intuitiva, por exemplo) pode causar não só a desinstalação do app como prejudicar consideravelmente a reputação da sua marca.

Importante lembrar que a gestão da qualidade permeia todo o processo de desenvolvimento do produto, uma vez que é característica essencial do desenvolvimento ágil testar hipóteses o tempo todo para eliminar ou criar novas funções. Entretanto, após o produto pronto é preciso marketing para gerar conversão e montar uma base de clientes que possam gerar feedback, o que chamamos de “Customer Council” e é feito por meio da prática de Growth Hacking. Assim, conseguimos tomar decisões com base na análise de causas raiz e segmentação e no entendimento do comportamento do usuário.

Com isso, formamos um “Centro de Excelência Mobile”, responsável por garantir qualidade em todos os devices, por meio de testes contínuos. É a partir dos retornos do centro de excelência que cuidamos da performance e testamos todos os crashes para garantir a qualidade e otimizar o aplicativo nas app stores. Afinal, a posição do app na loja é determinante para o sucesso dele. Por exemplo: após uma busca, você já baixou um app que esteja na segunda, e não na primeira página?

gerenciar ciclo

 

É essencial que seu aplicativo seja bom e bem ranqueado. E, para isso, você precisa de marketing, testes e análises. Neste contexto, utilizamos diversas ferramentas, algumas até gratuitas, como o Google Analytics para gerir funis e eventos e ter acesso a todos os dados sobre conversão que baseiam as estratégias em que devemos apostar. O adjust é responsável por nossas atribuições e otimizações de campanhas, enquanto o crashlytics ajuda a controlar os crashes e o New Relic avalia a performance dos nossos aplicativos.

Para otimização na Appstore, usamos o App Annie. A ferramenta oferece relatórios de todos os tipos e com todos os dados sobre apps mobile no Brasil e no mundo. Com esses dados, é possível elaborar uma estratégia mais efetiva para melhorar a posição do seu app no ranking.

Por fim, a arquitetura proposta para aplicativos mobile pela plataforma MobileFirst implica na utilização de APIs escaláveis em nuvem. Neste sentido, precisamos usar um servidor de API, que no nosso caso é o StrongLoop; linguagens e frameworks NodeJS e, claro, nuvem AWS.

Esse formato de gerenciamento funciona tanto para um aplicativo novo como para o “salvamento” de um aplicativo pré-existente, o qual deve passar pelo ciclo de avaliação, implantação e medição. A avaliação é baseada na instrumentação para aquisição, retenção e ativação de usuários, além de análise evolutiva dos produtos; e na implantação de integração e deployment contínuos e controle de dependências, que dependem das plataformas de testes em emuladores e devices, cobertura de testes funcionais e implantação de cultura de TDD.

Neste contexto, a estratégia de implantação envolve o que chamamos de TestCloud, uma plataforma para testes que envolve uma estação com diversos devices e emuladores para que os testes sejam mais efetivos. Para o hardware, usamos uma estação de integração contínua Mac OS para iOS e Android, uma estação de QA Intel/Linux para Android, uma estação de QA Mac OS e um servidor virtual para QA para Android e emuladores. No caso dos Devices, analisamos todos os Apple e escolhemos os devices Android levando em conta uma análise da base de usuários do cliente.

Ufa! Com isso, terminamos nossa série sobre como descobrir, desenvolver e gerenciar produtos mobile. Lembrando novamente que essa série não são fases pré-definidas com começo, meio e fim, mas um ciclo. Durante todo o tempo de desenvolvimento é preciso descobrir, desenvolver e gerenciar. Antes de terminar ainda destacamos que o aprendizado é contínuo e a cada dia surgem novas ferramentas e processos que podem mudar o nosso jeito de trabalhar.

Por isso, se você tiver alguma sugestão, crítica ou dúvida sobre o que acabamos de falar, fique à vontade para usar os campos abaixo e nos ajudar a evoluir nosso jeito de desenvolver produtos digitais. Até a próxima =)