Mostrar mensagens com a etiqueta changeman. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta changeman. Mostrar todas as mensagens

domingo, 13 de abril de 2014

Changeman x Endevor: Briga de gigantes

 


Um Café no Bellacosa Mainframe

Changeman x Endevor

A briga boa do Mainframe (com gravata, RACF e auditor olhando) 😄

Se existe uma discussão eterna no mundo IBM Mainframe — quase tão antiga quanto JCL vs PROC ou COBOL fixo vs free — ela atende pelo nome:

CA Changeman ZMF x CA Endevor SCM

Não é guerra.
É clássico.
É derby.
É mainframe raiz.

Vamos colocar os dois frente a frente ao melhor estilo Bellacosa Mainframe: com história, passo a passo, comandos, dicas práticas, curiosidades, easter eggs e comentários de quem já suou em janela de produção.



1️⃣ Antes de tudo: eles fazem a MESMA coisa?

Não exatamente.

✔ Ambos fazem Software Change Management
✔ Ambos controlam código, versões e promoção
❌ Mas a filosofia é completamente diferente

👉 Changeman é processo e pacote
👉 Endevor é ambiente e mapa

Pense assim:

  • Changeman: “Vou criar um pacote com tudo que muda.”

  • Endevor: “Vou mover o elemento dentro do fluxo do sistema.”



2️⃣ Um pouco de história 📜

🕰️ Endevor (o veterano)

  • Nasceu nos anos 70/80

  • Criado para ambientes grandes, complexos e altamente integrados

  • Muito usado em bancos, seguradoras e telecom

  • Filosofia: onde o código vive importa

🕰️ Changeman (o organizado)

  • Surge depois, focado em governança e auditoria

  • Ideal para ambientes com:

    • Muitos desenvolvedores

    • Processos rígidos

    • Separação clara de responsabilidades

  • Filosofia: o pacote é a unidade da mudança


3️⃣ Conceitos fundamentais (lado a lado)

ConceitoChangemanEndevor
Unidade principalPackageElement
ControlePor pacotePor ambiente
PromoçãoPromote PackageMove Element
VersãoBaselineLevel
AuditoriaMuito forteForte, mas diferente
Curva de aprendizadoMédiaAlta 😅

4️⃣ Changeman em 3 passos (vida real)

🔹 1. Criar Package

Você cria um Package contendo:

  • Programas

  • JCLs

  • Copybooks

Tudo que muda vai dentro dele.


🔹 2. Trabalhar nos componentes

  • Edita

  • Compila

  • Testa

  • Usa View Changes para validar


🔹 3. Promote

  • DEV → QA → HML → PRD

  • Aprovações

  • Auditoria feliz

  • Produção protegida

👉 O pacote é rei.


5️⃣ Endevor em 3 passos (vida real)

🔹 1. Localizar o Element

O código já vive dentro de:

  • Environment

  • System

  • Subsystem

  • Type

  • Stage


🔹 2. Editar e gerar

Você:

  • EDIT o Element

  • GENERATE

  • Endevor cria versões (Levels)


🔹 3. Move

  • MOVE Stage 1 → Stage 2

  • O elemento sobe no fluxo

  • Tudo rastreado pelo caminho

👉 O mapa do sistema é rei.


6️⃣ Comandos clássicos (raiz mesmo) ⌨️

🔹 Endevor (linha de comando ISPF)

  • ADD – adicionar elemento

  • EDIT – editar

  • GENERATE – compilar

  • MOVE – promover

  • BROWSE – visualizar

  • HISTORY – ver histórico

💬 “Sem GENERATE, não existe Endevor.”


🔹 Changeman (menu-driven)

  • Create Package

  • Add Components

  • Edit

  • Build

  • Test

  • Promote

  • View Changes

💬 “Sem Package, não existe Changeman.”


7️⃣ Dicas Bellacosa (quem já caiu em produção) 🧠

✔ Quando escolher Changeman

  • Ambientes com auditoria pesada

  • Times grandes

  • Mudanças agrupadas

  • Governança forte

  • Muitas áreas envolvidas

👉 Ideal para bancos e órgãos regulados


