Autoinstall
Autoinstall, primarily used within **CICS (Customer Information Control System)**, is a facility that dynamically creates resource definitions for terminals, programs, transactions, or MRO connections when they are first accessed, rather than requiring them to be pre-defined manually. Its primary purpose is to reduce the system programming effort associated with defining a large number of resources, especially transient ones.
Key Characteristics
-
- Dynamic Resource Creation: Automatically defines CICS resources (most commonly terminals, but also programs, transactions, and MRO connections) at the time of their first use.
- Model-Based: Relies on pre-defined model definitions (e.g.,
TYPETERMandTERMINALdefinitions for terminals) that serve as templates for the dynamically created resources. - Exit-Driven Customization: For terminals, it can invoke an Autoinstall User Exit program (e.g.,
DFHZATDXor a custom program) to provide site-specific logic for selecting models, modifying attributes, or rejecting connections. - System Initialization Parameter Control: Enabled and configured via CICS System Initialization Table (SIT) parameters, such as
AI(Autoinstall for terminals) andAIP(Autoinstall for programs). - Reduces Administration: Significantly lowers the administrative overhead for managing large numbers of identical or similar resources, particularly in environments with many terminals or frequently changing client connections.
- CICS Specific: This facility is a core feature of the CICS transaction server, not a general z/OS concept.
Use Cases
-
- New Terminal Connections: Automatically defining 3270 terminals or logical units (LUs) connecting to CICS for the first time, eliminating the need for manual
TERMINALandTYPETERMRDO definitions for each. - Client-Server Applications: Dynamically creating definitions for client applications connecting to CICS via APPC or IPIC, where the client identifiers may not be known in advance or are numerous.
- Multi-Region Operation (MRO): Automatically defining
CONNECTIONandSESSIONresources for new MRO links between CICS regions, simplifying inter-region communication setup. - Program Autoinstall: Dynamically defining
PROGRAMresources when a program is first referenced, often used in conjunction with CICS Web Support or for programs loaded from specific libraries.
- New Terminal Connections: Automatically defining 3270 terminals or logical units (LUs) connecting to CICS for the first time, eliminating the need for manual
Related Concepts
Autoinstall works in conjunction with CICS Resource Definition Online (RDO), as the model definitions it uses are themselves defined via RDO. It leverages CICS System Initialization Table (SIT) parameters to control its behavior and enable/disable its features. For terminals, it often interacts with VTAM (Virtual Telecommunications Access Method) to identify incoming connections, and the Autoinstall User Exit can query VTAM control blocks. It is a key component in managing CICS Terminals and CICS Connections, reducing the need for static definitions and making CICS environments more dynamic and scalable.
- Define Robust Models: Create comprehensive and well-tested model definitions that accurately reflect the attributes required for the dynamically created resources.
- Implement User Exits Carefully: If using an Autoinstall User Exit, ensure it is thoroughly designed, coded, and tested to handle all expected scenarios, including error conditions and security checks.
- Monitor Autoinstall Activity: Regularly monitor CICS messages and statistics related to Autoinstall to identify any issues, rejected connections, or unexpected resource creations.
- Balance with Static RDO: While Autoinstall is powerful, critical or highly sensitive resources should often be defined statically via RDO for explicit control and easier auditing.
- Security Considerations: Implement strong security measures within your Autoinstall User Exit or through CICS security definitions to prevent unauthorized access or resource creation.
- Performance Impact: Be mindful of the potential performance overhead of Autoinstall, especially if user exits are complex or if a very high volume of new resources is being created simultaneously.