Chega a ser impressionante a velocidade com que a tecnologia avança, quando se trata de desenvolvimento de sites, aplicações e afins. Em 2011, a maioria dos designs de aplicativos web dependia de desenvolvedores, que trabalhavam literalmente dia e noite para fazer o código funcionar. Apenas 10 anos mais tarde, o cenário é completamente outro: basicamente qualquer pessoa com um computador e acesso à Internet pode construir um site, aplicativo ou mesmo um recurso tecnológico usando aplicativos extremamente poderosos, chamados de ferramentas low-code (baixo código ou sem código, na tradução).
Ferramentas low-code são tão poderosas que mesmo usuários sem habilidades técnicas profundas hoje em dia podem administrar uma empresa inteira online, abrir um site de e-commerce ou até mesmo um banco! Sim, parece que, daqui pra frente, o céu é o limite.
Mas o que vem a ser essa história de no-code/low-code?
É um método de programação – e também um movimento – que não envolve necessariamente programar código, mas funciona como uma espécie de interface gráfica de usuário (GUI), onde é possível usar templates, funções de arrastar e soltar, interfaces de conversação e sequências lógicas para trazer qualquer Produto Digital para a realidade.
Estamos diante da tão sonhada democratização do desenvolvimento de software, com plataformas low-code capazes de desbloquear todo o potencial que a digitalização traz para qualquer pessoa que tenha acesso a um computador ou telefone e à Internet. E, claro, também um bom projeto em mente para tornar real e chamar de seu.
É preciso ficar claro, no entanto, que ferramentas low-code não têm como objetivo “eliminar o código” ou mesmo os engenheiros de software (por óbvio). O objetivo é facilitar a vida dos programadores, ao mesmo tempo em que o “acesso a todos” é capaz de transformar praticamente qualquer pessoa em um “desenvolvedor cidadão”. Um ambiente low-code tem como característica abstrair a complexidade do código para se concentrar no design e na lógica de projeto. Em outras palavras, traz o foco para o que realmente importa no projeto: questões de negócio e design thinking.
Com essas ferramentas em mãos, as equipes de vendas, marketing, produto, operações e mesmo donos de empresas em qualquer lugar do mundo podem criar fluxos de trabalho e aplicativos sofisticados sem a necessidade de nenhum conhecimento técnico. Se, por um lado, o cenário parece revolucionário para o que está por vir nos próximos 10 anos no mercado de TI, de outro certamente estamos diante de uma grande disrupção em curso.
Em termos técnicos, low-code é um conjunto de ferramentas que os desenvolvedores podem usar para construir aplicativos em uma interface visual do tipo “arrastar e soltar” – incluindo uma user interface (UI) completa, com integrações, gerenciamento de dados e lógica.
Uma plataforma de desenvolvimento low-code normalmente engloba:
- Visual IDE (ambiente de desenvolvimento integrado) – Uma aplicação onde o desenvolvedor pode construir UI, workflows e modelos de dados de aplicações. Embora um ambiente de baixo código seja principalmente drag-and-drop, vale lembrar que muitas vezes também é possível escrever o código manualmente.
- Conectores para backend e serviços – Incluindo estrutura, armazenamento e recuperação de dados
- Ferramentas de Application Lifecycle Management (ALM) que permitem ao desenvolvedor desenvolver e fazer o debug e o deploy, bem como a manutenção do software durante o teste, a preparação e a produção.
E o que é um aplicativo low-code?
De forma bem simples, um aplicativo de baixo código é aquele desenvolvido usando uma ferramenta ou plataforma que minimiza a quantidade de código original que os desenvolvedores precisam escrever para produzir o aplicativo. A maioria das ferramentas low-code permite que os programadores implementem a lógica de negócios usando interfaces que não demandam escrita de código para serem produzidas.
Baixo código nem sempre significa nenhum código – em muitos casos, aplicativos low-code ainda requerem alguma codificação ou configuração personalizada – embora já existam algumas ferramentas low-code que reivindiquem o desenvolvimento totalmente sem código. Certamente, essa será a tendência para o futuro próximo.
Para as empresas, existem duas razões principais pelas quais optam por aplicativos de baixo código. Uma é permitir que não-programadores ou funcionários com habilidades mínimas de codificação criem aplicativos básicos; a outra é economizar o tempo de programadores mais experientes, permitindo que construam um aplicativo rapidamente usando funções e componentes pré-construídos, em vez de ter que escrever todo o código manualmente.
Já para os devs, a criação de software low-code (pode) permitir que os desenvolvedores façam mais em menos tempo – algo que oferece benefícios comerciais óbvios. A diferença é que, enquanto um desenvolvedor em um ambiente de baixo código pode simplesmente pular o trabalho repetitivo e criar um MVP para potenciais clientes, um desenvolvedor tradicional ainda está entretido com frameworks Javascript.
Importante enfatizar, entretanto, que o low-code não diminui o valor ou a importância dos desenvolvedores de software. Em vez disso, o baixo código permite que os desenvolvedores criem valor mais rapidamente, concentrando-se em experiências de usuário de alto nível – ao invés de se preocupar com tarefas técnicas enfadonhas que, por exemplo, poderiam ser automatizadas.
Pouco dinheiro para construir aplicativos
Uma variedade de organizações com recursos financeiros limitados ajudou a alavancar o desenvolvimento de software sem código com o intuito de atingir metas de negócios e oferecer experiências ao cliente que simplesmente não seriam possíveis usando os modelos tradicionais de desenvolvimento de software.
A Shelterbox é uma delas. A organização, que oferece ajuda emergencial a desastres, percebeu que precisava de uma equipe interna de desenvolvedores para expandir e responder aos requisitos organizacionais em rápida evolução – mas eles não tinham dinheiro para isso. Foi aí que uma ferramenta low-code acabou possibilitando que construíssem o aplicativo de que precisavam.
Os funcionários que prestam apoio a pacientes com deficiência de aprendizagem na Mencap contam com aplicativos para coletar informações, relatar e registrar processos, para que possam ajudar de forma mais eficiente as pessoas com deficiência – e o baixo código os ajuda a atingir esses objetivos, apesar dos recursos limitados da organização.
Low-code e teste de API
O panorama do software evoluiu rapidamente nos últimos anos. Os aplicativos estão se tornando mais dinâmicos e as empresas mais ágeis, causando uma verdadeira disrupção na maneira como as equipes DevOps conduzem testes de qualidade de ponta a ponta.
Os serviços em nuvem baseados em API fazem parte dessa nova fronteira, tornando-se blocos de construção populares em aplicações modernas. Ainda assim, as integrações exigem manutenção conforme os serviços em nuvem evoluem e lançam novas versões de seus aplicativos. Sem o teste contínuo de serviços em nuvem baseados em API, as organizações podem facilmente sofrer com mudanças bruscas e pouca usabilidade.
Existem 4 áreas cruciais que justificam um exame cuidadoso ao longo do processo de teste de API:
- Funcionalidade: A API cumpre o que promete? Ela retorna os dados corretos?
- Uptime: Qual é a disponibilidade da API? Todos os endpoints estão disponíveis em produção?
- Velocidade: Garante que as dependências da nuvem atendam aos SLAs. Qual é a latência? Existe variação no desempenho da API ao longo do tempo? Embora monitores de API como o Api.expert ajudem a agregar desempenhos do setor, eles nem sempre refletem as realidades específicas em nível de cliente. Ou seja: procure cronometrar seu próprio desempenho.
- Endpoints: Diz respeito ao papel que as APIs desempenham em presenças digitais voltadas para o cliente. Um fluxo de trabalho de ponta a ponta deve envolver API endpoints, como elas interagem entre si, e as representações visuais resultantes.
Tá, mas o que tudo isso tem a ver com low-code mesmo?
Recursos de baixo código para testes de API podem ajudar a derrubar silos inerentes ao processo de desenvolvimento, permitindo que mais pessoas participem das integrações de teste. Também é fundamental melhorar a Usabilidade dos testes de API para desenvolvedores e não desenvolvedores, com integração de ferramentas de verificação que já são utilizadas pelos desenvolvedores.
Entre as ferramentas/plataformas low-code mais conhecidas atualmente, destacam-se:
Visual LANSA
GeneXus
Zoho Creator
Creatio
Appian
KiSSFLOW – BPM & Workflow Software
Mendix
OutSystems
Salesforce Lightning
Microsoft PowerApps
AppSheet
Google App Maker
FileMaker
Conclusão
O site CIO Review avalia que a pandemia de covid-19 desencadeou “uma mudança massiva” na adoção de plataformas low-code pela simples facilidade de uso por especialistas de negócios, bem como sua compatibilidade com a nuvem e ambientes baseados na web. Diversos tipos de organizações, e em especial as agências governamentais que já implantaram tecnologia low-code viram uma transição suave para o trabalho remoto, apesar da mudança abrupta. Além disso, as organizações que buscaram se concentrar na manutenção de sistemas legados passaram por uma reviravolta, enquanto as que apostaram nas ferramentas digitais e de baixo código foram capazes não só de manter a continuidade das operações, como até mesmo melhorar – remotamente – os sistemas existentes.
O que isso significa para o futuro é que, se as organizações desejam realmente transformar seus processos e ficar à frente das tendências de mercado em seus segmentos, as lideranças devem começar a concentrar esforços nas ferramentas que funcionam. O mercado de baixo código está crescendo, e está só começando, apoiando a inovação e a transformação digital. Com o baixo código como o futuro da tecnologia, a retirada de aplicativos legados pode algum dia não ser mais necessária, pois os sistemas podem simplesmente evoluir e crescer.