Skip to content
A.R.Lepton, simplificando o desenvolvimento de microsserviços

Simplifique o desenvolvimento de microsserviços com o A.R.Lepton

Atualmente, ter a capacidade de desenvolver aplicações robustas em microsserviços é um diferencial competitivo. A busca por eficiência e inovação tem se tornado cada dia mais essencial. Em um ambiente empresarial dinâmico, alcançar a excelência no desenvolvimento de software não depende apenas de uma equipe talentosa; mas também demanda ferramentas que facilitem a integração de atividades e promovam a padronização nos processos de criação de sistemas.

É nesse cenário desafiador que surge uma solução: A.R.Lepton. Ela foi criada com o propósito de simplificar o desenvolvimento em microsserviços, permitindo desenvolver rapidamente aplicações robustas. Com uma interface gráfica amigável, permite que equipes de desenvolvimento construam aplicações em poucos instantes, mantendo a integridade dos padrões de arquitetura de software. Além disso oferece uma stack de desenvolvimento e um pipeline de DevOps customizados, ajustados às necessidades específicas de cada projeto. Tudo isso porque desenvolver em microsserviços não precisa ser complicado. 

Prossiga com a leitura do nosso artigo e conheça tudo o que a Plataforma A.R.Lepton, seu ecossistema e os benefícios que ela pode oferecer.

 

Desafios do cenário de TI

 

Primeiramente é importante falar sobre os desafios que a Tecnologia da Informação (TI) enfrenta atualmente. Estes são caracterizados pela crescente complexidade e constante necessidade de eficiência. Essa dinâmica é acentuada pela pressão por entregas rápidas, visto que a incapacidade de acelerar o desenvolvimento pode não apenas resultar na perda de oportunidades de negócios, mas também em obstáculos significativos para se adaptar às diversas demandas do mercado.

É possível destacar também a importância de conciliar o esforço técnico com uma compreensão aprofundada da verba do cliente. Posto que os desafios comuns no processo de desenvolvimento incluem a falta de visão da criticidade do sistema a ser construído, reuniões preliminares realizadas sem uma compreensão robusta da infraestrutura do cliente e custos associados às horas dedicadas a casos de uso reaproveitáveis ​​entre projetos.

Finalmente, temos o desafio de buscar profissionais qualificados. Essa demanda tem se tornado um obstáculo significativo, limitando a capacidade das empresas em responder de maneira ágil e eficaz às crescentes necessidades de desenvolvimento. 

Portanto, considerando todo esse cenário, é fundamental que as empresas consigam encontrar soluções inovadoras e eficientes que permitam a superação dos desafios de TI.

 

Sobre a Plataforma A.R.Lepton

 

A solução A.R.Lepton foi desenvolvida pela equipe A.R.Phoenix e representa uma revolução para os desenvolvedores que precisam utilizar tecnologias modernas e atuais. Ela foi projetada para simplificar a construção de aplicações robustas em microsserviços, a fim de oferecer uma abordagem ágil e eficiente para o desenvolvimento de soluções tecnológicas.

 

Principais recursos

 

  1.       Construção em microsserviços

Permite que os desenvolvedores utilizem tecnologias modernas do mercado para criar aplicações robustas e escaláveis.

  1.       Dashboards de gestão poderosos

Apresenta dashboards intuitivos que facilitam o gerenciamento eficiente das aplicações desenvolvidas na plataforma.

  1.       Autorrecuperação inteligente

Incorpora um sistema de autorrecuperação inteligente das aplicações, proporcionando assim confiabilidade e resiliência ao ambiente de desenvolvimento.

 

Principais benefícios

 

  1.       Agilidade no desenvolvimento

Agiliza o processo de construção de aplicações em microsserviços. Assim sendo, os desenvolvedores podem focar na inovação, sem perder tempo com complexidades operacionais.

  1.       Simplicidade e eficiência

Oferece um ambiente de desenvolvimento simples e eficiente, com o intuito de proporcionar uma experiência fluida para os desenvolvedores.

  1.       Confiança e Resiliência

Garante a confiança e resiliência das aplicações, reduzindo o impacto de possíveis falhas, com o sistema de autorrecuperação inteligente.

 

Como destaca Robert Cecil Martin, mais conhecido como Uncle Bob, uma figura proeminente na comunidade de desenvolvimento e um dos mentores do Manifesto Ágil de 2001, o maior desafio no desenvolvimento de software está na manutenção. Em outras palavras, um código bem escrito desde sua primeira versão pode funcionar de forma eficaz, evitando prejuízos significativos.

