INEEL Spacial Analysis Laboratory
            |  Security/Privacy Notice   Documents   Recent Publications   Map Server Pages   Contacts   Back             

IDAHO NATIONAL ENGINEERING LABORATORY ENVIRONMENTAL RESTORATION INFORMATION SYSTEM SYSTEM CONFIGURATION MANAGEMENT PLAN

November 1998, Revision 5

Idaho National Engineering and Environmental Laboratory
P. O. Box 1625, Idaho Falls, Idaho 83415

Prepared for the U.S. Department of Energy Under DOE Idaho Field Office Contract

ABSTRACT

This report contains a description of the plan ensuring baselines, control changes to these baselines, record and track status, and the audit procedures corresponding to this plan. This plan will support all software systems and products developed for the Environmental Restoration Information System (ERIS). The ERIS is a computerized data management system that supports the Environmental Restoration Program and its ongoing activities at the Idaho National Engineering and Environmental Laboratory.

This document is developed using the American National Standards Institute/Institute of Electrical and Electronics Engineers Standard 828-1983 for system configuration management plans and the EG&G Idaho, Inc., Quality Manual, Section QP-21, "Computer Software Configuration Management," and addresses the configuration management of critical software.

TABLE OF CONTENTS

ACRONYMS
1. INTRODUCTION AND SCOPE
1.1 Introduction
1.2 Scope
1.3 References
2. MANAGEMENT
2.1 Organization
2.2 SCM Responsibilities
2.3 Interface Control
2.4 SCMP Implementation
2.5 Applicable Policies, Directives, and Procedures
2.6 Password Accountability
3. SCM ACTIVITIES
3.1 Configuration Identification
3.1.1 Requirements Phase
3.1.2 Design Phase
3.1.3 Implementation Phase
3.1.4 Integration Phase
3.1.5 Test Phase
3.2 Configuration Control
3.2.1 Design Phase
3.2.2 Implementation Phase
3.2.3 Integration Phase
3.2.4 Test Phase
3.2.5 Beta Test Phase
3.3 Configuration Status Accounting
3.4 Audits and Reviews
4. TOOLS, TECHNIQUES, AND METHODOLOGIES
5. SUPPLIER CONTROL
6. RECORDS COLLECTION AND RETENTION

APPENDIX A - HARDWARE CONFIGURATION DIAGRAM SOFTWARE CONFIGURATION DIAGRAM

APPENDIX B - VERSION CONTROL PROCEDURES

APPENDIX C - CONFIGURATION CONTROL PROCEDURES

APPENDIX D - ADMINISTRATIVE CONFIGURATION CONTROL PROCEDURES FOR TUTORIAL

APPENDIX E - DATA STRUCTURE IMPLEMENTATION PROCEDURES

APPENDIX F - DATA CHANGE CONTROL PROCEDURES

APPENDIX G - INTERNAL AUDIT REPORT FORMAT

APPENDIX H - DATABASE BACKUP AND RECOVERY PROCEDURES

ACRONYMS

ANS American National Standard
ANSI American National Standards Institute
ARDC Administrative Record and Document Control
ASME American Society of Mechanical Engineers
ASCII American Standard Code for Information Interchange
CASE computer aided software engineering
CGM Computer Graphics Metafile
DBA data base administrator
DDIF digital data interchange format
DFAD data flow analysis document
ERIS Environmental Restoration Information System
ER&WM Environmental Restoration & Waste Management
E&WMCU Environmental and Waste Management Computing Unit
GIS Geographic Information System
IEEE Institute of Electrical and Electronics Engineers
INEEL Idaho National Engineering and Environmental Laboratory
RDBMS Relational Data Base Management System
SCM software configuration management
SCMP software configuration management plan
STR software trouble report
TBA task baseline agreement
VCS version control system

1. INTRODUCTION AND SCOPE

1.1 Introduction

This document details the system configuration management plan (SCMP) for the Environmental Restoration Information System (ERIS), a comprehensive data management system for the Environmental Restoration & Waste Management program (ER&WM) at the Idaho National Engineering and Environmental Laboratory.

1.2 Scope

The SCMP details the methods used to maintain the configuration information concerning all application software and associated documentation. User documentation, programmer documentation, management documents, and associated documentation will be controlled. Applications developed using third-party tools will also be controlled under this plan. The plan will reference the method used to control associated hardware configuration diagrams.

