7.2 Software Configuration Management Tools Plan (SCMP) 

Project:

07/03/2023

Table of Contents

 

7.2 Software Configuration Management Plan (SCMP)

7.2.1 Introduction                                                                                                      3

7.2.1.1 The Purpose of the SCMP                                                                           3

7.2.1.2 Scope                                                                                                             3

7.2.1.3 Definitions of Terms                                                                                    4

7.2.1.4 Acronyms                                                                                                      4

7.2.1.5 Checklist items for Section 7.2.1                                                                4

7.2.2 SCM Management

7.2.2.1 Organizational Context                                                                                6

7.2.2.2 Review Board                                                                                                8

7.2.3 Configuration Identification                                                                                       8

7.2.4 Configuration Controls                                                                                               10

7.2.5 Configuration Status Accounting                                                                              10

7.2.6 Configuration Evaluations                                                                                          10

7.2.7 Interface Control                                                                                                          11

7.2.8 Subcontractor and Vendor Control                                                                           11

7.2.9 Release Management and Delivery                                                                           12

7.2.10 SCM Resources                                                                                                         12

7.2.11 Data Retention, Disaster Prevention, and Disaster Recovery                             12

7.2.12 SCM Schedule                                                                                                            13

7.2.13 SCM Maintenance                                                                                                      13

Appendices

Appendix 1 Terms and Definitions                                                                                     13

Appendix 3 Software Configuration Management Plan Checklist                                  14

 

 

 

 

 

Figures

Figure                                                                                                    Page

7-1   Software Instances in Windchill 3
7-2 Change Management Log 4
7-3 Windchill main page 5
7-4 Organizational Chart Integration Controls 6
7-5 Organizational Chart   Project Management 7

 

 

 

 

 

  • Software Configuration Management Plan (SCMP)
    • Introduction

7.2.1.1 The Purpose of the SCMP

The Software Configuration Management Plan aims to make project management easier, minimize errors, increase traceability, and improve overall software quality. The benefits of an SCM process are Multi-User Updates: Often many people work on software development, meaning constant updates and changes exist.

For the   Machine, the Software Configuration Management Plan is designed to provide an ongoing record and implementation record of the software changes instituted on the servers that control the   machine.

The change log and SCMP are intended for use by the software engineers at   and Intralox, by project management, by the teams of mechanical and civil engineers at   and Intralox, and by staff whose function is to make changes to the   machine software to correct errors, maintain traceability and improve the overall quality of the software controlling the   machine.

 

7.2.1.2 Scope 

The purpose of the Software Configuration Management Plan is to provide an ongoing record of all changes made to the software controlling the   machine. The Software Management Tool selections include PTC Windchill (see Figure 7-1), and the Change Management Log, (see Figure 7-2). Windchill is an enterprise-level software designed to track, monitor, and implement changes to the software that controls the   machine.

7- 1   Software Instance Documents in Windchill

 

7- 2 Change Management Log

The High Output Package Sorter ( ) machine is designed to sort a bulk of packages very quickly and efficiently. The SCMP is designed to follow changes to the original software and deploy necessary changes through a precise process.

For the SCMP to be successful, there must be an ongoing and continuous updating of software throughout development and then throughout deployment of the  . This method provides the customer team with a good map of the processes that have taken place and allows for ease to make changes and refer to previous updates.

