Whitepapers

GeneXus e Inteligência Artificial

GeneXus e Inteligência Artificial têm trabalhado juntos desde 1984 em nossos laboratórios, construindo e permitindo que GeneXus evolua para mantê-lo sempre atualizado.

A gênese de GeneXus

Desde o início, em 1984, a Inteligência Artificial tem desempenhado um papel fundamental na construção de GeneXus.

Nosso objetivo inicial era "automatizar tudo o que é automatizável". Como fazê-lo? Dando-lhe a inteligência para realizar automaticamente funções cada vez mais importantes, como, por exemplo:
 
  • Extrair e sistematizar o conhecimento contido nos dados, fórmulas, regras e outros elementos das visualizações de dados.
 
  • Construir automaticamente o modelo de dados normalizado.
 
  • Permitir ao desenvolvedor definir redundâncias no banco de dados e escrever automaticamente as regras adicionais necessárias para manter essas redundâncias.
 
  • Gerar e manter automaticamente para as plataformas escolhidas (Hardware, Sistemas Operacionais, Sistemas de Gerenciamento de Banco de Dados, Linguagens de Programação, etc.):
    • Programas de criação de banco de dados.
    • Programas de reorganização de banco de dados (estrutura e conteúdo).
    • Programas de aplicativos, apps, etc.

Desde o seu lançamento em 1989, GeneXus tem evoluído muito, por um lado melhorando-se e, por outro, sempre suportando todas as plataformas mais importantes.

Também desde o início surgiram questões que nos colocamos e que, sobretudo, os clientes e prospects se colocaram: Qual é o limite? O que GeneXus pode e o que não pode fazer? Qual tem sido o resultado?

Nesses 30 anos, nossos clientes, nossos parceiros e nós temos enfrentado uma realidade cada vez mais crescente, sempre mutável e muito mais exigente.

Hoje são cerca de 9000 clientes distribuídos em mais de 50 países e muitas centenas de parceiros cujo negócio é desenvolver com GeneXus seus próprios produtos e/ou soluções customizadas para seus clientes. Que tipo de soluções? O necessário em cada caso. De que tamanho? Com qual regime transacional? Para qual tamanho de clientes? Geralmente são sistemas ...

O que podemos dizer sobre eles? A variedade é incalculável, infinita. Queremos apenas dizer que, por exemplo, existem clientes GeneXus que possuem enormes sistemas em perfeito funcionamento com, por exemplo, várias centenas de milhões de instruções e que, em termos reais, seria impossível desenvolvê-los manualmente, devido aos seus custos em dinheiro, tempo e introdução de erros.

Mas então qual é o limite? Que problemas podemos resolver? Até agora todos os nossos clientes enfrentaram, mas alguns dirão que o acúmulo de sucessos não prova generalidade.

Se com GeneXus podemos descrever algo bem, GeneXus pode gerar e manter automaticamente tudo o que for necessário.

Mais uma vez: qual é o limite? O limite é estabelecido pelos humanos, o limite é muito mais em não se motivar do que em não poder! O limite é a nossa capacidade de compreender e representar bem a realidade!

O céu é o limite!


A evolução de GeneXus

Desde o início construímos os mecanismos para que o uso de GeneXus fosse Future-proof, e desde o lançamento, para tudo o que conseguimos descrever bem, GeneXus gera e mantém automaticamente tudo o que é necessário (Bancos de Dados, Programas de todos os tipos, etc. )

GeneXus trabalha com conhecimento puro, sem qualquer conotação física e nenhuma de suas descrições se baseia em elementos da tecnologia de execução.

Só usamos a plataforma durante o tempo de geração e execução.

Por que GeneXus está preparado para o futuro?

Quando algum destes elementos muda, GeneXus se modifica de acordo (é nossa responsabilidade fazê-lo).

O conhecimento acumulado pelo cliente via GeneXus durante o processo de desenvolvimento da aplicação permanece válido e não necessita modificações.

Então, o que GeneXus faz é, tomando esse conhecimento e sua própria atualização, gerar automaticamente a nova versão executável do sistema.

Em suma, GeneXus não se separa da Inteligência Artificial porque está incluída em suas raízes e em sua essência.