The software developers will maintain version control on the total system configuration from the design phase to the completion of the acceptance testing. After the acceptance testing is completed, the staff of the ERIS will assume configuration control responsibility for associated software. This team consists of members of ER and members of IRM, working in a matrixed relationship.

1.3 References

  1. VCS: A Networked Version Control System, EGG-CATT-8926, February 1990.
  2. EG&G Idaho, Inc., Company Procedures Manual, Section 9.7, "Inspection Nonconformances," May 31, 1991.
  3. EG&G Idaho, Inc., Environmental Restoration & Waste Management, Program Directives Manual, ER&WM-PD 2.2 "Internal and Independent Review of Documents." June 30, 1990.
  4. EG&G Idaho, Inc., Environmental Restoration & Waste Management, Program Directives Manual, ER&WM-PD 1.9, "Records Management."
  5. EG&G Idaho, Inc., Environmental Restoration & Waste Management Program Quality Program Plan, QPP-149, October 1990.
  6. Institute of Electrical and Electronics Engineers, Software Engineering Standards, ANSI/IEEE Standard 828-1983, May 1987.
  7. System Quality Assurance Plan For The Environmental Restoration Information System, latest revision.
  8. General Requirements for the Environmental Restoration Information System, EGG-WM-8615, July 1989.
  9. EG&G Idaho, Inc., Quality Manual, Section QP-21, "Computer Software Configuration Management," December 29, 1989.

2. MANAGEMENT

This section of the SCMP describes the organization and associated responsibilities of the development team for the ERIS.

2.1 Organization

The ERIS development team is divided into two components. The first component acts as the umbrella for the total project. This component is the project management group, responsible for the budget and for acting on behalf of ER.

The other component consists of the development team, part of the Information Resource Management Branch of LMITCO, Inc. Prior to the ERIS passing the acceptance test, the responsibility for configuration control will reside with the system engineers responsible for each associated work area. Upon completion of the acceptance test, the responsibility for maintaining configuration control will lie with the staff of the ERIS Project.

The ERIS development team will establish the configuration control procedures and practices for the system development. These procedures and practices will be implemented and maintained by the ERIS staff after acceptance of the system.

A configuration control board of not more than three members will be established to monitor and approve system changes upon entry into the integration phase of system development. This configuration control board will consist of two peer engineers and one system engineer until testing is complete, and then the board will consist of two ER&WM personnel and one externam engineer. The members will be rotated through the panel based on the interest of the participants. An engineer will not sit on the board while changes involving that engineer's development are being considered.

2.2 SCM Responsibilities

Identifying needed configuration changes will be the responsibility of the individual development engineer until the software is shop tested and turned to the system engineer for integration. After this point, and until the system goes under configuration control, configuration changes will be the responsibility of the system engineers. The ongoing responsibility for identifying configuration changes after acceptance will reside with the system data base administrator. The data base administrator will be responsible for control of the configuration management system and will serve as chairman of the configuration control board.

Once changes are identified, the changes will be scheduled for review by the appropriate system engineer to the configuration control board (after the implementation phase, or as needed for major changes during this phase). The request for a meeting will be accomplished by an internal Company memorandum, and tracked by the ERIS project office. The findings of the control board will be recorded in an internal Company memorandum, and also tracked by the ERIS project office. Nonconformance items will be reported, controlled, and disposed of according to Section 9.7 "Inspection Nonconformances," of the Company Procedures Manual (2).

Reviews and implementation of the configuration management system are the responsibility of the ERIS Team. During development of the system, not more than two informal configuration control reviews will be performed by the ERIS project manager or his appointee. Results of these reviews will constitute an informal Company report to be tracked by the ERIS project office. Reviews of the configuration control system are expected to be performed by the responsible system engineer and findings are to be filed as part of the monthly progress report to the ERIS project manager.

2.3 Interface Control

The ERIS is expected to interface with many other data management systems, and configuration control with these interfaces must be maintained. A requirement of the engineer designing the interface to other systems is that an information flow be established between the foreign data management system and the ERIS project office. The ERIS project manager will maintain all identified system interface specification documents and associated control documents. In the event that the foreign system changes, the ERIS project office will be notified and will initiate a meeting with the configuration control board by means of an internal Company memorandum. Changes to the system to accommodate the interface changes will be documented with a letter to the configuration control board chairman.

