Software Product Description ___________________________________________________________________ PRODUCT NAME: DIGITAL ACMS for OpenVMS, Version 4.2 SPD 25.50.16 (Application Control and Management Sys- tem) DESCRIPTION ACMS is a transaction processing (TP) monitor designed for the DIG- ITAL OpenVMS operating systems. ACMS works with other Digital Equip- ment Corporation commercial application software products to provide users with a complete and customizable development and run-time en- vironment for transaction processing applications such as order track- ing, accounting and billing, banking, shop floor control, and insur- ance claims processing. ACMS software helps users through the entire application development life cycle, including the installation, planning, design, development, testing, implementation, management, and maintenance of complex TP ap- plications. ACMS provides a special-purpose application definition lan- guage for the structured definition of TP application functions and run-time characteristics. ACMS makes efficient use of the OpenVMS operating systems and asso- ciated hardware resources, making ACMS particularly suited to mission- critical applications that require high throughput and performance. ACMS integrates with the following DIGITAL and third-party layered prod- ucts: o DIGITAL ACMS Desktop for multivendor client access to ACMS appli- cations o DIGITAL DECADMIRE V2.1A for generation of ACMS and/or ACMS Desk- top applications using character-cell terminals as the user inter- face DIGITAL May 1997 AE-Y995S-TE o DIGITAL Application Generator V3.0B for generation of ACMS and/or ACMS Desktop applications using Microsoft[R] Visual Basic[TM] to implement a graphical user interface (GUI) o DIGITAL DECforms or DIGITAL VAX TDMS for forms management - If you plan to use TDMS, a VAX system is required. o All DIGITAL OpenVMS languages that conform to the OpenVMS calling standard. o Oracle CDD[TM] for the creation, analysis, and administration of metadata o Oracle Rdb[TM], Oracle CODASYL DBMS[TM], and OpenVMS RMS for data management o Oracle TRACE[TM] for performance event data collection Because ACMS is designed to allow for modular implementation as well as development, users can separate and distribute front-end process- ing (data input/output operations such as forms processing) from back- end processing (data calculations and database storage). In addition, ACMS allows users the use of nonstandard terminal or I/O devices, such as bar-code readers and ATMs. Features o Application Development Environment o Run-Time System o Application Management and Control o Front-end/Back-end Processing o Presentation Services o Database Management o Data Dictionary o Resource Utilization Collection and Reporting o Task Queuing 2 o Security o VMScluster Environment/Availability o ACMS Run-Time Option o ACMS Remote Access Option Application Development Environment ACMS uses a high-level, English-like definition language that replaces system service calls for most TP application functions. Using the ACMS Application Definition Utility, a programmer can: o Structure all application work into three basic steps: - Exchange steps for terminal I/O processing - Processing steps for database access and general computation - Block steps for performing work common to several processing and exchange steps o Control task execution and flow using conditional statements such as IF THEN ... ELSE, WHILE DO, SELECT FIRST, and CONTROL FIELD syn- tax in conjunction with Boolean expressions o Define and implement subroutine transactions using the CALL TASK syntax o Create menus and hierarchies of menus o Define resources used to execute transactions, such as servers, workspaces, and audit trails o Start and end database recovery units ACMS also includes the ACMS Task Debugger to debug ACMS definitions and servers. Run-Time System 3 ACMS includes a complete run-time system for implementing application definitions. The ACMS Run-Time System consists of eight specialized processes. Four manage the processing of a transaction, and four mon- itor and control the run-time system. The following ACMS processes manage the work within ACMS transactions: o Command Process (CP) - Manages logins and interaction between ter- minals and ACMS. CPs can be multithreaded (one CP process can han- dle menus and forms I/O for many ACMS terminals simultaneously). The CP passes input data to the Application Execution Controller (EXC) for processing by a server. o Application Execution Controller (EXC) - Controls task execution for all the tasks in an application. Each application has its own EXC process, which starts up and controls the server processes needed to handle processing work for tasks. o Server Process (SP) - Carries out the high-level programming lan- guage routines or DCL routines that handle a task's processing work and database or file I/O. Programmers link their routines to the ACMS-supplied main program to create customized servers for database access, computation, and other functions. o Queued Task Initiator (QTI) - Removes task elements from a task queue and initiates their execution in a specified application. Queued tasks are tasks placed in a queue for later execution. Queued tasks cannot collect terminal input data, but otherwise are the same as any other ACMS task. The ACMS processes that monitor and control the run-time system are: o ACMS Application Central Controller (ACC) - Acts as the central con- trol point for ACMS run-time systems. The ACC starts and controls the Terminal Subsystem Controller, the QTI, the EXC, and the au- dit trail log. The ACC process must be started and running on each computer system where ACMS applications are used. 4 o Audit Trail Logger (ATL) - Writes information about a running ACMS system to the audit trail log file. The ATL keeps a record of when the ACMS system starts and stops, when users log in, and when ap- plications and tasks start and stop. o Terminal Subsystem Controller (TSC) - Creates and controls the num- ber of active Command Processes (CPs) and assigns terminals to CPs. The TSC starts and stops CPs as needed, and controls which termi- nals can access ACMS. o Software Event Logger (SWL) - Records all ACMS internal software errors and event messages that occur during the execution of ACMS application programs. Communication among these run-time processes can occur on a single com- puter system, or between more than one computer in a VMScluster sys- tem or DECnet network. For example, a Command Process (CP) on one com- puter system can initiate a task within an application on another com- puter system. Application Management and Control Once an application is developed, the user moves that application into a production (real-use) environment. ACMS provides support for ACMS applications used in a production environment. ACMS includes seven utilities for defining, monitoring and modifying application management characteristics: o ACMSGEN - Modifies and displays ACMS system parameters. o Application Authorization Utility (AAU) - Authorizes applications to be installed. o User Definition Utility (UDU) - Authorizes users to log in to ACMS and assigns login displays, including default menus, to ACMS users. o Device Definition Utility (DDU) - Authorizes ACMS terminals and, optionally, defines captive terminals to log in directly to ACMS. o Queue Manager (QUEMGR) - Creates and manages ACMS task queues and queued task elements. 5 o Software Event Log Utility Program (SWLUP) - Creates reports of se- lected events recorded by the Software Event Logger. o Audit Trail Report Utility (ATR) - Returns records of application and user activity. In addition to the utilities, ACMS also provides users with the fol- lowing support for application management and control: o ACMS operator commands - Performs standard operator functions such as starting and stopping the ACMS system, the TSC (Terminal Sub- system Controller) process, the QTI process, and ACMS applications. o Command Procedures - Evaluates and modifies the values of OpenVMS and ACMS system parameters, and ACMS run-time process quotas. Front-end/Back-end Processing (Client/Server Processing) In ACMS, terminal, menu, and other I/O functions are separated from database or file processing and computational functions. The termi- nal and menu functions are handled on the front end of the transac- tion processing system, while task flow control, data processing, and computations are performed on the back end of the system. The separation of functions in ACMS (called the client/server model) can be implemented on a single node or on multiple nodes in a DECnet network. Because the ACMS client/server model always provides sepa- rate front and back ends, users can at any time off-load the front end to another computer system without reprogramming the application code. The ACMS Systems Interface (SI) lets users write front-end programs, or agents, to support specialized devices such as bar-code readers and automatic teller machines. ACMS includes support for failover in a distributed environment. If one OpenVMS node is not available to process a transaction, ACMS can automatically route the transaction to another application running on an available node. Presentation Services 6 ACMS supports both terminal-driven and PC/workstation-driven TP ap- plications with presentation services. Users have the option of run- ning ACMS tasks from menus on VT-terminals, or from a GUI interface on a PC/workstation desktop system. ACMS supports DECforms as its primary presentation service for character- cell terminals in ACMS applications. In addition, ACMS provides sup- port for VAX TDMS. If TDMS is used, a VAX system is required. See the ACMS Writing and Migrating Applications for OpenVMS Alpha Manual for more information on these restrictions. The ACMS Desktop product provides an API that allows user-written pro- grams running on various PC or workstation desktop systems to initi- ate and respond to ACMS tasks. A wide range of DIGITAL and third-party desktop tools can be used for the development of client presentation services and/or applications. ACMS also provides support for other presentation service products through the ACMS Request Interface and Systems Interface. The Request Inter- face lets users use presentation services other than DECforms or TDMS for I/O functions limited to one user per process. The Systems Inter- face lets users use presentation services for single-user or multiple- user I/O functions. Database Management ACMS includes support in its definition language for starting and end- ing database transactions/recovery units through a database manage- ment system. Database products supported include Oracle Rdb (including SQL), RMS, and Oracle CODASYL DBMS. Using the DECdtm component of the OpenVMS operating system, ACMS lets users coordinate operations on multiple recoverable resources (such as databases and files) within a single atomic transaction. Users can perform operations on multiple databases through a single transaction and ensure atomicity (that is, if the transaction fails, any changes 7 made to databases, files, or ACMS queues are rolled back to their pre- vious state before the transaction started). Please note that RMS Jour- naling for OpenVMS is required to support recoverable ACMS queue op- erations coordinated using DECdtm. RMS Journaling for OpenVMS is a sep- arate layered product, distinct from RMS, supplied with OpenVMS. ACMS applications can also access other data management products or file management systems that support the OpenVMS VAX or OpenVMS Al- pha calling standard. Data Dictionary ACMS supports the Oracle CDD/Repository data dictionary. ACMS stores application definitions in Oracle CDD/Repository directories and uses Oracle CDD/Repository record definitions for its workspaces. Resource Utilization Collection and Reporting ACMS supports Oracle TRACE to allow the collection and reporting of event-based data gathered from any combination of OpenVMS layered prod- ucts and ACMS applications. For each predefined event in ACMS, Ora- cle TRACE can collect information about resource utilization such as CPU time or ACMS data items such as the task name. Using the Oracle TRACE cross-facility feature, you can relate ACMS events with events from multiple layered products. Task Queuing Some ACMS applications require that the data be collected and stored in a temporary storage area (queue) for the application to process at another time. The ACMS queuing facility lets users create and manage ACMS task queues. ACMS queue services are used to place/remove tasks on/off ACMS task queues. Security ACMS ensures that the user's data remains secure by giving the sys- tem manager control over which users have access to ACMS. Using Open- VMS and ACMS authorization facilities system managers can: o Authorize users to use ACMS 8 o Control terminals connecting to ACMS o Limit the applications a user can run o Prevent unauthorized access to the operating system while running ACMS tasks ACMS includes transaction security in the form of access control lists (ACLs) in the definition language. Whenever a user selects a trans- action, that user's OpenVMS identifier is checked against the ACL de- fined for that transaction to determine if that user is allowed to ex- ecute that transaction. VMScluster Environment/Availability In a VMScluster environment, ACMS applications support highly avail- able configurations that help avoid single points of system failure. ACMS includes support for failover in a VMScluster environment. If one VMScluster processor is not available to process a transaction, ACMS can automatically route the transaction to another application run- ning on an available processor that shares the same data. ACMS can improve the performance of a database management system in a VMScluster environment by allowing the use of the client/server model to run database servers on a single processor. ACMS Run-Time Option The ACMS Run-Time Option is a subset of ACMS, which allows users to run existing ACMS applications or programs, and change application at- tributes (for example, menu definitions). The purpose of the Run-Time Option is to support the execution of applications developed on a host machine using the development version of this product, and to run on production machines. ACMS Remote Access Option 9 The ACMS Remote Access Option is a subset of the Run-Time Option and provides the ability to place users and the terminal I/O associated with them on a separate OpenVMS system, off loaded from the applica- tion system or VMScluster. Documentation ACMS includes a complete and comprehensive documentation set. Intro- ductory manuals explain ACMS concepts and components to new users. Ad- vanced guides describe, in task-oriented style, how to design, build, and manage ACMS applications. Complete reference information is also provided. The ACMS development documentation set consists of the following man- uals: DIGITAL ACMS Introduction Provides an introduction to the basic elements of the ACMS transac- tion processing system. It also includes a Glossary of ACMS terms. DIGITAL ACMS Getting Started Step-by-step tutorial for developing a simple ACMS application using DECforms, Oracle CDD/Repository, and an RMS file. DIGITAL ACMS Installation Guide Describes installation requirements, step-by-step installation instruc- tions, and postinstallation tasks. 10 DIGITAL ACMS Interoperability with IBM[R] LU6.2 and CICS Describes how ACMS works with the APPC/LU6.2 programming interface to communicate with IBM CICS applications. Interoperability with Non-DIGITAL Databases: Oracle[R] Case Study Describes how ACMS works with non-DIGITAL database managers with Or- acle used as an example. DIGITAL ACMS Concepts and Design Guidelines Describes ACMS concepts and guidelines for designing an ACMS appli- cation. DIGITAL ACMS Writing Applications Describes how to write task, task group, application, and menu def- initions using the Application Definition Utility (ADU). DIGITAL ACMS Writing Server Procedures Describes how to write, debug, and run procedures for ACMS applica- tions, including procedures that access Oracle Rdb, Oracle CODASYL DBMS, and RMS resource managers. DIGITAL ACMS Writing and Migrating Applications for OpenVMS Alpha Describes how to write and migrate ACMS applications to an OpenVMS Al- pha system. ACMS applications that use TDMS must be distributed in or- der to use ACMS for OpenVMS Alpha. This book also describes the I/O options and restrictions in a distributed environment. DIGITAL ACMS Systems Interface Programming Describes how to use Systems Interface (SI) Services to submit tasks to an ACMS system from outside ACMS. DIGITAL ACMS ADU Reference Manual Reference information regarding commands, phrases, and clauses of the Application Definition Utility (ADU). 11 DIGITAL ACMS Managing Applications Describes how to authorize, install, run, and manage ACMS applications, and how to control the ACMS system and its components. DIGITAL ACMS AVERTZ Overview Overview of the AVERTZ application, which is an online, running sam- ple that ships with the ACMS kit. DIGITAL ACMS Quick Reference Guide Complete list of ACMS syntax with brief descriptions. DIGITAL ACMS Master Index Comprehensive listing of all index entries in the documentation set. Release Notes, provided in the kit, contain specific information re- lated to the most current version of ACMS and material added too late for publication in other ACMS documents. ACMS also includes two sample applications: AVERTZ, which is based on the transaction processing requirements of a fictional car rental firm; and a Personnel Application from the ACMS Getting Started tutorial. HARDWARE REQUIREMENTS ACMS Version V4.2 for OpenVMS is supported on all hardware configu- rations referenced in the OpenVMS Operating System for Alpha and VAX, Version 7.1, Software Product Description (SPD 25.01.xx). Disk_Space_Requirements:___________________________________________ ACMS_Kit__________VAX_________Alpha________________________________ Development 30,000 35,000 Install 12 ___________________________________________________________________ Development 17,200 23,000 Permanent Run-Time Install 21,000 27,000 Run-Time Perma- 12,600 16,000 nent Remote Install 18,000 22,000 Remote_Permanent__11,000______14,000_______________________________ These counts refer to the disk space required on the system disk. The sizes are approximate; actual sizes may vary depending on the user's system environment, configuration, and software options. OPTIONAL HARDWARE Any device supported by the prerequisite software. Any DECnet hardware as required by the distributed ACMS environment. CLUSTER ENVIRONMENT This layered product is fully supported when installed on any valid and licensed VMScluster configuration without restrictions. VMSclus- ter configurations are fully described in the OpenVMS Cluster Soft- ware Product Description (29.78.xx) and include CI, Ethernet, and Mixed Interconnect configurations. 13 SOFTWARE REQUIREMENTS ___________________________________________________________________ OpenVMS Software__________VAX_________OpenVMS_Alpha________________________ Operating System V5.5, V6.1, V6.2, V7.1 V6.1, V6.2, V7.1 Oracle V4.2A- V5.3, V6.1A, V7.0 CDD/Repository____V7.0_____________________________________________ * Oracle CDD/Repository is only required with the ACMS Development license. Note: When using ACMS with DECnet-Plus (formerly called DECnet/OSI), the Transport Layer must be configured to use the Network Services Pro- tocol (NSP). ACMS restricts node names to a maximum of six characters. OpenVMS Tailoring For OpenVMS systems, the following OpenVMS classes are required for full functionality of this layered product: Full Development Kit o OpenVMS Required Saveset o Programming Support o System Programming Support o Utilities Run-Time Only Kit o OpenVMS Required Saveset o Programming Support o System Programming Support 14 o Utilities Remote Kit o OpenVMS Required Saveset o Network Support o System Programming Support o Utilities For more information on OpenVMS classes and tailoring, refer to the OpenVMS Operating System for Alpha and VAX Software Product Descrip- tion (SPD 25.01.xx). OPTIONAL SOFTWARE Certain versions of these products depend on a specific version of the operating system. Please refer to the Software Product Description (SPD) of the product in question to determine which version is required for correct operation. ___________________________________________________________________ OpenVMS Software__________VAX_________OpenVMS_Alpha________________________ DIGITAL ALL-IN-1 V3.2 V3.2 Office Server DIGITAL ACMS V2.2, V2.2, V2.3 Desktop V2.3 DIGITAL DECAD- V2.1A V2.1A MIRE DIGITAL Applica- V3.0B V3.0B tion Generator 15 __________________OpenVMS__________________________________________ Software__________VAX_________OpenVMS_Alpha________________________ DIGITAL DECforms V2.1B, V2.1B, V2.2 V2.2 DIGITAL DECset V11.2- V12.0 Release 12.0 (except PCA) DEC LSE V4.2-V4.3 V4.3 Oracle V4.2A- V5.3, V6.1A, V7.0 CDD/Repository V7.0 Oracle CODASYL V5.1-V7.0 V5.1-V7.0 DBMS Oracle Rdb V5.1-V7.0 V5.1-V7.0 Oracle TRACE V2.2 V2.2 RMS Journaling V5.5, V6.1, V6.2, V7.1 V6.1, V6.2, V7.1 DIGITAL_VAX_TDMS__V1.9A_______-____________________________________ GROWTH CONSIDERATIONS The minimum hardware/software requirements for any future version of this product may be different from the requirements for the current version. 16 DISTRIBUTION MEDIA o TK50 Streaming Tape (VAX only) o CD-ROM The software for ACMS for OpenVMS is available as part of the Open- VMS Software Product Library CD-ROM. The documentation for ACMS for OpenVMS is available as part of the Open- VMS Online Documentation Library on CD-ROM. ORDERING INFORMATION VAX_Part_Numbers:__________________________________________________ License_Type_______________Part_Number_____________________________ Development System QL-079A*-** Run-Time, Unlimited Use QL-076A*-** Run-Time, Concurrent Use QL-076AA-3B Remote Access, Unlimited QL-Y30A*-** Use Remote Access, Concurrent QL-Y30AA-3B Use Development System Media QA-079AA-H5 Run-Time Media QA-076AA-H5 Remote_Access_Media________QA-Y30AA-H5_____________________________ ___________________________________________________________________ Service_Offering___________Part_Number_____________________________ Development System QT-079A*-** Run-Time QT-076A*-** Remote_Access______________QT-Y30A*-**_____________________________ 17 Alpha_Part_Numbers:________________________________________________ License_Type_______________Part_Number_____________________________ Development System QL-2PZA*-** Run-Time, Unlimited Use QL-2Q1A*-** Run-Time, Concurrent Use QL-076AA-3B Remote Access, Unlimited QL-2Q0A*-** Use Remote Access, Concurrent QL-Y30AA-3B Development System Media QA-03XAA-H8 Run-Time Media QA-03XAA-H8 Remote_Access_Media________QA-03XAA-H8_____________________________ ___________________________________________________________________ Service_Offering___________Part_Number_____________________________ Development System QT-2PZA*-** Run-Time QT-2Q1A*-** Remote_Access______________QT-2Q0A*-**_____________________________ Documentation:_____________________________________________________ Documentation_Only_________Part_Number_____________________________ Development System QA-079AA-GZ Run-Time QA-076AA-GZ Remote_Access______________QA-Y30AA-GZ_____________________________ * Denotes variant fields. For additional information on available li- censes, services, and media, refer to the appropriate price book. The above information is valid at time of release. Please contact your local DIGITAL office for the most up-to-date information. 18 SOFTWARE LICENSING This software is furnished under the licensing provisions of Digital Equipment Corporation's Standard Terms and Conditions. For more in- formation about DIGITAL's licensing terms and policies, contact your local DIGITAL office. License Management Facility Support This layered product supports the OpenVMS License Management Facil- ity. License units for this product are allocated on an Unlimited and Con- current Use basis. Concurrent Use licensing enables a prespecified num- ber of users to use the product. Using this method of licensing, the price of the product depends on the number of licenses purchased for each node. With Concurrent Use licenses, the OpenVMS License Management Facil- ity checks to make sure that the number of simultaneous sign-ons does not exceed the number of Concurrent Use licenses purchased, where it is assumed that there is one license allocated for each simultaneous sign-on desired. LMF calculates this by assigning 100 license units to each license. It then computes the total number of license units purchased (100 times the number of licenses purchased) and subtracts 100 for each simultaneous sign-on that occurs, until it reaches zero. At zero, LMF determines that no other users may sign on until license units are available. For more information on the License Management Facility, refer to the appropriate OpenVMS Operating System Software Product Description (SPD 25.01.xx) or the License Management Facility manual of the appropri- ate OpenVMS operating system documentation set. For more information about DIGITAL's licensing terms and policies, con- tact your local DIGITAL office. 19 SOFTWARE PRODUCT SERVICES A variety of service options are available from DIGITAL. For more in- formation, contact your local DIGITAL office. SOFTWARE WARRANTY Warranty for this software product is provided by DIGITAL with the pur- chase of a license for the product as defined in this SPD. © 1997 Digital Equipment Corporation. All rights reserved. [R] IBM is a registered trademark of International Business Ma- chines Corporation. [R] Microsoft is a registered trademark of Microsoft Corporation. [TM]Visual Basic is a trademark of Microsoft Corporation. [R] Oracle is a registered trademark of Oracle Corporation. [TM]Oracle CDD/Repository, Oracle CODASYL DBMS, Oracle Rdb, and Oracle TRACE are trademarks of Oracle Corporation. [TM]The DIGITAL Logo, ALL-IN-1, ACMS, ACMS Desktop, CI, DEC, DECdtm, DECforms, DECnet, DEC FORTRAN, MicroVAX, MicroVMS, OpenVMS, VAX, VAX COBOL, VAXserver, VAXstation, VMS, and VM- Scluster are trademarks of Digital Equipment Corporation. 20