References to materials found outside of the SCMP (such as PLC locations and other software like freeware or shareware, (COTS) that might be a complete change of application.

These processes are developed to:

  • Identify a change.
  • Control the change.
  • Ensure the change is being deployed properly.
  • Document the change.

Although it is a tedious task, the reporting of the need for a change, and the implementation of a change, is the responsibility of the entire software development team.

7.2.1.3 Definitions of Key Terms (Not Commonly Known or Used)

 

Term Definition
ECR Engineering Change Request
ICD Interface Control Document
ILS Integrated Logistics Support
PLC Programmable Logic Controller
SCM Software Configuration Management

 

 

 

7.2.1.4 Acronyms

Term Definition
ACT Automated Controls Technologies
AGS ARB Gapper S900
ARB Activated Roller Belt
CCB Change Control Board
CONV Conveyor
  High Output Parcel Sorter
SLS Straight Line Sorter

 

7.2.1.5 The checklist item list to include for the introduction is as follows:

  1. Overview The High Output Package Sorter ( ) machine is controlled by three Programmable Logic Controllers software. (PLCs here) The software for these devices is determined by the Intralox team, and referenced by file name, not a brand name. Those  file names are listed in the Custom Software List Section E -1.9
  2. Software included in the SCMP includes:
    1. PTC Windchill

7- 3 Windchill Home Page

  1. PTC Windchill is the only SCM tool utilized by Intralox for the  machine project. This also includes the Change Management Log, which is designed to collect data on changes to all systems and functions across all business units of the   machine project, not just software configuration management.
  2. The SCM is linked to the main PLCs in a relational change log and the proprietary custom software as listed in Section E – 1.9 Custom Software List.
  3. The SCM is applied to all software directly governing the PLCs and the PC systems used to control and monitor the
  4. Depending upon the change, some software modifications will require an Integration Controls Engineer to travel to each site to calibrate and validate the change. In these cases, sufficient time is required for the engineer to travel to each site and test.
  5. In the case of software modifications requested by  that are outside the scope of the project, a Change Order would be submitted.

 

 

 

 

7.2.2 SCM Management

7.2.2.1 Organizational Context

  1. The software development team consists of four Controls Engineers. The Controls Engineers work in the Integration Controls Engineering Department at Intralox and oversee all change requests, monitoring of changes, and implementation of all changes. The management team assists in and monitors all changes and roles under their supervision.
  2. The functional roles of the software development team and change management systems follow a pattern established in the software industry. There are three Integrations Controls Engineers and one Integration Controls Supervisor.

For the management of the   Machine, the roles in Software Configuration Management, there is one   Program Director, and there are three Program Managers with the following specializations:

  •  ILS
  •  Contracts
  •  Execution

There is one Project Specialist and four Project Managers with the following specializations:

  • Installation
  • Commissioning
  • Closeout
  • Manufacturing and Shipping

 

Figure 7-4 Organizational Chart Integrations Controls

7- 4 Organization Chart:  Integration Controls

 

 

7- 5 Organizational Chart:   Project Management

  1. Relationships of organization units
    The Integration Controls Supervisor reports to a Controls Manager external to the   When any engineer makes changes to the PLC code and releases the update in Windchill, all engineers are notified of the change with an email “Change Notice Submitted.” Any other engineer can review the changes and approve them in Windchill, which will send another email out to all engineers, “Change Notice Approved.” On the internal change request document, Integration Controls is typically listed under the “TEAM” column as the party responsible for performing the work. If the change is to the Vitronic Camera Tunnel, Wipotech Scales, or ACT Motion, then the 3rd party company will be listed, and Intralox Controls will participate in coordinating the change.

These are the stakeholders and approvers of changes on the machine. Each PM will review each change in the change control meeting to make known any changes that could affect their areas, notify the responsible parties of items that must be updated due to the change, and be responsible for overseeing their completion.

  1. Relationship with
    The   Program Manager and the   Program Director have direct contact with   during the change process. The other software developers and managers use those two channels to communicate with   about changes to the configuration of the software for the

The 3rd party software, which is also updated and configured by Intralox is also handled directly through the   Program Director and the   Program Manager.

 

7.2.2.2 Review Board

The Review Board for the   Machine project SCM is made up of several members of the management and integrations controls teams dedicated to the   Machine project. The review board is named the Change Control Board (CCB) and it has a dedicated meeting once every 2 weeks.

  1. The purpose and objective of the CCB is to review Engineering Change Requests, Internal Change Requests, for the software that is used to control the   The CCB decides if a change is necessary, warranted, or not warranted. They will also decide which Integration Controls Engineer will handle the request based on their specialization, how the change will be implemented, and how it will be recorded in the Change Management Log. The main objective of the team is to administer and execute changes to the software as required by   and the management team. Care is taken to implement changes quickly and efficiently, and have those changes reviewed after testing with a goal to repair, replace or adjust the controls according to the   needs and requirements.
  2. The members of the Configuration Controls Board are as follows:
    •  Program Director
    •  Program Managers (2)
    •  Project Managers (2)
    •  Controls Engineers (3)
  3. The period of effectivity is 2 weeks for the change to be initially reviewed, and 2 weeks for the change to be implemented and then approved or disapproved. In the case of 3rd Party updates, the team reviews the proposed updates or changes, and the  Program Director or   Program Manager will approve the changes and they will be implemented by the 3rd party vendor within 2 weeks.
  4. Scope of authority, the CCB uses a consensus-based expert team of engineers and engineer managers. Their authority is derived from the policies and procedures, academic requirements within the industry for engineering and software development, in addition to years of training and experience working and managing staff within their specialized areas within the industry.
  5. The Change Control Board is tasked with informing  of all changes, as they are reviewed, approved, or disapproved, executed, then implemented and tested. Many levels of the change process are reported to   together, such as budgetary and execution, testing, and implementation.
  6. The Change Log is updated at each stage of the process, usually within one day of a change being approved by the Change Control Board. The operational procedure is to assign and change to the engineer whose specialty is required to make the change. The change is logged in the Change Log, then is updated at the end of each day, whether completed or still needs more time for changes to be implemented.
  7. Policies and Directives The policies, directives, and procedures are always included in the Engineering Change Request and the Change Management Log. The policies, directives, and procedures are specific to the type of change requested and always evaluated and approved or disapproved on an individual basis for each request.

7.2.3 Configuration Identification

For the purpose of managing changes to the software configuration, the review board and the integrated controls engineers will identify each software item with a version number representing the baseline for the version. The   machine uses software designed and owned by Intralox, being licensed and used by  . Configuration Identification is handled within the Windchill SCM software and the Change Management Log.

The Software items under configuration identification are the main programs running each Programmable Logic Controller (PLC) and are specific to the ARB Gapper S900 (AGS) PLC, the Straight-Line Sorter (SLS) PLC, and the Conveyor PLC.

In Windchill, each Intralox proprietary software update carries a document indication and the file with the source code. The baseline is defined by each individual change request, either internal or external.

For third-party changes from external vendors, the procedure for instituting a change, or update, is performed by the vendor or Intralox Controls Engineer at a   machine. Those changes are then updated in Windchill with a new image.

The configuration identification process is as follows.

  1. The Baseline is determined within Windchill software. The Engineering Change Request is received by the program manager, and once approved by the review board is entered into the Change Management Log as a task to be completed. At this time, it is entered into Windchill as a document pending completion. This pending document is given the identification as follow:
    Serial Number of the  Machine, which PLC is being changed, the major version number currently being used, then the name of the PLC written in full.
    e., 1002 AGS PLC, V3, Gapper S900
  2. The items that are controlled in this baseline are the ARB Gapper S900 (AGS) PLC, the Straight-Line Sorter (SLS) PLC, and the Conveyor PLC. All third-party software is monitored and updated within Windchill, but versioning is performed by Vendor and Intralox updates the information in Windchill along with a new image.
  3. The procedure to establish the baseline and change the baseline is based on the completion of the change to the software, after testing and approval by the Review Board and either the Program Manager or Program Director.
  4. The authority to approve changes to the software is performed by the Program Manager or Program Director, who has the academic and experiential requirements to perform the approval or disapproval of changes to the software.
  5. Documentation is performed within the Change Management Log and in Windchill. All risks and determinations are evaluated and if approved by the Program Manager,  is notified of the change and the Integration Controls Engineer who made the requested changes, or modified the software will then updates the version number in chronological order. (i.e., V1, V2, V3, etc.) within Windchill and the Change Management Log.
  6. References to the versions can be found in Windchill, the Change Management Log according to the date when the modification was performed.
  7. The other identification information is in the Windchill system the file name for the ACD file is based on the serial number of the  Machine, the PLC being changed, the version number, then the date of completion, and the name of the PLC being changed.
  8. Each PLC’s version can be viewed within the code on the machine in a routine called Revision_Log and can be viewed at any time.

Each software deliverable is uniquely identified by the serial number of the   machine, the particular PLC being modified, and an update to the version number in standard increasing increments of the major version. And finally, that information is updated in the Change Management Log and Windchill, reviewed by the Review Board, and approved by the Program Manager or Program Director.

 

 

7.2.4 Configuration Controls

  1. The Identification and recording of the change requests are performed through the Engineering Change Request (ECR) form for  and internally through the Change Management Log. The ECR is then entered into the Change Management Log, and Windchill, and an email is automatically sent to all the stakeholders in the software change and development teams.
  2. The review board evaluates the ECR across the team members. The Program Manager usually will call the bi-weekly meeting with those team members that would be directly involved with the change or modification. But there are times when the entire Integration Controls Engineers are called to a meeting to evaluate and review the change request.
  3. The final approval or disapproval is made by the Program Manager or Program Director.
  4.  will be notified of the decision of the review board, by the Program Manager or Program Director. The change has already been logged in the Change Management Log and entered into Windchill, by the team member working on the change. There is an automatic email sent out to all stakeholders whenever any change to the Windchill or Change Management Log is made.
  5. The modification is then undertaken by the Control Engineer whose specialty matches the need and had been assigned to the task. When the modification is complete it is tested and verified by the team member and then goes to the Program Manager or Program Director for approval of the verification. The modification is then logged into Windchill, the new version number is updated, along with the other relevant information in the Change Management Log and Windchill.
  6. The audit trail which begins with the review of the ECR and entering the change request in the Change Management Log is then entered at each step in the process, the review, the evaluation, the recommended fix, then modification, and the results of the modification with testing and verification
  7. The team members that are required to maintain and update the Change Management Log and Windchill are the Integration Controls Engineering Supervisor and Team (total of 4) and the Program Director and the Program Manager.

 

7.2.5 Configuration Status Accounting

The reporting statuses are all found within the Change Management Log, and the records are kept permanently. Accounting is handled for the PLC modifications within Windchill and the Change Management Log. These are permanent records of the modifications and their attendant steps to reach a recorded desired result, after approval. All previous versions of PLC codes and documents are stored in Windchill.

 

Status reports are recorded in the Change Management Log and show all steps in the process of requesting, approvals, or disapprovals, the action to be taken, the final results, the testing and verification processes are all logged in the Change Management Log.

 

7.2.6 Configuration Evaluations

The configuration evaluations are performed by the Review Board and the reviewer is usually the Program Manager or the Program Director. The audits are logged into the Change Management Log by the reviewer.

  1. The objective of the configuration evaluation is to maintain a record of the process of performing a modification.
  2. The items under review and audit are the modification results from the Controls Engineer, the testing results, and the verification of the results. This is entered directly into the Change Management Log.
  3. The schedule of the audit is usually on a per-day basis. At the end of each workday, the Controls Engineer working on the modification would update the Change Management Log with the results of the day’s code adjustments. This audit would then roll over into the next day or be completed and ready for testing if the testing hadn’t already been completed.
    In this process, Intralox has found that most changes that are necessary to the system can be installed and validated within one business day.
  4. The procedure for the review and audit is performed at the time of the modification and given to the reviewer at the time of verification. The Change Management Log is then updated in the proper column and row.
  5. The reviewer is usually the Controls Engineer who modified the software and can sometimes be the Program Manager or Program Director.
    The Audit is performed by the Controls Engineer who made the changes and delivered to  via email.
  6. The Change Management Log and Windchill is the documentation available for review for the stakeholders and staff associated with the management of changes in the software.
  7. The recording of deficiencies and corrective measures is performed in the Change Management Log as well as the ECR. The risk assessment is also performed at this time and is logged in the Change Management Log and the ECR.
  8. The approval process happens within the Review Board and is overseen by the Program Manager. The Controls Engineer who is responsible for the change is assigned the corrective task. The criterion for the approval is maintained according to the Engineering Change Request, and the specific change being requested. The corrective measure is then implemented by the Control Engineer who was assigned the task and recorded as per the steps above.

 

7.2.7 Interface Control

For interface modifications, an Intralox Controls Engineer will make the changes to each program and increment the versions of each program accordingly. The programs will be installed simultaneously. This will create an additional requirement to change the appropriate ICD, which will be triggered during the Change Control Board Meeting in the Change Control Log by the ILS Project Manager.

 

If one or more third-party vendors are involved in the interface change, each party will be responsible for their own change and overseen by an Intralox Controls Engineer. The required changes will be discussed thoroughly between the responsible parties, Intralox Integration Controls, Intralox Project Managers, and any other stakeholders. The appropriate ICDs will be updated prior to the implementation.

 

7.2.8 Subcontractor and Vendor Control

The three subcontracted vendors for the   Machine project are Wipotec, Vitronic, and Automated Controls Technologies (ACT). Intralox does not update the software from these vendors but does record each update as it is released into the system, with a new designation that includes an updated version number and identifying information. This is entered into Windchill and the Change Management Log.

  1. The vendors are required to submit an ECR for changes or updates they intend to perform on any particular   The information is then sent for review by the Program Manager, and the Program Director, if necessary, the update or change is reviewed at the next Review Board Meeting. The update is approved or disapproved by the Review Board, and an entry is made into Windchill and the Change Management Log.
  2. The Control Engineer who is assigned to assist with the modification change, is present for the change implementation, testing, and verification.
  3. The implementation of the change or update is then reviewed at the next Review Board Meeting, for compliance with all Intralox security measures. The source code for these updates and changes is proprietary, as is the software for all PLCs. The source code content is locked among the third-party vendors, Intralox, and . This ensures no one’s proprietary code is exposed and remains secure.
  4. The external code, data, and documentation is controlled through the Change Management Log and Windchill. All external changes are monitored by a Controls Engineer, and tested and verified by them, independently as assigned to the process by the Program Manager or Program Director.
  5. The security measures to safeguard proprietary code, documentation, and data, are that the code is locked to Intralox, the other Vendors, and .   will have access to the source code if necessary if there is a need that is formally outlined in an ECR. Intralox retains licenses for the use of third-party software.
  6. The process for making a change to third-party software is an ECR for the vendor to make the change, which is monitored by the Controls Engineer from Intralox is documented in Windchill as a “Change Notice Submitted” and initiated. The Review Board then approves or disapproves the changes. The modification or update is then implemented by the vendor’s engineer and monitored by a Controls Engineer with expertise in the system.

7.2.9 Release Management and Delivery

For the modifications to a   Machine, the change is initiated at the   machine location and is validated on-site, by the Intralox Controls Engineer, at the time of implementation.

Security and integrity are maintained by this method of update, testing, and verification. The Controls Engineer supervises the process personally and maintains all security and compliance requirements. The security measures include locked source code, vendor implementation of the change or update, and verification and validation on-site directly in the machine receiving the change.

 

7.2.10 SCM Resources

The SCM Tools are the PTC Windchill and the Change Management Log Excel spreadsheet. Both of those tools are permanent records of all changes to the   machine software. The SCM Tool Windchill is relatively new software but designed for the size and scope of the tasks that   requires.

The   machines are highly automated and designed for little or no training required for use. The Controls Engineering Team is available through the Controls Engineering Channel available to all     machine qualified and designated staff, within the workstation on the   machine.

 

7.2.11 Data Retention, Disaster Prevention, and Disaster Recovery.

In the case of data loss, the Intralox’s Windchill PLM retains the current copies each program on each machine and its prior versions. This allows PLC programs to be pulled from Windchill and electronically delivered to   by Intralox Customer Service for faster recovery. Even though the proprietary code is locked to  , it does not preclude disaster recovery at any time. In the case of the system’s PC’s, images are retained in multiple secure locations and documented on Windchill.

 

 

7.2.12 SCM Schedule

The schedule that follows for the SCM and the SCMP is a bi-weekly call with   in order to maintain the status of the   machine SCM Schedule. This meeting is to address any concerns with individual   machines on any given site, and also to address any concerns with the client and to maintain open lines of communication.

The SCM schedule also includes a bi-weekly Review Board meeting, as laid out in Organizational Context (Section 7.2.2.2 Review Board – Section b). The schedule is followed every 2 weeks and consists of the members required for updates and modifications that impact the software configuration management of the PLCs.

 

7.2.13 SCM Maintenance

  1. The maintenance of the SCM falls to the Review Board members as necessary, and when not being updated the Controls Engineers, the Program Manager, the Program Director, or in the case of the Change Management Log, those business unit representatives assigned to the task of updating the Change Management Log.
  2. Updates to Windchill happen during the change process, from Change Notice submittal, to change in progress, to change notice completed. If no changes are in progress the SCM is maintained in Windchill and updated at the Bi-weekly meeting of the Review Board if necessary.
  3. All changes to the SCMP are approved by the Program Manager or the Program Director, after review by the Controls Engineering team member assigned to the task.
  4. In the case of a need to change the SCMP an email to all the relevant organizational members is sent out, and a entry is made in Windchill and the Change Management Log. Approval is by the Program Manager or Program Director.

 

Appendices

Redacted According to NDA

#

Comments are closed