✔ Quando escolher Endevor

  • Sistemas gigantes

  • Fluxos complexos

  • Dependência entre componentes

  • Times técnicos maduros

👉 Ideal para core systems antigos e robustos


8️⃣ Curiosidades ☕

  • Endevor não precisa de pacote

  • Changeman vive de pacote

  • Endevor é extremamente customizável

  • Changeman é mais user friendly

  • Ambos integram com RACF

  • Ambos deixam rastro (log) até do seu suspiro 😄


9️⃣ Easter Eggs de quem viveu 🥚

🥚 O “MOVE errado” no Endevor
Mover o elemento para o stage errado é como:

“scp direto em produção”

🥚 O pacote Frankenstein no Changeman
Package com:

  • 1 programa

  • 2 JCLs

  • 3 COPYs

  • 1 PROC

  • E ninguém lembra por quê

🥚 Auditor vs Desenvolvedor
Auditor ama Changeman.
Arquiteto raiz ama Endevor.
E o programador… só quer ir pra casa 😂


🔟 Changeman x Endevor em linguagem moderna

HojeMainframe
Git FlowEndevor
Pull RequestChangeman Package
CI/CD PipelineGenerate / Promote
DiffView Changes / History

1️⃣1️⃣ Quem ganha a briga?

Resposta honesta Bellacosa:

Depende do ambiente, da cultura e do tamanho do monstro.

❌ Não existe vencedor absoluto
✔ Existe ferramenta certa para o problema certo

Mainframe não é moda.
É engenharia.


1️⃣2️⃣ Comentário final ☕

Changeman e Endevor não são inimigos.
São filosofias diferentes para o mesmo objetivo:

Proteger produção, garantir rastreabilidade e manter o caos sob controle.

Se você domina os dois, você não é só programador:
👉 Você é guardião do sistema.

☕🚀


quinta-feira, 27 de março de 2014

Changeman - View Changes


Um Café no Bellacosa Mainframe

Changeman – View Changes

O “git log / git diff” raiz do z/OS, muito antes de virar moda 😉

Se você já trabalhou com CA Changeman em ambiente IBM Mainframe, sabe: ele não é apenas uma ferramenta de controle de mudanças. Ele é praticamente um guardião da sanidade do programador, do analista e do auditor.
E dentro desse universo, existe um recurso simples, poderoso e muitas vezes subestimado: View Changes.

Vamos destrinchar isso ao melhor estilo Bellacosa Mainframe: com história, passo a passo, dicas práticas, curiosidades, comandos e até alguns easter eggs que só quem já sofreu em produção entende 😄


1️⃣ O que é o Changeman?

O CA Changeman ZMF (Zero Migration Facility) é uma ferramenta de Change Management usada no z/OS para:

  • Controlar versões de programas (COBOL, PL/I, ASM, JCL, PROC, COPY, etc.)

  • Garantir rastreabilidade (quem mudou, quando, por quê)

  • Organizar ambientes (DEV → QA → HML → PRD)

  • Atender auditorias (SOX, PCI, ISO, BACEN feelings 😅)

👉 Antes do GitHub existir, o Changeman já fazia controle de versão sério no mainframe.


2️⃣ O que é o View Changes?

O View Changes permite visualizar as diferenças entre versões de um componente antes, durante ou depois de uma migração.

Em outras palavras:

“O que exatamente mudou nesse programa?”

Ele compara:

  • Baseline × Working

  • Package × Baseline

  • Versão antiga × versão nova

  • Antes da promoção × depois da promoção

📌 É o diff do mainframe, só que com gravata e crachá corporativo.


3️⃣ Um pouco de história 📜

Antes do Changeman:

  • Alterações eram feitas direto em PDS

  • Versionamento? → “Salva uma cópia com outro nome”

  • Auditoria? → “Confia em mim”

  • Rastreabilidade? → JES2 $HASP050 de nervoso

O Changeman surgiu para organizar o caos, trazendo:

  • Processos formais

  • Packages

  • Approvals

  • Promote / Demote

  • E claro… comparação de mudanças

O View Changes nasce exatamente dessa necessidade:
👉 Mostrar claramente o impacto de cada alteração.


