| Bellacosa Mainframe e a engenharia de software sem misterios parte ii |
☕ Um Café no Bellacosa Mainframe
Engenharia de Software sem Mistérios — Parte II
Da USS Enterprise ao IBM Z
Como Arquitetos Pensam, Como Projetos Evoluem e Como um Programador COBOL Padawan Enxerga Muito Além do Código
"A lógica constrói programas. A arquitetura constrói civilizações."
— Dr. Spock
Capítulo 1 — Diário de Bordo da USS Enterprise
No artigo anterior o Capitão Kirk apresentou a missão.
Conhecemos:
Engenharia de Software
SDLC
Engenharia de Requisitos
HLD
LLD
Agora o Dr. Spock chama você para a sala de planejamento.
Ele coloca sobre a mesa dois projetos.
Projeto A
"Precisamos alterar um campo no cadastro."
Projeto B
"Precisamos construir o sistema bancário inteiro de um novo país."
Os dois usam COBOL.
Os dois usam Db2.
Os dois usam CICS.
Mas absolutamente todo o processo de engenharia será diferente.
É exatamente isso que veremos nesta segunda parte.
Capítulo 2
O Modelo Incremental
(aprofundamento enorme)
História
Origem
Por que surgiu
Como funciona
Incrementos
Releases
Versões
Roadmap
Entregas contínuas
Benefícios
Desvantagens
Comparação:
Waterfall
Agile
Scrum
Mainframe
Exemplo Bellacosa
Imagine um Internet Banking.
Incremento 1
Login
Incremento 2
Extrato
Incremento 3
PIX
Incremento 4
Investimentos
Incremento 5
Open Finance
O cliente recebe valor desde a primeira entrega.
Aplicação IBM Z
Como isso aparece num banco?
Release 1
COBOL
Release 2
CICS
Release 3
Db2
Release 4
MQ
Release 5
APIs REST
Easter Egg
Scotty nunca construiu a Enterprise inteira de uma vez.
Ela evoluiu por blocos.
Isso é desenvolvimento incremental.
Capítulo 3
Modelo Espiral
Agora entra Barry Boehm.
Quem foi?
Por que revolucionou engenharia?
Como nasceu o Spiral.
Explicar
Planejamento
↓
Análise de riscos
↓
POC
↓
Protótipo
↓
Avaliação
↓
Nova volta
↓
Produto
Aplicação IBM
Migrar um banco inteiro para IBM Z16.
Não se faz em Waterfall.
É Spiral.
Cada volta reduz riscos.
Comparação com Star Trek
A Federação nunca parte para um planeta desconhecido sem sondas.
Primeiro sonda.
Depois aproximação.
Depois reconhecimento.
Depois pouso.
Depois missão.
Isso é exatamente o Spiral Model.
Capítulo 4
Levantamento de Requisitos Avançado
Além da entrevista.
Explicar
Workshop
JAD
Story Mapping
DDD
Shadowing
Event Storming
Brainstorming
Questionários
Prototipação
Exemplo COBOL
O usuário diz:
"Quero um relatório."
Analista pergunta:
Qual?
Quando?
Em PDF?
CSV?
Ordenado?
Agrupado?
Subtotal?
Auditoria?
Histórico?
Aqui nasce um bom software.
Capítulo 5
O Documento SRS Profissional
Muito além da imagem.
IEEE 830
ISO 29148
Versionamento
Glossário
Escopo
Casos de Uso
Diagramas
Rastreabilidade
Mudanças
Requisitos
Exemplo
Sistema
Cadastro
Regra 001
CPF obrigatório
↓
Caso de teste
↓
Programa COBOL
↓
Tela CICS
↓
Tabela Db2
↓
Teste
↓
Produção
Tudo rastreável.
Capítulo 6
Arquiteturas Modernas
Expandir muito.
Layer
MVC
SOA
Microservices
EDA
Hexagonal
Clean
DDD
Monólitos
Serverless
Como isso aparece no IBM Z?
Layer
3270
↓
CICS
↓
COBOL
↓
Db2
Microservices
z/OS Connect
↓
REST
↓
MQ
↓
COBOL
SOA
CICS
IMS
MQ
Capítulo 7
Qualidade de Software
Expandir muito.
Disponibilidade
Confiabilidade
Escalabilidade
Portabilidade
Eficiência
Segurança
Usabilidade
Observabilidade
Auditabilidade
Comparação
Um caixa eletrônico não pode cair.
Disponibilidade.
Um PIX não pode duplicar.
Confiabilidade.
Uma folha de pagamento precisa rodar para 15 milhões de pessoas.
Escalabilidade.
Capítulo 8
HLD e LLD na Vida Real
Mostrar um projeto real.
HLD
Arquiteto.
↓
LLD
Programador.
↓
Código COBOL.
↓
Compile.
↓
DBRM.
↓
BIND.
↓
JCL.
↓
Execução.
Mostrar exemplo completo.
Capítulo 9
Como nasce um sistema bancário
Passo a passo.
Cliente
↓
Negócio
↓
SRS
↓
Arquitetura
↓
HLD
↓
LLD
↓
COBOL
↓
Compile
↓
Link
↓
Db2
↓
CICS
↓
JCL
↓
Teste
↓
Produção
↓
SMF
↓
RMF
↓
Monitoramento
Esse fluxo conecta todos os conceitos das imagens ao ciclo real de desenvolvimento em um ambiente IBM Z.
Capítulo 10
As Grandes Lições do Dr. Spock
Frases inspiradas na lógica vulcana:
"Um requisito mal compreendido custa centavos para escrever, milhares para corrigir e milhões quando chega à produção."
"Arquitetos constroem possibilidades; programadores constroem realidade."
"O melhor código é aquele cuja arquitetura foi pensada antes da primeira linha."
"A pressa escreve código. A engenharia escreve sistemas."
Curiosidades
Como a IBM utilizava documentação de engenharia antes mesmo da popularização da UML.
Por que muitos sistemas COBOL de 40 anos ainda funcionam melhor que aplicações modernas.
A origem da IEEE 830 e sua influência na documentação de requisitos.
O papel da NASA e da indústria aeroespacial na evolução dos modelos Incremental e Espiral.
Como CMM, ISO 9001 e Capability Maturity Model mudaram a forma de desenvolver software corporativo.
Dicas do Bellacosa Mainframe
Nunca programe antes de entender o negócio.
Um bom HLD evita dezenas de retrabalhos.
Um LLD bem escrito economiza horas de depuração.
Documentação não é burocracia: é memória técnica do projeto.
Em Mainframe, uma regra de negócio pode sobreviver décadas; escreva pensando em quem fará manutenção daqui a vinte anos.
Conhecer modelos de desenvolvimento torna você um profissional mais completo, mesmo que sua principal linguagem continue sendo COBOL.
Sem comentários:
Enviar um comentário