# z/OS Software Decommission Checklist

Published with SARATH.KB. Adapt every item to the vendor documentation and the target site's change, security and recovery procedures.

## A. Authorization and dependency proof

- [ ] Confirm owner/business approval to retire
- [ ] Confirm replacement/cutover is complete
- [ ] Search schedulers/JCL for product program/STC/HLQ references
- [ ] Search automation/startup/recovery rules
- [ ] Search PROCLIB/PARMLIB/subsystem definitions
- [ ] Search APF/LINKLIST/LPA/LLA definitions
- [ ] Identify other products using exits/APIs/libraries/services
- [ ] Identify listeners/ports/DNS/firewall/TLS integrations
- [ ] Identify RACF identities/profiles/certificates/keyrings
- [ ] Identify WLM/monitoring/health-check definitions
- [ ] Observe for actual usage over agreed period where dependency evidence is weak

## B. Retention and rollback

- [ ] Capture final release/FMIDs/service/runtime evidence
- [ ] Archive product configuration and required logs/reports
- [ ] Archive persistent business/control data according to retention rules
- [ ] Record license/entitlement keys and retirement date
- [ ] Define rollback period and authorizer
- [ ] Preserve old libraries/zFS/config during rollback period

## C. Disable execution

- [ ] Stop new scheduler work
- [ ] Disable automation that can restart product
- [ ] Quiesce consumers
- [ ] Stop product in dependency order
- [ ] Verify no address spaces/listeners remain
- [ ] Observe for failed restart/connection attempts that reveal missed dependencies

## D. Remove integrations

- [ ] Remove STC/PROCLIB and startup commands
- [ ] Remove PARMLIB/subsystem references
- [ ] Remove APF/LINKLIST/LPA/LLA references and next-IPL definitions
- [ ] Remove dedicated RACF STARTED and product profiles after shared-use review
- [ ] Remove dedicated certificates/keyrings/secrets
- [ ] Remove ports/DNS/firewall/AT-TLS/routes where dedicated
- [ ] Remove product-specific WLM, automation, monitoring and health-check definitions

## E. Remove software/data

- [ ] For SMP/E-managed product, follow supported function/zone/library removal procedure
- [ ] Verify target/DLIB libraries are not shared before deleting
- [ ] For non-SMP/E product, remove runtime datasets/zFS after retention approval
- [ ] Remove persistent databases/control repositories last
- [ ] Remove staging/install packages according to retention policy
- [ ] Release licenses/entitlements and vendor registrations

## F. Final validation

- [ ] Search environment again for old STC/HLQ/port/subsystem references
- [ ] Verify active APF/LINKLIST/LPA state after removal
- [ ] Verify no failed starts after automation refresh and next relevant IPL
- [ ] Validate replacement business path
- [ ] Update software inventory/repository to retired
- [ ] Attach dependency, archival, removal and validation evidence to change record
