Aplicativos Legacy apresentam um alto custo de manutenção e evolução, mas fornecem serviços que são atualmente necessários.


Essa situação dificulta muito a transformação digital das organizações, devido às características de sua infraestrutura de TI, que geralmente é uma mistura heterogênea de aplicativos escritos em diferentes linguagens em múltiplas plataformas. Além disso, por sua natureza, eles não são adequados para implantação na nuvem e geralmente exigem uma infraestrutura específica.

Dado que as organizações não podem esperar pelo ritmo exigente em que o mercado evolui, é necessário modernizar-se gradualmente em um ambiente onde o sistema Legacy pode coexistir com o novo sistema até que seja completamente substituído. O futuro é claro: o custo nas infraestruturas do Legacy é muito maior do que o custo dos sistemas modernos, devido aos mecanismos de automatização dos últimos.

Nosso objetivo é transformar os sistemas Legacy, adaptando-os às tendências da nova era digital, auxiliando nossos clientes em seus processos de transformação tecnológica. Construímos nosso software com arquiteturas modernas, novos processos de desenvolvimento e um novo modelo de organização dinâmico e ágil, executando grandes projetos com forte carga tecnológica.

Propomos sistemas baseados em tecnologias, ferramentas e frameworks de referência na atualidade e evolução de sistemas Legacy, aplicando os mais atuais princípios e padrões de desenvolvimento de software mais atuais, para abordar uma construção ou migração gradual desses sistemas; garantindo a qualidade e segurança do produto através da aplicação de automações e uma ampla gama de métodos de análise de software estático e dinâmico.


À medida que as empresas adotarem essa nova realidade de TI, poderão oferecer novas experiências aos clientes, em maior velocidade e com um produto de maior qualidade, tanto nos novos sistemas de que necessitam quanto nos sistemas Legacy que estão sendo migrado.

O caminho para a modernização digital


Como é...

Aplicativos monolíticos com base em tecnologias e padrões legacy com alto grau de acoplamento que dificultam sua evolução.

  • Baixa UX.
  • Arquitetura monolítica.
  • Pouco flexível e escalável.
  • Implantações custosas.
  • Dificilmente sustentável.
  • Rendimento por recursos.
  • Alto custo.
  • Bloqueios no desenvolvimento.

Orientação a produto, funcionalidades monolíticas:

Arquitetura e processos com base em produtos e serviços.

Visão do cliente estática e fragmentada (com base na agregação de produtos).

Modelo Multicanal com silos.

Com base em transações e servidores dedicados.

Nossa proposta...

Aplicativos desacoplados que oferecem a coesão necessária para integrar uns aos outros e entre componentes externos, melhorando o UX, com desenvolvimentos e implantações rápidas e leves.

  • Melhora de UX.
  • Arquiteturas MSA, EDA, RTP.
  • Manutenção simples.
  • Flexível e escalável.
  • Implantação contínua.
  • Com base em serviços (PaaS).
  • Custos bem ajustados.
  • Paralelização de esforço.

Orientação ao cliente, funcionalidades atômicas:

Arquitetura e processos centrados no cliente.

Visão do ciclo de vida do cliente holístico, em tempo real e enriquecida com dados externos.

Modelo Omnicanal (holistic touchpoints).

Com base em interações e eventos.

Características Arquitetônicas


Modular e Escalável

Possibilidade de implementação por partes no cliente. Preparado para qualquer aumento no tráfego e armazenamento de informações.

Convivência

Permite a coexistência da plataforma atual e a nova. Teste A/B usando um cookie para controlar o tráfego que vai para cada plataforma durante a coexistência de ambos.

Coexistência

Coexistência com sistemas atuais através de conexões com estes via FTP, MQ, SOAP ou REST.

Reutilização

Aproximação a um microsserviço por operação (domínio) com o objetivo de reutilizá-lo através da comunicação REST.

Cross

Front-End e Back-End são desacoplados de forma a facilitar a coexistência de diferentes interfaces (look & feel) e a migração de cada uma dessas partes sem afetar o resto.

Autenticação

Autenticação e autorização com base no protocolo oAuth2, JWT na API Gateway. Também nos adaptamos a mecanismos próprios (cookie corporativo, token corporativo, etc.).

Performance

Utilizamos tecnologias de coaching, distribuídas ou não, para melhorar os tempos de resposta e processamento.

Ambientes Locais

Oferecemos ambientes locais em face da instabilidade ou indisponibilidade do ambiente do cliente devido a tarefas como manutenção do sistema.

Adaptável

Codificamos o software e agilizamos a infraestrutura de forma que o impacto seja minimizado em face de mudanças nos requisitos.

Open Source Technologies & Frameworks


Apostamos em frameworks Open Source que são referência no setor de TI e cujo uso é estendido para reduzir custos e facilitar a busca por talentos.

Open Source collaborative communities.

Spring Ecosystem, Hibernate, Struts, Lombok & Others.

Back-End Frameworks

Contamos principalmente com a potencia do ecossistema Spring, que fornece módulos para qualquer necessidade relacionada a software (MVC, SpringBoot, Webflow, REST, SOAP, Security, Websockets, etc.), usando como complemento Frameworks e bibliotecas como o Hibernate (ORM) , Strunts, Lombok, etc.; e outros mais específicos para testes como Mockito, H2, JUnit, etc.

Angular, Angular JS, Backbone, React, etc.

Front-End Frameworks

Uso de Frameworks Open Source que facilitam a arquitetura do SPA, como Angular JS, Angular, Backbone, React, KOA, etc. Aumentam o nível de abstração em Aplicativos Web, isolando a lógica do aplicativo por meio de modelos de dados e visualizações. Além disso, fornecem componentes para facilitar a comunicação (AJAX, REST) e para automatizar os testing (Karma, Jasmine).

QA & Continuous Delivery


Aplicamos os padrões e testes automatizados para garantir a qualidade do produto e sua adaptação aos regulamentos OWASP relacionados à Cibersegurança, e fazemos isso de forma integrada em um circuito de integração e implantação contínua que garante ter a versão mais recente do software em poucos minutos.

Quality Assurance

Especializada no desenvolvimento de softwarecom os mais altos padrões de qualidade.

Garantimos que o software que desenvolvemos está em conformidade com todos os padrões definidos por nossa organização, realizando controles durante todo o ciclo de vida:

Testes unitários e de integração em todas as etapas.

Ferramentas de QA para medir a qualidade do código e monitorar sistemas.

Automatizamos os testes, reduzindo as tarefas manuais e o custo extra associado.

Continuous Integration

Potencializamos e agilizamos o processode desenvolvimento e entrega de software.

Realizamos integrações automáticas de um projeto com a maior frequência possível em poucos minutos, através da implementação de processos, técnicas e ferramentas de integração contínua.

Encontramos e solucionamos erros em qualquer estágio.

Garantimos e melhoramos a qualidade do software que fornecemos aos nossos clientes.

Reduzimos drasticamente o tempo de validação e promoção do novo software desenvolvido.