Em resumo, a plataforma A.R.Lepton, capacita a equipe de desenvolvimento no enfrentamento dos desafios da construção de aplicações em microsserviços. Assim sendo, com um simples clicar no botão “Gerar”, o projeto é criado e configurado automaticamente, permitindo que se inicie o desenvolvimento da lógica de negócio. Além disso, existe a versatilidade de poder importar o projeto para qualquer IDE de sua preferência, como STS, Eclipse ou IntelliJ.

 

Vamos para a demonstração da plataforma!

 

A.R.Lepton e suas funcionalidades

 

O A.R.Lepton permite criar um sistema completo com interface web e microsserviço. Ele seguirá um padrão que incorpora algumas técnicas, por exemplo: Clean Code, Clean Architecture e outras boas práticas de desenvolvimento, conforme definido pela arquitetura.

Em sua tela principal, é possível determinar qual tipo de projeto em Springboot deseja construir, e, até mesmo gerar um sistema web em React.

 

Vamos ver como?

 

Nesta versão do A.R.Lepton utilizaremos o Maven como gerenciador de dependência, sendo assim, os primeiros dados preenchidos serão o Group ID, Artifact ID e Version.

 

Plataforma A.R.Lepton - midia 1

Figura 1 – Informações Básicas

 

 Na aba seguinte deve-se informar qual o tipo de projeto será criado. Existem 3 tipos de projetos que poderão ser gerados, são eles:

 

FullStack – Neste será gerado um projeto completo, de acordo com as configurações preenchidas, com Springboot e React. Contempla um escopo de soluções reutilizáveis para inúmeras solicitações de clientes, como: tela de login, cadastro de usuários, configuração de permissões de perfis e funcionalidades, envio de e-mails, autenticação 2FA, entre outros.

Padrão – Será gerado um projeto Springboot de acordo com as configurações preenchidas. Um exemplo de CRUD completo utilizando as boas práticas de desenvolvimento, sem nenhum protocolo de segurança e autenticação adicionados.

OAuth2 – Neste tipo, também será gerado um projeto Springboot de acordo com as configurações preenchidas. Um exemplo de CRUD completo utilizando as boas práticas de desenvolvimento, com o protocolo de autorização oAuth2 configurado. Desse modo permite que uma aplicação se autentique em outra através de um token de segurança.

 

Plataforma A.R.Lepton - midia 2

Figura 2 – Tipos de Projetos

 

Projeto FullStack

 

Proposta

Este modelo surgiu para resolver alguns grandes problemas recorrentes no início de um projeto.

Reduzir o custo do desenvolvimento, repassado para o cliente, em casos de usos recorrentes. Tais como: login, logout, cadastro de usuário, esqueci a senha, primeiro acesso, envio de token por e-mail, autenticação de 2 fatores, além de controle de permissões de perfis de usuários em funcionalidades. Todos estes casos de usos já estarão prontos para uso após realizar o download pelo A.R.Lepton Generator.

Entrega rápida de um produto agregado ao cliente, isso já na primeira semana de Sprint. Como resultado, será possível realizar entrega para a equipe de DevOps, que poderá subir no cluster de DEV, QA, acelerando os testes integrados do usuário.

Escolher templates web pré-definidos, reduzindo o custo sem a necessidade de uma etapa de UX.  Para isso utiliza a tecnologia de mercado como o Material UI para desenvolver os templates. Entretanto, caso seja necessário atender aos padrões de cores de um cliente, uma simples configuração em CSS poderá ser realizada.

Desenvolver casos de uso específicos de negócio a partir da primeira semana de trabalho. Sem dúvida, considerando a experiência vivenciada com a plataforma, todo o time ganha aproximadamente 2 semanas de trabalho. De modo que há uma redução significativa de custos.

 

Configurações iniciais

 

Ao definir o que será utilizado neste modelo, algumas opções serão abertas para a inclusão de informações, são elas:

 

  • E-mail Administrador:  O primeiro usuário do sistema, associado ao perfil “admin” com acesso a todas as funcionalidades. Ao subir a aplicação, este usuário receberá um e-mail em sua caixa de mensagem, com sua senha criptografada. Como resultado, a partir desse momento está tudo pronto para entrar no sistema.
  • Timezone:  Define-se o fuso horário utilizado como referência.
  • Expiração do Token (segundos):  Tempo que o sistema utilizará para expirar o token de um usuário logado no sistema.
  • Expiração do Refresh Token (segundos):  Tempo em segundos que o sistema utilizará para expirar o token do refresh.

 

Plataforma A.R.Lepton - midia 3

 

 Características gerais do projeto FullStack

Neste modelo, um sistema completo é implementado, incluindo um algoritmo próprio de segurança para geração de Token. Além disso usa criptografia e proteção de endpoints via Request Header.

 

Projeto Backend Padrão

 

Proposta

