Manutenção de aplicativos: o que considerar?

Tags:    

Receba atualizações semanais no e-mail

Para quem deseja ter um aplicativo ou já tenha, a manutenção deles é um tema essencial. É possível criar um app de forma descuidada, embora não recomendado  uma vez que os usuários merecem uma boa experiência e isso atrai mais gastos ao longo prazo do que parece inicialmente. Além disso, a boa performance coloca as empresas à frente no cenário competitivo do mercado.

Por isso, recomendo a leitura deste artigo para que fique claro como deve ser pensada a manutenção de aplicativos e preparar o orçamento adequado. Vamos nessa?

Quanto custa um aplicativo?

A pergunta é pertinente para o assunto da manutenção de aplicativos, pois a manutenção também contempla os gastos que vão além do desenvolvimento.

Apesar de existir o pensamento de que basta apenas pagar uma vez e pronto, a ideia é incorreta, pois manter o app online e funcional requer o pagamento de serviços de terceiros, como serviços de nuvem, suporte para casos de bugs, APIs, dentre outros.

Se tratando do desenvolvimento, o custo dependerá de diversos fatores, como a escolha entre nativo ou híbrido e se o desenvolvimento do aplicativo será interno ou terceirizado.

No caso dos tipos de desenvolvimento, o nativo requer um investimento maior, pois é necessário um maior volume de desenvolvedores em relação ao desenvolvimento híbrido, por exemplo.

Quanto ao desenvolvimento ser interno ou terceirizado (também chamado de outsourcing de desenvolvimento) também haverá uma influência direta no custo, a depender de investimentos em trabalhistas ou nos diferentes orçamentos a depender da empresa de desenvolvimento de aplicativos.

Portanto, considerando que cada aplicativo terá a sua particularidade, é difícil apontar um valor de custo que contemple a todos. Para fins de conhecimento, estes são exemplos de custos que apps podem ter:

Disparo de e-mails

O uso de e-mails é importante para os fluxos de cadastramento de usuários e recuperação de senhas, por exemplo. Cada disparo de e-mail tem um custo. Se tratando de aplicativos com poucos usuários, o consumo é ínfimo, realidade que não pode ser afirmada para apps com grande base de usuários.

O mesmo vale para disparo de SMS, como no caso da verificação de duas etapas.

Informações retiradas do site oficial da Amazon

Microsserviços

Há serviços que facilitam a abordagem arquitetônica como microsserviços, facilitando a acoplagem de componentes. 

Informações retiradas do site oficial da Amazon

Armazenamento

Uma vez que os aplicativos podem ser acessados de qualquer lugar geográfico (desde que esteja disponível na loja ou se tenha o arquivo .apk, claro), seus dados e arquivos precisam ser armazenados em nuvem para o acesso remoto. Mais do que isso, o armazenamento precisa garantir a segurança e escalabilidade.

Não à toa, o mercado constantemente aquecido e altamente requisitado é o de data centers, pois toda a estrutura apoia os softwares a entregarem bons desempenhos. Para que isso funcione corretamente também há um custo. 

Informações retiradas do site oficial da Amazon

Gateways de pagamento

Se for o caso de um aplicativo que possua pagamento in-app, será necessária a API de um gateway de pagamentos, que podem cobrar tanto por assinatura quanto por transações. 

Planos de assinatura do gateway Iugu

Conta nas lojas de aplicativos

Para manter os aplicativos online nas lojas, é necessário a assinatura tanto na App Store quanto na Play Store. A loja do Google requer uma taxa única, enquanto que a da Apple é um pagamento anual está partir de US$ 99, como descrito na imagem abaixo.

Informações retiradas do site oficial da Apple

Para que serve a manutenção de aplicativos?

Quando falamos em “manutenção de aplicativo”, o primeiro pensamento possível é direcionado para as correções, sejam os bugfix ou hotfix, o que não está errado. Contudo, a manutenção de aplicativo é bastante ampla, contemplando:

Correção de bugs

Os bugs podem surgir por diferentes motivos, sendo uma falha na lógica, uma interface que apresentou algum erro, um conflito entre APIs, dentre outros motivos. Nestes casos, é necessário o acionamento da equipe de desenvolvimento para realizar as correções. 

Para tal, o monitoramento contínuo fará toda a diferença para levantar os backlogs de correções necessários para o aplicativo entregar a melhor experiência do usuário.

Por isso, ter uma equipe disponível é fundamental para evitar problemas de usabilidade e comprometer a satisfação do usuário.

Acréscimo de features

À medida que o aplicativo avança, como sua evolução de um MVP para uma versão mais completa, novas funcionalidades precisam aparecer. Afinal, os usuários oferecem feedbacks e o movimento do mercado exige que as aplicações se mantenham atualizadas para garantir a competitividade.

Segurança

A cibersegurança é imprescindível no ambiente digital. Qualquer falha pode ser o suficiente para criar grandes problemas para as empresas e usuários. O vazamento de informações é considerado grave, inaceitável e prejudicial, como foi o caso do ataque hacker na Renner.

Para garantir a segurança digital, todos os perímetros devem ser contemplados, sendo eles os usuários, hardwares e softwares. No que tange o desenvolvimento, as boas práticas de programação são levadas em consideração para não abrir brechas.