In the event that hardware changes are required, the initiating individual will initiate a meeting of the configuration control board with an internal company memorandum. The configuration control board will approve or disapprove the requested change, and will check to ensure that the requested change corrects the original problem and does not create new problems as a result of the system modifications. This meeting normally takes place during the regular weekly ERIS staff meeting.

2.4 SCMP Implementation

The configuration control board will be established during the implementation phase of the system development effort. The control board will be responsible for generating unique tracking numbers for each configuration issue and these numbers will be assigned to all associated documentation and letters.

The configuration control board will be responsible for developing and implementing a configuration baseline numbering system and the changes that demark minor and major baseline numbers. The procedures defining the baseline numbering system will be developed by members of the ERIS staff. This baseline will begin when the implemented software is entered into the configuration management system during integration. When all associated items are entered into configuration control, the baseline will be established as version 0. During the initial meeting, the configuration control board will establish the configuration baseline numbering and determine when the system will come under a new baseline. The ERIS project manager is expected to perform a review of the system configuration management (SCM) system once during integration of the system, and once during the acceptance testing. If findings are significant, the review team will schedule a follow-up review to ensure that changes have been implemented. Reviews are to be performed by the system engineers, as a minimum, whenever the system baseline number changes. The principle verification that the system is being correctly used will be the documentation maintained by the ERIS project office.

The control board must approve all changes in software tools for development and testing. The initiator of the change will request, during a weekly staff meeting , that the modification or substitution of a tool be reviewed and approved by the configuration control board. Once the system is in production, ongoing maintenance tasks will be software platform upgrades.

2.5 Applicable Policies, Directives, and Procedures

The ERIS is constructed as a response to Environmental Protection Agency and Department of Energy regulations. As such, the development of this system must implement all appropriate regulations, such as those defined in the LITCO, Quality Manual, Section QP-21, "Computer Software Configuration Management (5), and the LMITCO, Environmental Restoration Program, Program Quality Plan, QPP-149 (4). It is the duty of the ERIS project manager to inform the development team of changing regulations that may affect the implementation and testing of the system.

The appropriate system engineer will develop the necessary procedures for addressing the problems of configuration management in the appropriate area. The minimum set of procedures are as follows:

2.6 Password Accountability

Except under documented circumstances, sharing the password for a user identification (ID) is prohibited. Individuals are responsible for their user IDs and passwords, and maintain responsibility for transactions made with their user IDs.

The password for Oracle application user IDs (pseudo-users that are created to own all data structures for an application) will be assigned to the lead engineer as the responsible individual. The backup for the lead engineer may also be given the pseudo-user password. No casual users (nondesigners) will be allowed to log into the Oracle database as the pseudo-user. Refer to the LITCO Computer Security Manual, Password Usage, Section 3.3.3, for more information.

3. SCM ACTIVITIES

3.1 Configuration Identification

3.1.1 Requirements Phase
The requirements phase baseline will consist of data flow models implemented in CASE. The data flow document will be part of the requirements baseline. If any prototype coding or Oracle forms are built as part of this phase, they will become part of the requirements baseline. CASE tools must be operational on a platform in order to complete this baseline. Project management documentation, including the project plan, the system quality assurance plani (7) and the system configuration management plan will be included in this baseline. If any plan describes procedures to be used in accomplishing the plan, then the baseline will also include the procedures. A hardware configuration diagram showing the system as it is configured at the end of the requirements phase is part of the baseline.

3.1.2 Design Phase
The elements that define the configuration at the design phase are those elements that are needed to complete the software design and prototype software. The initial baseline is defined by the presence of Oracle RDBMS operating on a hardware platform useable by both a synchronous and Ethernet users. The baseline must contain the completed design documents and CASE tools, in-place compilers, and a functional GIS. At this baseline level, the individual designs must contain shop test procedures. Development engineers have complete responsibility for configuration control at this point. Hardware modifications or platform changes must be shown on the baseline number of the hardware configuration diagram.

3.1.3 Implementation Phase
The implementation phase baseline configuration consists of all implemented designs, whether implemented in Oracle, FORTRAN, C, the GIS, or AutoCad, etc. The source files for each implementation will be stored using the Version Control System (VCS). The engineers responsible for design implementation must have completed shop test procedures, developed as part of the design phase, before placing the application under VCS. After the applications come under the VCS, system engineers have the responsibility for configuration control. If changes are needed to this baseline, the configuration control board must approve the changes. The hardware configuration diagram must be made current at this baseline level.

