Apps – Revolucionando os sistemas corporativos
Os dispositivos móveis, como os smarphones e tablets, e seus poderosos apps, alavancaram e muito o uso da mobilidade pelos usuários e empresas.
Esse avanço tão rápido (o iPhone foi lançado em 2007) trouxe aos CIOs um grande desafio; como aproveitar o grande potencial das tecnologias mobile e converter isso em resultados reais para as empresas.
Atualmente a maioria das empresas que buscam utilizar essa tecnologia ainda não conseguiram extrair todo o potencial de que ela é capaz, até porque explorar a mobilidade é explorar todas as novas ondas tecnológicas.
Os dispositivos móveis permitem criar novas experiências de mobilidade; hoje os clientes já estão muito bem contextualizados com os conceitos de compartilhamento e sociabilidade, graças a computação em nuvem eles também não precisarem se preocupar com limites; (fisicos, culturais, de distância e por ai vai…) e com a utilização do big data temos a possibilidade de criar um maior engajamento com todos eles.
Dentro deste contexto a mobilidade nos permite desenvolver alguns conceitos e sistemas de engajamento entre os usuários. Estes sistemas podem ser voltados para clientes, parceiros de negócios e os próprios funcionários das empresas, e é aí que teremos o pulo do gato! Pois estes novos sistemas de engajamento entram como uma nova camada dos atuais sistemas corporativos, que operam basicamente o ambiente transacional das empresas.
O ponto central dos sistemas de engajamento são os apps. Eles estão se tornando uma das principais interfaces dos clientes com as organizações. Sua adoção tem sido explosiva. Em 2016 a previsão de downloads de apps é que seja alcançada a marca de 300 bilhões/ano.
E sabe o porque deste suceso todo? É que toda a complexidade está escondida do usuário final, ao contrário dos atuais sistemas cliente-servidor onde o usuário interage com uma parte significativa da complexidade dos sistemas.
Atualmente passamos por um processo de transformação dos apps voltados apenas aos usuários, aos quais podemos denominar de primeira geração, e que realizam ações isoladas dos sistemas corporativos, como encontrar algum estabelecimento ou trazer alguma informacão sobre o trânsito, para uma segunda geração, onde muitas destas ações serão integradas aos sistemas corporativos.
Não estamos dizendo que os apps com o foco nos usuários finais vão desaparecer, pelo contrário, ainda temos muita inovação pela frente, mas os apps corporativos vão se popularizar em grande escala. A partir daí, os apps começarão a ser vistos não apenas como ferramentas de produtividade individual mas chegarão ao nível de propulsores ou mesmo serem responsáveis por novos modelos de negócio das empresas, (e nem precisará ser uma startup para isso) criando novos processos, serviços ou produtos. Pode acreditar, um smartphone não é apenas um dispositivo para achar um táxi, mas uma tecnologia de alto poder transformacional.
Entretanto, este crescimento, demandado pelo contexto dos apps, gera um imenso desafio para as empresas: falta de expertise e capacitação para o desenvolvimento destes novos sistemas mobile. Conceitos como DevOps, arquitetura baseada em serviços de APIs , user-experience centric design, evolução dos apps baseados no modelo MVP (Minimum Viable Product) são pouco conhecidos pela maioria do staff de desenvolvimento das corporações.
Neste cenário os arquitetos de software devem olhar os apps de um novo ângulo, não como um anexo aos seus sistemas corporativos, mas sim como parte central de sua estratégia de criação de sistemas mais modernos, eles são componentes críticos destes sistemas. Antes de mais nada, os apps não devem ser vistos como aplicações em miniatura ou uma mera variação de uma aplicação existente que roda em um dispositivo móvel. Apps são apps, um novo tipo de programa. Assim, desenvolver apps implica em profundas mudanças nos atuais processos de desenvolvimento de sistemas.
Uma comparação simples mostra a grande diferença dos apps com os sistemas atuais. Na concepção dos sistemas atuais, como os ERPs, coloca-se o máximo de funcionalidades possíveis. Quanto mais funcionalidades, mais completo e mais “vendável” torna-se o sistema. Claro que o sistema torna-se mais complexo, com atualizações em ciclos demorados e de altos custos, eleva-se o custo de manutenções e sua operação torna-se cada vez mais complexa e custosa. E muitas vezes na prática vemos o fenômeno de “overcapacity” quando o número de funcionalidades ultrapassa a necessária para as demandas dos clientes. Que acabam ficando insatisfeitos com os custos do sistema que traz funcionalidades, que pouco ou nada agregam ao seu negócio.
Apps implicam em simplicidade. Não que sejam simples em suas entranhas, mas a complexidade é oculta dos usuários. Ora, porque o conceito embutido nos apps, simplicidade, não pode ser aplicado aos sistemas corporativos? No mundo dos apps ao invés de adicionarmos mais funcionalidades ao sistema, criamos uma coleção de novos apps, que podem atuar em conjunto, mas preservando sua simplicidade.
Outra característica presente no conceito dos apps é que eles por definição são baseados no processo de design onde o foco é o usuário e não o processo. Por exemplo, um ERP automatiza um determinado processo e mesmo se diferentes usuários, com diferentes funções na execução do processo o usam, são tratados da mesma forma. No conceito onde temos o usuário como foco a pessoa e sua função, ou o contexto em que ele está operando o serviço, é o que conta. Para isso, claro, é necessário que o app utilize todo o seu potencial tecnológico, como geolocalização, acesso a informações contextuais (big data e social) e assim por diante. O processo com o usuário em foco, considera o onde e o como do engajamento do usuário com o app.
Podemos entender que a principal diferença está que no processo atual o propósito do sistema seja definido pelo conjunto de funcionalidades. Quanto mais funcionalidades, mais usuários o usarão – embora cada um use apenas parte destas funcionalidades. Com o foco no usuário é o oposto. Existe um objetivo único para o app e o usuário o utiliza dentro do conceito de onde e como pretende utilizá-lo.
Provavelmente as futuras arquiteturas de sistemas corporativos serão baseadas em serviços ofertados via APIs e com sistemas de engajamento trabalhando ao seu redor.
Apps, APIs, DevOps, MVP e “ people-centric” provavelmente serão o paradigma de desenvolvimento nos próximos anos. Embora ele deva ser percorrido rapidamente, ainda temos um longo caminho pela frente. Assim, acreditamos que todos que estejam envolvidos com arquitetura e desenvolvimento de sistemas devam começar (aliás, já deveríam) a criar estas novas soluções de negócios.
Os apps vão dominar o mundo!