CPG1 Modernization Guide
CPG1 is a case/code generation product by Lattwein. Explore technical details, modernization strategies, and migration paths below.
Product Overview
CPG1 is a code generation tool designed to streamline the development of CICS applications on mainframe systems.
This simplifies the process of building transaction processing systems and 3270 screen interfaces, reducing the need for extensive Assembler programming knowledge. CPG1 is particularly useful for organizations that want to maintain or modernize their CICS applications without the complexities of manual Assembler coding.
Modernization Strategies
Rehost
- Timeline:
- 6-12 months
Lift-and-shift to cloud infrastructure with minimal code changes. Fast migration with lower risk.
Refactor (Recommended)
- Timeline:
- 18-24 months
Optimize application architecture for cloud while preserving business logic. Best ROI long-term.
Replatform
- Timeline:
- 3-5 years
Complete rewrite to cloud-native architecture with microservices and modern tech stack.
Frequently Asked Questions
General
What does CPG1 do?
CPG1 is a code generation tool that creates CICS/Assembler code from a programming environment similar to RPG. It simplifies the development of CICS transaction processing applications and 3270 screen interfaces. The tool helps bridge the gap between higher-level languages and the complexities of CICS/Assembler programming.
Is this a system, application, or tool?
CPG1 is primarily a code generation toolset. It provides an environment for developing applications and then generates the necessary CICS/Assembler code. While it offers a development environment, its core function is the automated creation of code.
What types of organizations use this?
Organizations that rely on CICS for transaction processing and need to maintain or develop new 3270 screen-based applications are good candidates for CPG1. This includes companies in industries like banking, insurance, and retail that have a significant investment in mainframe systems.
When should we consider CPG1?
A company should consider using CPG1 when they need to develop or maintain CICS applications but want to avoid the complexities of directly coding in Assembler. It is especially useful when the development team has experience with RPG or similar languages, as CPG1 provides a compatible programming environment.
What are the alternatives to CPG1?
Alternatives to CPG1 include other code generation tools for CICS, such as CA Gen (formerly Cool:Gen) or Micro Focus Visual COBOL. These tools offer different approaches to application development and may support a wider range of target platforms or programming languages.
Technical
What infrastructure is required?
CPG1 runs on z/OS and zVSE/VSEn platforms. It is designed to generate code specifically for the CICS transaction processing system. Therefore, a CICS environment must be present for the generated code to execute.
How is the generated code deployed?
CPG1 generates CICS/Assembler code. The generated code is then deployed within the CICS environment on z/OS or zVSE/VSEn. The specifics of the deployment process depend on the organization's CICS configuration and procedures.
For mainframe products: Does this run in an LPAR?
CPG1 operates within the mainframe environment, typically within an LPAR (Logical Partition). It leverages the services provided by z/OS or zVSE/VSEn and requires the CICS subsystem to be active.
Does CPG1 expose APIs?
CPG1 generates Assembler code that directly interacts with CICS. It does not typically expose APIs in the modern sense (REST, SOAP). Integration with other systems would likely involve modifying the generated Assembler code or using CICS intercommunication facilities.
Business Value
What is the business value of using CPG1?
CPG1 simplifies the development of CICS applications, reducing the need for specialized Assembler programming skills. This can lead to faster development cycles and lower development costs. It also allows organizations to leverage existing RPG skills.
How does CPG1 reduce complexity?
By generating CICS/Assembler code from a higher-level environment, CPG1 reduces the complexity of mainframe application development. This can make it easier to maintain and enhance existing applications, as well as develop new ones.
Does CPG1 help with mainframe modernization?
CPG1 allows organizations to leverage their existing investment in mainframe systems and CICS. It provides a way to modernize application development practices without requiring a complete migration to new platforms.
Security
How does CPG1 address security concerns?
Security in CPG1-generated applications is primarily handled through CICS security mechanisms. This includes transaction security, resource security, and user authentication. The generated code would need to be designed to integrate with these CICS security features.
How is access control managed in CPG1 applications?
Access control in CPG1 applications is typically managed through CICS resource security. This allows administrators to define which users or groups have access to specific transactions, programs, or datasets. The generated code must enforce these access controls.
Does CPG1 provide encryption features?
CPG1 itself does not provide specific encryption capabilities. However, the generated code can incorporate encryption routines to protect sensitive data. This would typically involve using CICS-supported encryption methods or external security products.
Operations
What are the ongoing operational requirements?
Ongoing operations for CPG1-generated applications involve monitoring the CICS environment, managing user access, and maintaining the application code. This includes applying CICS maintenance, updating security definitions, and addressing any application errors.
What level of expertise is required to implement CPG1?
Implementing CPG1 typically requires expertise in both CICS and the CPG1 development environment. This includes understanding CICS transaction processing, 3270 screen design, and the CPG1 code generation process. Familiarity with Assembler is helpful for debugging generated code.
What are common implementation challenges?
Common implementation challenges include ensuring compatibility between the generated code and the CICS environment, optimizing performance, and debugging any errors in the generated Assembler code. Thorough testing is crucial to identify and resolve these issues.
Ready to Start Your Migration?
Download our comprehensive migration guide for CPG1 or calculate your ROI.