3.1.4 Integration Phase
The integration phase baseline will consist of fully integrated software and associated documentation. The documentation is to include the user documentation, training documentation, and programmers' manuals. These documents will be identified with the associated baseline numbering. The test procedures will also be part of this configuration baseline. The appropriate hardware configuration diagram will be an element of the integration phase baseline.

3.1.5 Test Phase
The test phase baseline will consist of all software after the system has succeeded in answering all of the functional requirements of the system and the requirements stated in Section QP-21, "Software Configuration Management," of the LITCO, Quality Manual (5), and testing of the system is complete. The completed test procedures then become part of the configuration baseline. The associated documentation will have incorporated all changes required by the results of the acceptance testing. Hardware and system software is frozen, and the current versions become part of the test phase baseline. The hardware configuration diagram must be updated to reflect the current and final configuration. The ERIS project manager assumes configuration control responsibilities during this phase.

3.2 Configuration Control

3.2.1 Design Phase
The application engineers are responsible for control of the documents and shop test procedures during the design phase of the ERIS development. At completion of the design review, the ASCII images of the documents will be baselined under the VCS by the system engineer. The associated review documentation, including correspondence, will be controlled in the ERIS project office and will be keyed with the appropriate baseline number. System software tools and hardware will be controlled by the system engineers. Original copies of all purchased software will be controlled in a fireproof vault at the Willow Creek Building, away from the server or host computer location.

During the design phase, prototype software may be developed to aid in requirements gathering and design completeness. The system engineers and the ERIS project manager may, at their discretion, distribute the prototype software to a subset of the user community. The distribution and subsequent user configuration must be tracked by the data base administrator. A special application of the Oracle data base will be constructed (the user table and form) to facilitate the data base administrator's job. These users must be supported throughout implementation, integration, and testing, and must be updated when the configuration control board makes changes to the system.

3.2.2 Implementation Phase
The engineers responsible for implementing the individual design modules will be responsible for application development until the application has been tested per the shop test procedures. The design documents themselves will be controlled by the system engineers during the implementation phase. Changes to designs must be approved by the configuration control board. Once successfully shop tested, the application will be controlled under the VCS. If the application consists of program language source code, the engineer will submit the source code for the VCS. If the application consists of Oracle forms and menus, the *.INP files and *.REX files will be controlled under the VCS. If the application consists of Oracle tables and data, the *.DMP files generated from the Oracle EXP utility will be the controlled source. Autocad and GIS applications will be controlled as *.DWG files. As in the design phase, the associated documents will be stored in VCS as ASCII files or as controlled documents using Company distribution, and associated review, test, and quality assurance documentation will be controlled at the ERIS project office.

3.2.3 Integration Phase
As development enters the integration phase, all applications will be controlled under the VCS. The integration phase consists of making all applications operate as a total system. This phase is primarily a troubleshooting phase. When a problem in operating two applications is identified, the following process will be used to modify the configuration of the system to facilitate this process.
  1. The appropriate engineers will work together to specify a correction for the problem, and alternatives if applicable.
  2. The engineers will submit a change request, in the form of an internal Company memorandum, to the chairman of the configuration control board.
  3. The chairman will schedule a meeting to review the changes and to discuss the alternatives. The meeting may cover many related changes.
  4. The board will authorize changes to the system to facilitate integration.
  5. The responsible system engineer will check out the applications from the VCS to implement the changes.
  6. The engineers will perform the modifications and will shop test the applications to ensure that the changes have affected the performance of the modules. They will issue a change report in the form of an internal Company memorandum to the chairman of the configuration control board.
  7. The appropriate system engineer will check the modified applications back into the VCS and record the request number in the VCS comment field.

3.2.4 Test Phase
Control of changes to the system will occur during acceptance testing in exactly the same fashion as in the integration phase, except that the problem identification is the responsibility of the appropriate system engineer or his delegatee. Test exception reports will substitute the change requests in the procedure listed in Section 3.2.3. Test data sets are to be provided by ER&WM and will be stored under the VCS as part of the baseline.

3.2.5 Beta Test Phase
During this phase of system implementation, the user will report problems to the data base administration staff. The staff will prepare a software trouble report via the Automated Error Tracking System and will submit a copy to the chairman of the configuration control board. The remaining steps in the problem correction process will follow exactly the same procedure as that in the implementation phase.

