Supporting Functionality

In addition to its inventory management, change control, configuration management, and release management facilities, provides capabilities in the areas of parallel development management, software security management, and software information management. This broad range of product functionality is designed to support the entire software management lifecycle, not just one aspect.
In addition to its inventory management, change control, configuration management, and release management facilities,
provides capabilities in the areas of parallel development management, software security management, and software information management. This broad range of product functionality is designed to support the entire software management lifecycle, not just one aspect.
The Parallel Development Option
provides parallel development management capabilities through the
Parallel Development Option (PDM). Using this powerful development tool, it is possible to create a merged program from the comparison of a base program and two independently modified versions of that base program. By eliminating many of the time-consuming, manual tasks associated with merging parallel development updates, PDM saves time and reduces the margin for error.
PDM also provides a means of identifying and resolving conflicts before merging program updates. For this reason, PDM is a necessary tool for effectively managing concurrent application development and resolving problems which arise when integrating in-house modifications with vendor updates.
Managing Parallel Development Activities
When several programmers work on the same module concurrently, there is always the danger that some modifications will be overridden by others or will be in direct conflict with one another. Beyond the basic frustration factor, this problem can have serious consequences from a control and maintenance standpoint.
Managing Vendor Updates
Purchased software packages are typically customized to meet in-house demands. Unless those modifications are painstakingly documented, problems arise when an update arrives from the vendor. What exactly was changed in-house? And what modules did the vendor change, add, or delete? Manual methods for resolving these conflicts are time-consuming and error-prone, underlining the need for automated solutions for merging vendor updates with in-house modifications, and reconciling changes from release to release.
Basic PDM Operation
This diagram provides a simple illustration of how PDM operates:
Basic PDM Operation
Basic PDM Operation
In Step 1, the Work-in-Process (WIP) file is created and statistics are reported. In Step 2, the WIP file is edited. In Step 3, the merged member is built.
  • Building the WIP File
    The first step in using the Parallel Development Manager is to build a Work-in-Process (WIP) file. The WIP file is a PDS structure which combines three source files: the Root, Derivation 1, and Derivation 2. As an example, if PDM is being used to manage a vendor update, the Root would be the source for the old release, Derivation 1 would be the source for the in-house modifications made to that old release, and Derivation 2 would be the source for the vendor's new release.
    As the source input files are being compared to produce a WIP File, statistics are generated. These statistics reveal critical information about the source comparison, such as the number of inserts and deletes per module, the percentage of the module that has changed, and the number of simultaneous (and potentially conflicting) updates.
  • Editing the WIP File
    With statistics in hand, it is now possible to view and edit the members which contain conflicts. At this point, you can decide which conflicts to resolve and how to resolve them.
  • Creating Merged Source
    Once you have viewed and edited the WIP file to your satisfaction, you can use PDM to automatically merge the WIP source into an output source library. This output source is then ready for compilation or, if applicable, introduction into. The Parallel Development Manager can be used in online and batch modes, and can operate on a member-by-member basis on a list of members, or on any portion of the
Software Security Management
Traditionally, inventory security has been provided at the physical file level but not at the individual element level.
security is based on its inventory structure, enabling security rules to be defined according to that structure, at the system, subsystem, type, and element levels. Additionally,
actions are secured, providing a means of restricting individuals to the appropriate change control functions at specific stages within the software development lifecycle.
The Interface for External Security
With the Interface for External Security (ESI), installations which currently use
Top Secret
, or RACF security systems can secure access to
functions and data sets through those centralized systems.
ESI accomplishes this through an interface to IBM's System Authorization Facility (SAF). Each security request is checked through the centralized security system to validate access to
environments, menu options, and actions against inventory elements.
Software Information Management
Through a combination of its master inventory data base (Master Control File) and SMF log file, which notes every change attempted and completed, as well as security violation information,
provides extensive display and reporting facilities. The resulting information provides managers with an accurate and reliable means of performing workflow analysis, project tracking, trouble-shooting, and audit management.
provides extensive display capabilities for viewing status and change information online. The following displays can also be printed in hardcopy format:
  • Element Master Control File Information
  • Element Change Summary
  • Element Change History
  • Element Changes
  • Element Browse
  • Element Output Listing
  • Component Summary
  • Component History
  • Component Changes
  • Component Browse
  • Footprint Display
provides four types of reports: Master Control File, Historical, Footprint, and Change Administration.
  • Master Control File Reports
    The following reports reflect the definitions of systems, subsystems, element types, and elements, as specified to the
    Master Control File:
    • System Inventory Profile
    • System Inventory Summary
    • Element Catalog
    • Element Activity Profile
    • Element Activity Summary
    • Element Catalog by CCID
    • System Definition Profile
    • Element Signed Out Profile-By System
    • Element Signed Out Profile-By User
    • Approver Group Definition
    • Approver Group Usage
  • Historical Reports
    The following reports summarize security violations and element activity as recorded by
    • Security Violation Profile
    • Security Violation Summary
    • Element Activity Profile
    • Element Activity Summary
  • Footprint Reports
    The following reports document footprint information placed in source and load modules by
    • Library Member Footprint Report
    • Library CSECT Listing
    • Library ZAPped CSECT Report
    • Footprint Exception Report
  • Change Administration Reports
    The following reports document change package activity:
    • Package Detail Reports
    • Package Summary Report
Benefit Summary
Based on advanced change control technology which is implemented through an automated, integrated approach,
yields a number of substantial benefits by doing the following:
  • Providing extensive inventory management capabilities which accommodate all source and executable code, regardless of type or record length.
  • Providing a means of categorizing, viewing and manipulating physical inventory components as they relate to logical workgroups.
  • Creating an unbreakable audit trail of all change events for purposes of historical analysis and auditing.
  • Capturing and storing all change information using advanced, space-saving base/delta storage techniques.
  • Assuring an inviolate link between executable code and its originating source.
  • Enforcing standard, consistent change processes.
  • Providing an accurate means of creating and tracking software configurations.
  • Automating the movement of entire software release packages throughout the development lifecycle.
  • Providing additional approval and notification capabilities through change administration functionality.
  • Extending security to the inventory member level.
  • Providing a means to compare and implement vendor application updates.