Tuesday 8 October 2024

CICS (Customer Information Control System) é um sistema de processamento de transações designado tanto para atividade Online como processamento Batch. Seu objetivo é criar aplicações iterativas com o usuário através de telas. 

Este sistema permite que sejam transmitidos dados de um terminal para o computador, que estes dados sejam processados, acessem arquivos (podem ser também bancos de dados como DB2, ADABAS, VSAM, DLI, etc.) e sejam então transmitidos de volta ao terminal de origem. Pode ser executado sob os sistemas MVS, VSE, VM ou OS/2, suportando as seguintes linguagens de programação : COBOL, Assembler, FORTRAN, PL/I e RPG II. Os programas podem ser transportados de um ambiente para outro com pouca ou mesmo nenhuma alteração. 

O CICS é composto de vários módulos/programas de gerenciamento, é um sistema de dados e de comunicação de dados desenvolvido pela IBM para rodar em equipamentos IBM e compatíveis.

Existem dois níveis de codificação do CICS:

  • MACRO LEVEL que é similar ao Assembler; e Command, que é similar ao COBOL.
  • COMMAND LEVEL que é uma aplicação onde possui uma interface a nível de comando.

CICS é um sistema de comunicação de dados que pode suportar uma rede contendo centenas de terminais.

Cada programa CICS é iniciado usando um identificador de transação "TRANSACTION ID". Telas CICS são enviadas como construções chamadas "MAPAS", usando uma linguagem de programação como o COBOL. 

Uma transação é basicamente um conjunto de comandos que executam uma tarefa. Normalmente , a maioria das transações são tarefas relativamente simples, como a atualização de uma conta corrente. Executado em servidores Z IBM System, o CICS facilmente suporta milhares de transações por segundo. 

 

EXEC CICS
    SEND MAPSET(MPS1) MAP(MP1)
END-EXEC.

 

Funções do CICS

  • O CICS gerencia solicitações de usuários simultâneos em um aplicativo.
  • Embora, vários usuários estão trabalhando no sistema CICS, mas dá uma sensação de usuário que ele é o único usuário.
  • O CICS dá acesso a arquivos de dados para leitura ou atualização em um aplicativo.

 

Recursos do CICS

 CICS é um sistema operacional em si, pois gerencia seu próprio armazenamento de processador, tem seu próprio gerenciador de tarefas que gerencia a execução de vários programas e fornece suas próprias funções de gerenciamento de arquivos.

  • CICS fornece ambiente on-line em sistema operacional em lote. Os trabalhos enviados são executados imediatamente.
  • O CICS é uma interface de processamento de transações generalizada.
  • É possível ter duas ou mais regiões CICS ao mesmo tempo, como CICS é executado como um trabalho em lote no sistema operacional no back-end.
  •  

Como  todo  sistema  ele incorpora  várias  tabelas  de  controle  que ajudam a controlar os serviços solicitados.

 

Tabelas de controle do CICS

  •  TCT - Terminal Control Table - Controla os endereços dos terminais
  •  KCT - Task Control Table - Controla os serviços ativos no CICS 
  •  PCT - Program Control Table - Controla o uso dos programas 
  •  TCP - Transation Control Program - Controla as transações sob o CICS
  •  FCT - File Control table - Controla os arquivos sob CICS

 

Obs.: Atualmente o CICS é disponibilizado para outros sistemas operacionais, como o i5/OS, OS/2, AIX, Windows, Linux, dentre outros. A implementação para o sistema z/OS é de longe a mais popular e importante dentre todas. O desenvolvimento do CICS contou com o uso de métodos formais, utilizando a linguagem de especificacao Z (Zed).