A modified system will be generated with a new appropriate baseline number. Several STRs may be incorporated into a new system baseline. The data base administrator will distribute necessary changes to the user community and will prepare an accompanying report outlining the changes to the software, special installation instructions, and any miscellaneous details. The multi-user system users will only need to be notified that the new baseline will be implemented. The data base administrator will keep a complete backup of the previous version until users are satisfied that the new baseline works.

The data base administrator will be responsible for tracking new users to the system and modifying the associated hardware configuration diagram. See Appendix A for the hardware configuration diagram and the software configuration diagram.

3.3 Configuration Status Accounting

The status of change items beyond a certain baseline level will be monitored by the data base administrator and will be accessible via an Oracle table and form (or forms). The status of any given change item will be noted by the project office based on correspondence received in the project file. The data base administrator will be responsible for updating the change order table and producing a periodic report for the control board chairman and the ERIS project manager. The minimum data set reported on is baseline number, item number, description of item, date reported, date reviewed, date modified, date of new control, status, and description of modification. In addition to this tabular report, the data base administrator will report on special situations, such as new tools versions installed, new hardware, or new baseline releases. See the following appendices for the necessary procedures:

3.4 Reviews

The configuration management reviews will take place as outlined in Section 1.2, and will be performed by the technical coordinator or staff. These reviews will ensure that the procedures outlined in Section 3.2 are being followed by reviewing the documentation on file at the project office. A comparison review of an implementation package chosen at random will be performed. This review will ensure that the module complies with the design requirements and that the module has not been inappropriately changed. Applications must not deviate from the versions stored in the VCS, unless they are checked out to the appropriate engineer for modification.

The technical coordinator must issue findings from the review to the software developers and to the chairman of the control board. The system engineers must fix the immediate deficiencies and respond to the technical coordinator with an internal memorandum describing how a permanent change in procedures will prevent recurrence of the problem.

4. TOOLS, TECHNIQUES, AND METHODOLOGIES

The principal configuration management tool for controlling the configuration of the ERIS during development will be the VCS. The specific procedures for submitting and extracting code from the VCS are described in the ERIS version control procedures.

Each release of the ERIS to a customer will originate from within the VCS. The system administrator will maintain a UNIX script file that extracts all associated codes and documents belonging to a particular version number. This script file will also compile all associated codes and Oracle applications, and will print the necessary documentation.

An Oracle application will be constructed to track changes in the configuration of the software. This system will be used to prepare reports on the status of any baseline and changes to that system. The changes outstanding and completed will be recorded, allowing the system administrator to construct previous versions from the VCS, if necessary.

The Oracle application and data, and all information in the VCS will be backed up weekly and stored offsite, away from the host machine.

5. SUPPLIER CONTROL

System software will be baselined at each step of the development of the ERIS. The supplied software will be keyed to any particular ERIS baseline number so that vendor software does not get ahead of application development. During the integration phase, all system software and hardware will be frozen and will not be upgraded except on an emergency basis. All changes to the basic system software must be reviewed and approved by the configuration control board.

Vendors, as related to this plan, will not be required to submit their own configuration control plans. The only requirement imposed on a vendor is that they release controlled versions of their software and keyed numbers for their releases. The system engineers, data base administrator, and configuration control board assume the responsibility for ensuring that the applications developed are functional under a particular version of the supplier software.

6. RECORDS COLLECTION AND RETENTION

A software configuration change group consists of the following documentation:

All of the documentation will be maintained in the ERIS project office and all associated documentation will be copied and sent to the ERIS project office. The control board will issue a change request number and this number, along with the baseline number, will constitute the identifier for the configuration change group. If other documents are generated during problem resolution, they will be keyed with this number and will be forwarded to the project office for inclusion in the change group file.

All change documentation will be retained from the start of the project until the system is turned over to the ER&WM. At that time, the ERIS project manager will determine a retention period for associated change group documentation. This period should be sufficient for a maintenance engineer to reconstruct changes to the system and back off to an older version number. When ARDC becomes fully operable and is able to accept documents for the optical disk system, the ERIS documentation will be transmitted there per ER&WM PD 1.9 "Records Management" (4)

The data base administrator will develop procedures to ensure the security of the documents associated with all change groups. The preferable solution will be the establishment of a repository in a fireproof vault at the INEEL Supercomputing Center, with copies of all documentation stored at this location. The documents will be stored in a VCS library on the system server, and the library will be backed up as part of the system backup procedures and will be secured in this fashion as well.

See Appendix I for database backup and recovery procedures.