4️⃣ Onde o View Changes aparece no dia a dia?

Você vai encontrar o View Changes principalmente em:

  • Component List

  • Package List

  • Baseline Browse

  • Staging / Promotion Review

Normalmente acessado via ISPF menus do Changeman.


5️⃣ Passo a passo – View Changes na prática 🧭

🔹 1. Acesse o Changeman

Via ISPF:

=CM

(ou a opção configurada no seu shop)


🔹 2. Entre em um Package ou Application

  • Selecione a Application

  • Escolha o Package

  • Liste os Components


🔹 3. Selecione o componente desejado

Exemplo:

  • Programa COBOL

  • JCL

  • Copybook

Normalmente usando:

S (Select)

ou

V (View)

🔹 4. Escolha View Changes

Dependendo do menu, pode aparecer como:

  • View Changes

  • Compare

  • Diff

  • Browse Changes

O Changeman então:
✔ Compara a versão atual com a versão anterior
✔ Abre uma tela de comparação lado a lado ou inline


🔹 5. Analise as diferenças

Você verá:

  • Linhas adicionadas

  • Linhas removidas

  • Linhas alteradas

  • Numeração original do source

🎯 Aqui está a verdade nua e crua da mudança.


6️⃣ Como a comparação aparece? 👀

Geralmente:

  • Linhas alteradas marcadas com símbolos

  • Prefixos como:

    • + inclusão

    • - remoção

    • ! modificação

  • Numeração antiga × nova

📌 Dica Bellacosa:

Leia o diff antes de promover. Depois não adianta chorar no console.


7️⃣ Comandos úteis durante o View Changes ⌨️

Dentro da tela de visualização:

  • FIND 'STRING'
    🔎 Localiza mudanças específicas

  • LOCATE nnnnnn
    📍 Vai direto para uma linha

  • UP / DOWN
    📜 Navegação

  • RFIND
    🔁 Repetir busca

  • LEFT / RIGHT
    ↔ Em comparações lado a lado


8️⃣ Dicas práticas (experiência de trincheira) 🧠

Sempre use View Changes antes do Promote
Evita aquele clássico: “Não era isso que eu tinha mudado”.

Use em JCL também!
Um DISP=SHR que virou OLD já derrubou muita madrugada.

Compare COPYBOOKs com carinho
Uma mudança pequena pode quebrar 20 programas.

Leia o diff como auditor
Se você não consegue explicar a mudança, o auditor vai adorar perguntar 😄


9️⃣ Curiosidades ☕

  • Changeman faz diff linha a linha, não lógico

  • Espaços contam (sim, COBOL feelings)

  • Comentários alterados aparecem como mudança

  • Alguns shops limitam o View Changes por perfil RACF


🔟 Easter Eggs Bellacosa 🥚

🥚 Mudança fantasma
Você jura que não mudou nada… mas o View Changes mostra diferenças.
👉 Normalmente:

  • Espaço a mais

  • Tab invisível

  • Fim de linha diferente

🥚 Comentário que salva auditoria
Um simples comentário bem escrito no source pode justificar toda a alteração no diff.

🥚 O “View Changes do susto”
Quando você percebe que alguém alterou algo que não estava no request
e o Changeman virou sua testemunha oficial 😎


1️⃣1️⃣ Changeman vs Git (comparação inevitável)

ConceitoChangemanGit
DiffView Changesgit diff
HistóricoPackagescommits
AprovaçãoApprovalspull request
ProduçãoPromotemerge/main

👉 Moral da história:
Mainframe sempre esteve anos à frente – só não tinha hype.


1️⃣2️⃣ Comentário final Bellacosa Mainframe ☕

O View Changes é simples, mas poderoso.
Ele:

  • Evita erros

  • Salva horas de debug

  • Ajuda auditorias

  • Protege produção

  • E ensina disciplina técnica

Se você trabalha com Changeman e não usa View Changes, está pilotando um z/OS de olhos fechados.

Mainframe não perdoa achismo. Ele exige evidência.

E o View Changes é uma das melhores evidências que você pode ter. 

Z.CH

5 – List Package

S2 – View objects in Package

VC – View Changes