SOA Generation - Arquitetura SOA para Cobol/CICS/DB2
SOAG

          SOAG (Service Oriented Architecture Generator) tem com o objetivo facilitar o trabalho dos profissionais: analistas e desenvolvedores de sistemas focados na arquitetura SOA.

 

        Ao longo de muitos anos em desenvolvimento de sistemas, seus criadores perceberam que a grande dificuldade que os analistas enfrentam é transferir para os desenvolvedores todos os detalhes que envolvem a definição dos serviços, sejam elas regras de domínio, persistência, integridade, nomes de programas e códigos de mensagens entre outros.

 

        Em quase sua totalidade, estes detalhes já estão explícitos na definição do modelo de dados, seja ele apenas um ER ou um DB já existente.

 

          O SOAG expõe de forma amigável estes detalhes e também permite que o analista/desenvolvedor interajam e complementem estas informações.

 

  • Reduzir o custo no desenvolvimento de software;

  • Modernizar suas aplicações utilizando as mais modernas tecnologias;

  • Serviços com baixo nível de acoplamento e interdependência;

  • Processo 100% automatizado;

  • Interface web.

                         

                    No desenvolvimento de software, não há qualquer novidade no modo como pensamos sobre a decomposição de um aplicativo em partes componentes. É o paradigma central da orientação de objetos, das abstrações de software e da “componentização”. Atualmente, essa fatoração tende a assumir a forma de classes e interfaces entre as camadas de tecnologia e as bibliotecas compartilhadas. Em geral, uma abordagem em camadas é adotada com um repositório de "back-end", lógica de negócios de camada intermediária e uma IU (interface do usuário) de "front-end". O que mudou nos últimos anos é que os desenvolvedores estão compilando aplicativos distribuídos para a nuvem orientados pelos negócios.

           Entre as necessidades variáveis dos negócios estão:

  • Um serviço que é compilado e opera em escala para atingir clientes em novas regiões geográficas (exemplo);

  • Entrega mais ágil de recursos a fim de conseguir responder rapidamente às demandas dos clientes;

  • Melhor utilização de recursos para reduzir os custos.

          Essas necessidades comerciais estão afetando o modo como criamos os aplicativos, desta forma uma arquitetura com base em micro serviço se torna cada vez mas atraente.

 

 

                         

                         

           

                      Os objetivos do SOAG são:

  • Gerar serviços CRUD+L em COBOL/CICS/DB2  na arquitetura SOA;

  • Gerar aplicações WEB em Python.

 

           O enfoque SOA do SOAG é utilizar seus próprios serviços e também serviços corporativos.

           As palavras principais do SOAG são:

  • Simplicidade e padronização.

 

           O modelo de programação do SOAG mainframe está dividido em três camadas:

  • Módulo Mensageiro -  programa que troca mensagens com o "front end" e distribui as tarefas aos outros serviços;

  • Módulo Funcional -  programa que valida as mensagens;

  • Módulo de Persistência -  programa que persiste as mensagens no DB.

 

 

                         

           Design Monolíticos:

  • Aumento de complexidade e tamanho ao longo do tempo;

  • Alta dependência de componentes de código;

  • Escalabilidade do sistema é limitada;

  • Falta de flexibilidade;

  • Dificuldade para colocar alterações em produção.

           Design Micro Serviços:

  • Manutenção e evolução dos serviços mais estáveis;

  • Serviços com baixo nível de acoplamento e interdependência;

  • Escalabilidade do sistema;

  • Redução de custos;

  • Flexibilidade de tecnologia;

  • Facilidade de implementar alterações em produção.

           

 

 

 

 

 

 

 

 

 

 

 

 

                                      Figura 1:  A imagem demonstra um arquitetura SOA de encontro com a implementação do SOAG

                 

                 

  • Padronização de mensagens;

  • Mensagens por regras de negocio a partir de colunas de dados;

  • Importação de Meta Dados;

  • Check Lista para acompanhamento do processo;

  • Padronização de Nomenclaturas (Tabelas, Campos);

  • Criação de regras de negócios a partir de colunas;

  • Integração com ERWIN;

  • Revisão de tabelas, colunas, "primary keys", "foreign keys";

  • Nomeação de programas.

Figura 2:  Esta imagem ilustra o modulo do SOAG para padronização de mensagens na geração dos micros serviços

                         
                         

 

SOAG:

•   Windows 7 ou acima (32/64 bits);

•   Espaço no disco rígido: recomendado um mínimo de 2 GB para uma instalação completa;

•   Uma instalação completa inclui o instalador do produto SOAG (aproximadamente 1 GB) e o Web2Py (incluído);

•   Memória do sistema:  recomendado um mínimo de 4 GB;

•   Driver de conexão DB2 LUW/  DB2 ZOS.

White paper:

Porque utilizar Micro Serviços ?

Objetivos do SOAG

Design Monolítico Versus Micro Serviços

Características

Especificações técnicas