Contudo, mesmo com boas práticas, ainda é possível haver outras falhas, como o caso de uso de serviços de terceiros.

Um exemplo é o caso do Content Management System (CMS) WordPress, cuja equipe está em constante atividade para oferecer boas experiências e também correção de falhas de segurança ou bugs quando há.

Seção de conteúdos sobre WordPress do Search Engine Journal

Suporte

Problemas em produção estão sujeitos a acontecer e somente uma equipe de suporte para resolver as questões dos usuários — que podem ser bugs ou erros específicos. Por isso, aplicativos de fintech possuem chats para atender as demandas dos usuários, as quais podem requerer uma equipe de desenvolvimento disponível.

Escalabilidade

A escalabilidade se trata do equilíbrio entre os usuários e o desempenho do aplicativo. Isto é, tornar o aplicativo preparado para um aumento no volume de usuários de forma que não comprometa seu desempenho, como foi o caso da queda da plataforma Koo, rede social alternativa ao Twitter.

Um aplicativo escalável é capaz de dimensionar seus recursos, como servidores, armazenamento e capacidade de processamento de forma que atenda às demandas dos usuários.

Neste caso, o monitoramento também é relevante, uma vez que organicamente é possível prever quando será necessária uma manutenção no aplicativo para garantir sua escalabilidade. 

Na imagem abaixo, a hospedagem que utilizamos no site da Usemobile me enviou um alerta informando que 80% da capacidade foi atingida. Assim, diante do cenário, redobrei minha atenção para tomar as medidas cabíveis para evitar problemas de performance.

“Olá, Taysa. Estamos escrevendo para informar que você usou 80% das visitas mensais do seu plano de hospedagem para Usemobile e faltam 9 dias para o período de cobrança”

Como reduzir o custo com manutenção de um app

Como a manutenção é uma constante no ciclo de vida do seu aplicativo, os custos envolvidos também. Por isso, adote as seguintes medidas para reduzir os custos com a manutenção:

Planejamento

O futuro do aplicativo já deve ser considerado na etapa de planejamento de escopo e análise de requisitos de software. É nessa fase que é definido se o app será nativo ou nativo, quais funcionalidades terá, APIs de terceiros a consumir, a arquitetura de software a ser utilizada, etc.

Todas as decisões tomadas nesse processo irão impactar diretamente na performance do aplicativo e, consequentemente, como se desencadearão as manutenções do app. Para reduzir o custeio, garanta que o planejamento seja de qualidade, assim como o desenvolvimento.

Desenvolver com qualidade

Evite economizar na hora de desenvolver o aplicativo, pois aqui o “barato sai caro”, literalmente.

Seja através do desenvolvimento interno ou terceirizado, garanta que os envolvidos tenham as habilidades técnicas necessárias. Dessa forma, as chances de se ter um código legado,  com falhas de lógica ou as ditas “gambiarras” se reduzem. Apesar do investimento ser maior, o retorno será proporcional.

Um squad ágil de desenvolvimento pode ser a melhor dos cenários tanto para o desenvolvimento do aplicativo quanto para a manutenção dele. Isso porque os squads são equipes multidisciplinares capacitadas para tocar um projeto, fazer entregas regulares, dentre outros benefícios em adotar essa formação.

Revisar as features

No roadmap do produto são previstas muitas funcionalidades, esperando pelo melhor do aplicativo. Contudo, os usuários não necessariamente irão utilizar todas. Esse excesso de features também traz um custo maior na manutenção de aplicativos.

Neste caso, o ideal é revisar o uso das funcionalidades e, se convier, eliminá-las.

Um exemplo disso foi quando o Twitter optou por acabar com os Fleets, sua versão de “story”, pois o recurso era pouco utilizado.

Twitter Fleets

Monitoramento e análise

Para que a revisão das features faça sentido, o monitoramento e análise do aplicativo precisa ser constante. Para além das features, o monitoramento também contribui com o backlog do aplicativo ao identificar bugs, crashes, gargalos de desempenho e outros problemas.

Através de softwares de monitoramento em produção como Firebase Crashlytics e constantes testes de QA fazem a diferença para detectar issues com o aplicativo.

Afinal, quanto custa a manutenção de aplicativos?

Além de considerar os custos fixos como discutido no início deste artigo, há variáveis que alteram os valores do custo da manutenção de apps.

Considerando o cenário de terceirizar a manutenção de aplicativos, a resposta é “depende”. Segundo o CTO da Usemobile, Patrick Brunoro: 

“Precisamos entender o nível de complexidade do código para saber a senioridade do time a ser alocado. Também é necessário saber qual a vazão de trabalho e quantidade de tarefas esperadas. Assim, podemos definir as horas a serem dedicadas por mês.”

Concluindo, o valor da manutenção do aplicativo depende das variáveis:

  • Senioridade da equipe;
  • Tamanho da equipe;
  • Horas mensais de dedicação;
  • Tecnologias do projeto.

Entenda quanto custaria a manutenção do seu aplicativo com os cuidados dos squads da Usemobile. Somos uma software house com 7 anos de experiência, atendendo clientes como o laboratório Sabin, Bosch e o Kumon.

Solicite seu orçamento no formulário abaixo:

Leve a potência mobile para seu negócio

Tópicos

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Posts relacionados

Estamos contratando, venha conferir nossas vagas