A ideia deste modelo surgiu com o mesmo propósito do Spring Initializr, embora gere um projeto somado a todas as configurações escolhidas na interface gráfica do A.R.Lepton Generator. Um projeto Springboot é gerado usando boas práticas, exemplo de CRUD pronto com tudo configurado, bastando apenas subir a aplicação.

 

Plataforma A.R.Lepton - midia 4

 

Característica geral do projeto Backend Padrão

Este modelo gera um projeto sem segurança, para quem desejar desta forma.

 

Projeto Backend OAuth2

 

Proposta

Como no modelo anterior, esse tipo também surgiu com o propósito do Spring Initializr, embora, gerando um projeto somado a todas as configurações escolhidas na interface gráfica do A.R.Lepton Generator. Um projeto Springboot é gerado usando boas práticas, exemplo de CRUD pronto com tudo configurado, além de utilizar um algoritmo de autorização determinado pelo usuário, como pode ser visto na imagem abaixo.

 

Plataforma A.R.Lepton - midia 5

 

 

Na aba seguinte é necessário informar qual Container e porta será utilizada.

Plataforma A.R.Lepton - midia 6

 

 

Na próxima aba é possível escolher qual Banco de Dados, Cache, NoSql, Mensageria, Swagger e Multitenancy* quer que o projeto seja configurado.

Plataforma A.R.Lepton - midia 7

 

 

Aqui algumas opções foram disponibilizadas pelo time de arquitetura, confira as opções em:

Database:

  • Oracle
  • PostgreSQL
  • MySQL

Cache:

  • Redis
  • Caffeine

NoSQL:

  • MongoDB

Mensageria:

  • Kafka
  • RabbitMQ
  • Documentação de API com Swagger.
  • *Multitenancy – quando escolher o tipo de projeto FullStack.

 

Multitenancy

O termo multi-tenancy é aplicado ao desenvolvimento de software, a fim de indicar a arquitetura na qual, uma única instância em execução da aplicação atende simultaneamente a vários clientes. Essa arquitetura é muito comum em soluções Saas (Software as a Service) para o isolamento dos dados do cliente.

Logo que esta opção é escolhida, 2 campos serão abertos para a incluir informações, são eles:

 

  • Tenant

Neste campo é possível definir o primeiro tenant (cliente) a ser utilizado, como por exemplo, o domínio “arphoenix.com.br”. 

O projeto gerado pelo A.R.Lepton Generator criará uma funcionalidade para gerenciamento dos tenants, como resultado, ela poderá ser manuseada pelo perfil admin.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

  • Tipo de Estratégia

Assim também, neste segundo campo é possível definir qual estratégia será usada para o multitenancy, Schema ou Database.

Database: Cada tenant tem seu próprio banco de dados isolado dos outros tenants.

Schema: Banco de dados compartilhado, separado por schema. Cada tenant tem um schema dentro de um banco de dados compartilhado entre os tenants.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

CORS

Esta próxima aba foi desenvolvida para solucionar o problema de comunicação entre frontend x Backend, o CORS.

Fazendo uso desta interface, é possível adicionar todas as origens necessárias para acessar o microservice. de tal forma que o projeto que vai configurar automaticamente as urls passadas no application.YML

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

SMTP

A configuração dos dados de SMTP são realizados neste quadro.

Estes dados são obrigatórios quando se utiliza o modelo Projeto FullStack, pois os envios de e-mails de criação de usuário e esqueci minha senha estarão funcionando.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

Keycloak

Nesta aba é possível configurar o Realm, URL, Cliente ID e Client Secret do Keycloak.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

Docker

Se acaso possua um Docker Registry, será possível informar nesta seção, junto com o Docker Namespace.

 

Plataforma A.R.Lepton - midia 13

 

Kubernetes

Caso possua um cluster Kubernetes, poderá informar nesta seção e o projeto vai se configurar automaticamente com as informações passadas.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

 

Gerando Microsserviços

 

Após configurar o projeto, finalmente chegou a hora de gerar o microservice clicando no botão gerar. Caso o tipo de projeto escolhido seja o FullStack, iniciará o download do template em React juntamente com o Backend em Springboot.

 

A.R.Lepton simplificando o desenvolvimento de microsserviços

 

E neste momento basta subir o Backend localmente, ele vai receber o path “http://localhost:8080/” (a porta que digitou) e no frontend alterar o arquivo .ENV para informar o path do Backend.

 

Pronto! Sistema local funcionando.

 

 

Benefícios do A.R.Lepton

 

  • Agilidade

Todo projeto gerado pela plataforma é impulsionado por uma ampla gama de scripts que facilitam a implantação instantânea no ambiente Cloud da Microsoft. Portanto, desde o momento inicial até a execução no ambiente desejado, o processo é ágil e eficiente.

  • Velocidade

