Modernization Hub

Engineering Change - Modification

Enhanced Definition

An Engineering Change - Modification, in the mainframe context, refers to a formal, controlled process for altering existing software components (e.g., COBOL programs, JCL, REXX scripts) or system configurations (e.g., z/OS parameters, CICS definitions, DB2 schemas). Its primary purpose is to address defects, implement new features, improve performance, or enhance security within an enterprise computing environment. In the mainframe context, an Engineering Change (EC), often referred to as a Modification, is a formal update, fix, or enhancement applied to IBM's licensed program products (LPPs) or hardware microcode. These changes are typically delivered as Program Temporary Fixes (PTFs) to address defects, improve performance, or introduce new functionalities.

Key Characteristics

    • Formal Process: Typically follows a structured change management workflow, including request, analysis, design, implementation, testing, and deployment phases.
    • Version Control: Requires the use of Software Configuration Management (SCM) tools (e.g., CA Endevor, IBM SCLM) to track different versions of source code, JCL, and other artifacts.
    • Impact Analysis: Involves assessing the potential effects of a proposed change on dependent applications, system performance, and overall stability of the z/OS environment.
    • Rigorous Testing: Mandates comprehensive testing, including unit, integration, system, and regression testing, to ensure the modification functions correctly and does not introduce new issues.
    • Documentation: Requires updating relevant technical documentation, such as design specifications, program manuals, operational runbooks, and user guides, to reflect the changes.
    • Controlled Deployment: Involves a phased or controlled rollout of changes to production environments, often with fallback plans in case of unforeseen problems.

Use Cases

    • Applying Vendor Patches: Implementing Program Temporary Fixes (PTFs) or Authorized Program Analysis Reports (APARs) from IBM or other software vendors to resolve known issues or apply security updates.
    • Application Enhancement: Modifying existing COBOL or PL/I applications to add new business logic, integrate with new systems, or support updated regulatory requirements.
    • Performance Tuning: Adjusting JCL parameters, DB2 SQL queries, CICS transaction definitions, or IMS database structures to optimize resource utilization and improve response times.
    • System Configuration Updates: Changing z/OS system parameters (PARMLIB), RACF security rules, VTAM network definitions, or MQ queue manager configurations.
    • Defect Resolution: Correcting bugs or errors identified in production applications or system software through code changes and re-deployment.

Related Concepts

Engineering Change - Modification is intrinsically linked to Software Configuration Management (SCM) systems, which provide the framework for managing versions, promotions, and audit trails of changes. It is a critical component of the Software Development Life Cycle (SDLC), particularly during the maintenance and enhancement phases. This process often originates from Problem Management (e.g., APARs for system software) or Request Management (e.g., new feature requests) and is governed by broader Change Management policies to ensure system stability and compliance.

Best Practices:
  • Utilize a Robust SCM System: Always manage source code, JCL, and configuration files using an SCM tool to maintain version history, facilitate concurrent development, and provide auditability.
  • Implement a Formal Change Control Process: Establish a Change Control Board (CCB) or similar authority to review, approve, and prioritize all significant modifications before implementation.
  • Perform Thorough Impact Analysis: Before making any change, meticulously analyze its potential impact on other applications, system resources, and downstream processes.
  • Conduct Comprehensive Testing: Ensure all modifications undergo rigorous testing, including unit, integration, system, and especially regression testing, to prevent unintended side effects.
  • Maintain Detailed Documentation: Keep all design documents, code comments, JCL descriptions, and operational procedures updated to reflect the current state of the system after a modification.
  • Plan for Rollback: Always have a well-defined and tested rollback strategy in place to revert changes quickly and safely in case of unforeseen issues in production.

Related Vendors

IBM

646 products

Broadcom

235 products

Applied Software

7 products

Trax Softworks

3 products

Related Categories

Security

144 products

Performance

171 products

Printing and Output

158 products