Gerenciamento de Módulos e Customizações

Qualidade em Software

A qualidade do software é nos dias de hoje uma grande preocupação das empresas de TI, a escassez de profissionais qualificados e os problemas como a dificuldade de padronização dos processos de desenvolvimento são apenas alguns itens que potencializam esta preocupação; Proponho aqui alguns questionamentos sobre o ambiente existente hoje nas organizações:

  • Onde estão armazenados os módulos referentes a sua última versão implantada, e ou homologada?
  • Qual o nível de simplicidade para o gerenciamento das manutenções de seu software?
  • Existe a possibilidade da perda de algum fonte ou do mesmo estar desatualizado?
  • Qual o esforço que tenho despendido para executar um controle manual de minhas atividades?
  • É possível que dois desenvolvedores customizando o mesmo módulo apaguem o trabalho do outro?
  • Temos os registros das ocorrências encontradas na homologação dos projetos?
  • Existe algum indicador de qualidade para o trabalho de equipes internas ou terceirizadas?

Estas são perguntas que estão intimamente relacionadas a qualidade e portabilidade do software que é desenvolvido em sua organização; Com o intuito de agilizar estes processos, a B2Card criou um conjunto de aplicações denominado GMC, Gerenciamento de Módulos e Customizações, o qual estaremos apresentando.

O GMC, Gerenciamento de Módulos e Customizações, consiste em um conjunto integrado de aplicações para controle das atividades relativas a área de desenvolvimento de sistemas mainframe; Como representado na figura ao lado, o GMC é dividido em sete funcionalidades:

  • Cadastro de Módulos
  • Cadastro de Customizações
  • Gerenciador de Transportes
  • Listas de Compilação
  • Controle de Loadlibs
  • Utilitários
  • Relatórios de Controle

O Cadastro de Módulos centraliza todas as operações de inclusão, manutenção e consulta aos módulos (Programas, books, mapas e etc) existentes no sistema; É através dele que cadastramos as informações sobre tipo do módulo, linguagem e subsistema ao qual ele pertence.

Os Utilitários são os responsáveis por processos de suporte ao desenvolvimento tais como comparação de fontes, geração de versões expandidas e outros.

O Gerenciador de Transportes centraliza as operações de catalogação e transferência de módulos e ou customizações entre os ambientes existentes na organização (desenvolvimento, homologação e produção).

As Listas de Compilação como o próprio nome indica, controla as operações de inclusão, manutenção e consulta das listas de compilação necessárias a implantação de módulos/ customizações.

O Controle de Loadlibs é uma função existente no GMC para manter nas bibliotecas de loadlibs do sistema apenas aqueles objetos que precisam estar naquele ambiente, seja desenvolvimento, certificação ou homologação.

O Cadastro de Customizações concentra todas as operações de inclusão, manutenção e consulta as customizações existentes no sistema; É através dele que cadastramos as informações sobre tipo de customização, se corretiva ou não, se pertencente a release ou compliance, a qual assunto se refere e a qual ordem de serviço está associada.

Os Relatórios de Controle correspondem a funções disponíveis no GMC que permitem avaliar retrabalho, qualidade, andamento dos projetos, desempenho de profissionais e outros vários indicativos de gestão, auditoria e apoio técnico.

Descrição do processo de customização no GMC

Estrutura de desenvolvimento base para o exemplo:

Regras de Customização:

  • Colunas de customização variável;
  • Não é aconselhável a renumeração de módulos inteiros;
  • Diretrizes de espaçamento de numeração;
  • Não é aconselhável a exclusão de linhas já em produção;
  • 7 Bytes para customização normal;
  • Conceito de customização corretiva;

Passos a passo para customização:

  1. Demanda é recebida pelo desenvolvedor;
  2. Desenvolvedor solicita código de customização;
  3. Desenvolvedor solicita novos códigos de módulos;
  4. Para cada módulo a incluir ou alterar, o desenvolvedor deve fazer uma associação de sua customização/Módulo/Usuário;
  5. Desenvolvedor cataloga módulos incluídos ou alterados no ambiente de desenvolvimento, assim como sua lista de compilação;
  6. Se existente, desenvolvedor executa lista de compilação;
  7. Após os testes unitários, desenvolvedor transporta módulo ou customização para ambiente de certificação;
  8. Existindo lista de compilação, o desenvolvedor solicita sua execução no ambiente de certificação
  9. Após os testes integrados na certificação, desenvolvedor ou supervisor transporta customização para ambiente de homologação;
  10. Existindo lista de compilação, o desenvolvedor solicita sua execução no ambiente de homologação;
  11. Caso o usuário localize erro na homologação, desenvolvedor solicita customização corretiva e reinicia processo (opcional);
  12. Após aceite do usuário, desenvolvedor ou supervisor solicita transporte da customização para ambiente de produção e a execução da possível lista de compilação da customização;

Detalhes do processo:

  • Uma customização pode envolver vários módulos e vários desenvolvedores simultaneamente;
  • Em uma mesma combinação de módulo/customização, somente pode atuar um desenvolvedor;
  • Um único módulo pode ser alterado por várias combinações de desenvolvedor/customização;
  • O transporte para ambientes de controle externo ao desenvolvimento é feito sempre a nível de customização;
  • Existência de bibliotecas de fontes e loadlibs para cada ambiente;
  • Todas as informações de cadastro e transportes são gravadas na base de dados do GMC;
  • Os relatórios refletindo informações desta base podem ser gerados por solicitação via RPF ou frequência definida

Exemplo de relatório gerado pelo GMC

Protótipo de telas do GMC—Desenvolvedor

O GMC foi desenvolvido em:

  • Plataforma mainframe
  • RPF/CA-Roscoe
  • Linguagem COBOL

Documentos de apoio:

  • Manual do usuário
  • Manual do supervisor
  • Plano de testes

Benefícios

  • Redução de custos no desenvolvimento;
  • Redução do risco de impacto a imagem e credibilidade dos produtos;
  • Melhoria contínua na qualidade do software;
  • Crescimento do número de processos padronizados;
  • Condições para geração e implantação de indicadores/metas de qualidade;
  • Acompanhamento de projetos em tempo real;
  • Avaliação de desenvolvedores com indicadores da aplicação;
  • Possibilidade de utilização do GMC para controle de alterações em JCL’s
  • Auditoria simplificada da gestão de fontes

Sempre houve uma exigência de que as aplicações sejam desenvolvidas em menor tempo e com menos erros. Embora os processos do GMC não possam garantir a inexistência de erros lógicos, sua infra-estrutura integrada irá aumentar a produtividade, reduzir problemas e o tempo de colocação do produto final no mercado

Etapas de Implementação

  • Alinhamento das expectativas;
  • Reconhecimento do ambiente (processos, recursos);
  • Apresentação do modelo situação atual x proposta;
  • Alterações na metodologia (novos procedimentos e relatórios);
  • Capacitação dos envolvidos e disseminação do novo processo.
  • Implantação do sistema – Identificação dos fontes utilizados pela produção; – Identificação das customizações em andamento; – Centralização dos fontes; – Ativação do GMC;