Um projeto A.R.Lepton é cuidadosamente curado com ferramentas que possibilitam integração e execução imediata, dessa maneira é possível eliminar a necessidade de configurações iniciais demoradas.

  • Padronização

Ao incorporar boas práticas, os projetos desenvolvidos seguem estruturas padronizadas. Por certo esta ação acelera o desenvolvimento, além de assegurar um nível elevado de manutenção no futuro, garantindo a consistência e a eficácia contínua.

  • Baixa curva de aprendizado

Apesar de envolver diversas tecnologias, a plataforma foi idealizada para garantir uma baixa curva de aprendizado e um ambiente inclusivo, com acessibilidade. Sendo assim, os desenvolvedores menos experientes se adaptam rapidamente e utilizam a ferramenta de forma eficaz. Enquanto atendem às necessidades do negócio, continuam a evoluir profissionalmente.

 

 

Porque escolher o A.R.Lepton

 

O A.R.Lepton é um produto que não somente atende, mas redefine as expectativas, permitindo que as empresas enfrentem os desafios do desenvolvimento de maneira ágil e eficaz. A plataforma é a solução completa para desenvolver aplicações robustas em microsserviços, com confiança.

Certamente que ao adotar esse produto no seu negócio, sua equipe ganha a agilidade necessária para enfrentar os desafios da era digital, acelerando o processo de construção e manutenção de aplicações. A partir de uma interface gráfica amigável permite que equipes construam aplicações em poucos instantes, respeitando os padrões de arquitetura de software e integrando-se perfeitamente a stacks de desenvolvimento e pipelines de DevOps personalizadas.

Sendo assim, prepare-se para uma jornada de desenvolvimento simplificada e eficiente, onde a inovação encontra a padronização e impulsione sua empresa já!

Fale agora mesmo com um de nossos especialistas  Clique aqui

Continue sua leitura!

Além do hype: Explorando o impacto real da IA

Além do hype: Explorando o impacto real da IA

A inteligência artificial (IA) se tornou um termo presente desde artigos científicos até conversas casuais. Mas o deslumbramento em torno desse assunto encobre a realidade prática da tecnologia e os…
Descubra o framework ideal para o seu projeto

Descubra o framework ideal para o seu projeto

Construir um projeto pode ser comparado à construção de uma casa. Assim como um bom pedreiro precisa de ferramentas adequadas para erguer uma estrutura sólida e segura, o sucesso do…
Otimização de Banco de Dados

Otimização de Banco de Dados

Bancos de dados são essenciais para o funcionamento de qualquer sistema ou aplicação que armazene e manipule dados. No entanto, mesmo os bancos de dados mais bem projetados podem apresentar…

Planejamento

O planejamento do sprint é um evento no scrum que inicia o sprint.

O objetivo desse planejamento é definir o que pode ser entregue no sprint e como esse trabalho vai ser alcançado.

O planejamento do sprint é feito em colaboração com toda a equipe Scrum.

Desenvolvimento

Desenvolvemos seu projeto em seu ambiente ou em nossas instalações, com profissionais sob sua gestão, sob a nossa, ou compartilhada, com o uso do Outsourcing.

Todo o acompanhamento ocorre a partir de metodologias, frameworks e ferramentas de gestão participativa no desenvolvimento da solução.

A partir deste processo, temos a versão Beta para testes.

Nesta etapa, realizamos a documentação das soluções, inclusive as já existentes.

As entregas são sempre acompanhadas de descritivos funcionais e técnicos, possibilitando a compreensão da solução e sua divulgação.

Homologação

Nossos analistas de qualidade agregam valor final à sua solução, garantindo a superação do resultado esperado.

Produzimos roteiros e evidências de testes que auxiliam no processo de validação do cliente.

É na etapa da homologação, que ocorre a comprovação, pelo cliente e demais partes interessadas, de que o produto resultante do projeto de software atende aos critérios exigidos.

Revisão

Nessa etapa lidaremos com a Sprint Review.

Ou seja, validaremos as entregas da equipe e verificaremos se os critérios estabelecidos no planejamento foram executados.

É o momento de coletar os feedbacks do que a equipe construiu.

Em outras palavras, essa etapa pode ser entendida como uma conversa entre a equipe e as partes interessadas sobre como melhorar o produto.

No fim de cada Sprint, o time se reúne para falar sobre o processo.

Retrospectiva

A etapa de retrospectiva é como um ritual de avaliação do Sprint que acabou de se encerrar.

Nessa reunião, o Time Scrum considera o que foi bom e o que deve ser melhorado, traçando planos de ações em busca da melhoria contínua do processo.