A ascensão dos smartphones e a mudança do comportamento por parte de seus usuários ao longo dos últimos anos obrigaram as organizações a oferecer mais e mais soluções móveis que facilitem sua vida, desde apps que ajudam na rotina pessoal do seu dia a dia, passando pela interação com as mídias sociais, até a execução de suas atividades de trabalho. Todos os usuários querem novidade e inovação. No entanto, misturar dados pessoais e corporativos num mesmo dispositivo pode gerar muita dor de cabeça. Há desafios únicos quando se trata de entrega de aplicativos corporativos para dispositivos móveis.
O primeiro deles é em relação a questões do nível de segurança aplicado. Isso implica em não expor dados confidenciais da empresa. Dependendo da estratégia escolhida, o processo pode ser invasivo demais em relação aos arquivos pessoais do funcionário. Um exemplo muito comum acontece quando certos dados confidenciais não devem ser enviados por aplicativos, ou ainda, existir uma política de acesso que exija a todos funcionários o uso de uma senha forte, dificultando que hackers usem processos de quebra e permitam o vazamento de informações confidenciais.
Um segundo ponto importe é a fragmentação existente entre diferentes tipos de sistemas operacionais e modelos de dispositivos. Agora, combine todas essas variáveis de ecossistema à grande expectativa por parte de seus usuários.
Segundo o Xamarin Mobile Business User Survey de 2015, cerca de 65% dos usuários irão abandonar o aplicativo após duas experiências insatisfatórias, enquanto 8% deixarão de usá-lo imediatamente.
Percebemos que, para permanecerem competitivas e relevantes no mercado, as empresas precisam não só atender suas próprias expectativas, como também excedê-las e, além disso, estar a par das inovações e novas tecnologias de modo a proporcionar a melhor experiência possível ao cliente. Com certeza, é algo que ajuda as empresas a estabelecerem uma vantagem em relação ao mercado e seus concorrentes. Por isso, a estratégia das tecnologias usadas e seus processos internos devem ser muito bem planejadas.
Mas como ter excelência em um cenário tão caótico? Como entregar um produto de forma rápida se o processo interno é tão burocrático? A resposta é: DevOps.
Existem várias definições sobre o que é DevOps. Muitos entendem como uma ferramenta ou como a simples união de responsabilidade de um desenvolvedor somada à operação/infraestrutura.
Podemos classificar as práticas DevOps em quatro pilares: cultura (Transparência/ Integração/ Comprometimento); automação (Deploy/ Controle/Monitoração/ Gerência de configuração/ Orquestração); avaliação (Métricas/ Medições/Performance/ Logs e integração) e compartilhamento (Feedback/ Comunicação).
A colaboração é uma parte crítica do sucesso do DevOps e isso será possível apenas se houver confiança mútua em todas as equipes e pessoas envolvidas. Podemos afirmar que, para abraçar a cultura DevOps, é preciso que haja um forte apelo para unir pessoas e times. Promover uma atitude colaborativa entre os membros da equipe também ajuda a melhorar a confiança e empatia, possibilitando que as pessoas se sintam motivados a experimentar coisas novas. Experimentar, falhar e promover uma cultura de ciclos de feedback rápidos permitirá uma evolução contínua do grupo e, assim, a melhora dos processos internos em conjunto com a melhoria do produto.
No quesito das tecnologias que irão dar suporte ao processo, vemos que existem atualmente muitas opções de ferramentas e frameworks para construção de aplicativos móveis. Mas a multi-plataforma, de código compartilhado e alta performance, denominada Xamarin, vem ganhando o mercado de aplicativos iOS e Android.
O Xamarin foi considerado um produto visionário no Quadrante de Plataformas de Desenvolvimento de Aplicações Móveis por três anos consecutivos no Gartner e, após ser comprado pela Microsoft, os problemas e custos relacionados ao licenciamento extra deixaram de existir.
E não parou por ai. A Microsoft, por exemplo, aliou mais dois produtos importantíssimos à plataforma: o Test Cloud, que permite que um teste escrito pelo desenvolvedor possa ser executado em vários modelos de dispositivos, quantas vezes forem necessárias, reduzindo o tempo de teste e tornando possível entregar algo mais maduro para o cliente. Já o HockeyApps entra como chave-mestra para disponibilizar o aplicativo para testadores beta/alfa sem ter a burocracia das lojas de aplicativos. E mais, aliado ao SDK do mesmo, é possível ainda coletar erros e feedbacks durantes os testes.
Levando em conta a competividade, atualmente as empresas vêm buscando processos que agilizem sua entrega, atenuem seus riscos e antecipem o feedback dos usuários. É bem interessante ver como a cultura DevOps responde a esses desafios e como plataformas como Xamarin vêm amadurecendo para ajudar as empresas a suportar seus processos internos e a lançar seus aplicativos corporativos para dispositivos móveis.
Diego Cardoso, software engineer na GFT.