Nosso uso de Inteligência Artificial começou com GeneXus, mas não termina com GeneXus.

Em 1985, quando demos os primeiros passos, uma pluralidade de empresas com muito bons recursos humanos e financeiros estavam desenvolvendo “Sistemas Especialistas”, principalmente para áreas de diagnóstico, utilizando, como nós, métodos e ferramentas de Inteligência Artificial

Todos nós que estavámos inseridos nessa carreira recorremos aos conhecimentos proporcionados por especialistas no domínio do problema a que se pretendía resolver.

Parecia uma boa abordagem. Houve sucessos iniciais. Mas rapidamente, passou para um terreno de dificuldades crescentes, onde os custos subiram muito e os resultados esperados não foram alcançados.

Vimos claramente o desafio, porque os especialistas no domínio do problema (construção de sistemas comerciais) também éramos Nicolás e eu.

Concluímos que esta abordagem é útil apenas para sistemas especialistas muito pequenos, porque tem um grande problema: o conhecimento dos especialistas humanos é limitado e não sem subjetividades.

Não é um bom caminho! O conhecimento deve ser extraído, deve ser retirado dos dados! Em 1985, mudamos para essa nova abordagem.

O que aconteceu com os outros? Alguns continuaram tentando, outros faliram, outros pararam para pensar, para buscar outras abordagens.

Em 1989 lançamos no mercado a primeira versão de GeneXus. Era uma versão espartana, mas fazia o essencial: por tudo o que conseguimos descrever bem (que ainda não era 100%), GeneXus gerava e mantinha automaticamente os elementos de execução necessários.

De forma incremental, temos vindo a melhorar GeneXus, adaptando-o sempre às plataformas de execução mais avançadas disponíveis e sem nunca perder de vista o nosso propósito: automatizar tudo o que pode ser automatizado.


GeneXus hoje

Tudo tem mudado muito nesses 30 anos. Os sistemas são diferentes, eles precisam ser muito mais complexos internamente, ser muito mais simples para os usuários, são muito mais críticos e tudo é muito mais urgente.

O tempo passou, foram cerca de 20 anos de obscuridade para Inteligência Artificial. E nos últimos 15 anos alguns grandes players do mundo ocidental (Google, IBM, Microsoft, SAP, Amazon, etc.) e outros do resto do mundo, principalmente da China, começaram a obter grandes sucessos nas áreas de Machine Learning e Deep Learning.

De alguma forma, nossos caminhos convergiram. Hoje todos nós extraímos ou “arrancamos” o conhecimento contido nos dados!
O mercado de pesquisa profunda em Deep Learning é reservado a empresas de grande porte, devido ao enorme investimento em recursos humanos e recursos financeiros necessários para participar dele.

Mas, será que essas empresas, por si só, atenderão a um mercado enorme e variado, formado por todos os tipos e tamanhos de empresas?

GeneXus possui uma tecnologia única muito avançada para a construção e suporte de sistemas comerciais. Muitos de nossos clientes precisam adicionar a esses sistemas componentes de Inteligência Artificial. Muitos desses componentes são bastante simples, outros são bastante complexos.

Alguns de nossos clientes nos têm solicitado que GeneXus construa os componentes de Inteligência Artificial necessários para agregar aos nossos sistemas GeneXus. O primeiro desses clientes deseja que construamos esses componentes, conforme o caso, usando o software de inteligência artificial da SAP, IBM, Microsoft, Google e Alibaba.

E estamos nisso.


Algumas reflexões finais

Alguém dirá "Que coisas diferentes fazem essas pessoas!"

Por outro lado, utilizam a Inteligência Artificial como algo essencial, como parte da “alma” de GeneXus.

Por outro lado, adicionam componentes de Inteligência Artificial para atuar no tempo de execução nos sistemas de seus clientes.

É onde estamos hoje! Somos engenheiros "solucionadores de problemas"! O que faremos no futuro? O que nossos clientes precisam.

Há, porém, coisas que não mudam e, com alegria, podemos constatar que aquele propósito com que começamos a trabalhar há mais de 30 anos continua a ser o que nos orienta no nosso dia a dia: “Simplificar o desenvolvimento de software, automatizando tudo o que pode ser automatizado”.