Professional Documents
Culture Documents
SOP-32 Configuration Management - Ver 0
SOP-32 Configuration Management - Ver 0
1. PURPOSE
The purpose of this procedure is to define the configuration management process.
2. SCOPE
This procedure applies to items, parts, subassemblies, system assemblies, and products.
3. RESPONSIBILITIES
Development Lead / • Identifies the baseline and assigns the version number of the new
Configuration Manager release.
• Manages source code control, branching, performing official builds, and
identifies the unique identification for the software build.
• Manages the hardware related artifacts.
Software Developers • Follows the procedures outlined for software changes and builds.
System Engineer • Ensures the items, parts, subassemblies, system assemblies, and
products are created.
QA/RA Lead • Approves items, parts, subassemblies, system assemblies, and
products.
• Assesses changes for impact on regulatory filings.
System Lead/ Product • Defines BOM with items, parts, subassemblies, system assemblies and
Development Manager products.
• Ensures items, parts, subassemblies, system assemblies, and products
are approved and released.
CCB (Change Control • Reviews all change requests, its impact, and takes decisions on
Board) implementation of the change.
• Verifies final change implementation and approves the change for
Release in the Market.
4. DEFINITIONS
5. RECORDS
The records pertaining to this procedure include the Configuration Item List and is controlled in the
electronic Quality Management System.
6. FORMS
6.1. FRM-32-01; Configuration Item List
7. REFERENCES
7.1. WI-01; Document Creation and Change Management
7.2. FRM-03-01; Project Plan
7.3. FRM-31-01; SOUP List
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 1 of 6
STANDARD OPERATING PROCEDURE
Document Title Document Description Version No.
SOP-32 Configuration Management 0
8. PROCEDURE
8.1. Configuration Management Process
8.1.1. The configuration management process provides the ability to rebuild and recreate
historical releases including recreating a software item, identifying its parts, and
documenting the history of changes.
8.2. Configuration Identification
8.2.1. General
8.2.1.1. Configuration items defined in Table 1 will be aggregated and compiled from
different sub-items. A scheme will be adopted to identify each configuration item
with a unique identifier and their versions to be controlled for the project. This
includes other software products or entities such as SOUP or any piece of
information needed to create the deliverable including documentation.
Tools Software used to create/build, test, Tools are identified per SOP-16
calibrate, or program a device Validation
8.2.1.2. After configuration data has been aggregated and organized a baseline will be
established. A baseline configuration is a known state of configuration that will
successfully operate the dependent software without error. This baseline will be
created by reviewing the configuration of a functioning production environment
and committing those configuration settings as “baseline configuration”.
8.2.1.3. The Project Plan (FRM-03-01) includes a Software Configuration Plan section
that will define project specific details.
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 2 of 6
STANDARD OPERATING PROCEDURE
Document Title Document Description Version No.
SOP-32 Configuration Management 0
8.2.1.4. The Configuration Item List (FRM-32-01) defines the classes, types, categories,
or list of items to be version controlled (code, build, files, etc.) for the specific
project.
8.2.1.5. The Configuration Item List (FRM-32-01) is created for each release in QA,
Staging, and Production environment.
8.2.2. Part Numbers and Revisions
8.2.2.1. Items, parts, subassemblies, system assemblies, and products require a part
number and revision.
8.2.2.2. Part Numbers will be assigned a six-digit part number in the format of XX-XXXX
based on the following:
• The two-digit prefix represents the type of part and is assigned according
to the table below.
• The four-digit suffix is assigned in sequential order.
8.2.2.3. Revision Levels of BOM items are numeric characters. For example, PA-1000.1.
8.2.3. Software Versioning and Baselining
8.2.3.1. Software versioning uses the following format x.y.z(D) where:
• x = Major version number. Updated for major release with major new
features.
• y = Minor version number. Backwards compatible inside the same major
version, but with feature enhancements and/or bugfixes.
• z = Patch version number. For hotfixes, backwards compatible inside major
version, no new features.
• D = Build number used for internal tracking and verification of software
build process. Not visible to customers as part of software version number.
8.2.3.2. Software build identification
All official builds (release builds) will be identified using a scheme that will allow
all the controlled inputs to the build to be extracted from the source code control
system so that the build may be reproduced.
8.2.3.3. Release naming appends a sequentially generated build number.
8.2.3.4. The baseline will be managed by using tags / labeling.
8.2.4. Source Code Control
8.2.4.1. Manage source files necessary for performing a build of the software product.
8.2.4.2. In some cases, to manage software or data files used for unit tests of the product
software.
8.2.4.3. Track changes to the software and related filed and assist in controlling changes.
8.2.4.4. On occasion, it may be necessary to create a branch from a software baseline.
The source code control software shall support branching and provide tools to
aid in applying changes to multiple branches of the software. A branch implies
two or more instances of the source code are being maintained.
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 3 of 6
STANDARD OPERATING PROCEDURE
Document Title Document Description Version No.
SOP-32 Configuration Management 0
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 4 of 6
STANDARD OPERATING PROCEDURE
Document Title Document Description Version No.
SOP-32 Configuration Management 0
8.3.2.3. The release builds are released for distribution through the CI/CD pipelines for
the entire Chorus software.
8.4. Software Build Process
8.4.1. Applications and Firmware: CI/CD pipeline scripts are used to build the application and
firmware resources.
8.4.1.1. The source code is committed/stored in a dedicated repository.
8.4.1.2. The source code is version controlled which allows tracking of changes,
collaboration, and maintaining a history of changes.
8.4.1.3. CI/CD tools and platforms are used to interpret and execute the CI/CD pipeline
scripts. The tools automate the process of building the source code in the
required build environment and making the build artifact (Application or
Firmware) ready-for-deployment.
8.4.1.4. The Mobile Application is deployed on digital distribution services and then made
available to the end-users for over-the-air updates using push notifications.
8.4.1.5. The Firmware is deployed on an Artifact store on the cloud and made available
for over-the-air updates to the devices using push notifications to the Apps.
8.4.1.6. The Web Application is deployed on the Cloud Web Servers as a part of CI/CD.
8.4.2. Cloud: Infrastructure as code (IaC) will be used to build cloud resources.
8.4.2.1. Code is written to define the infrastructure components and stored in the source
code repository/version control system.
8.4.2.2. Cloud infrastructure code is version control which allows tracking of changes,
collaboration, and maintaining a history of changes.
8.4.2.3. IaC tools and platforms are used to interpret and execute the infrastructure code.
8.4.2.4. The IaC code is executed which instructs the cloud platform to create and
configure the specified resources.
8.4.3. Promotion states:
• Development – Builds in the Development state have not been tested beyond a basic
sanity test or automated regression test and are used by development for testing
defect resolution and feature enhancement.
• QA – Dev build promoted to QA for verification by QA team.
• LABS – Build verified by QA is promoted to the LABS. Currently this environment is
used for Research and Development/field purposes.
• SIT – If tests pass QA and Security, build promoted to SIT environment for System
Integration Testing (SIT).
• Staging – Release deployed into Pre-Production environment for User Acceptance
Testing (UAT). This environment closely resembles the production environment.
• Production – Final release is made available to customers.
8.4.4. The last healthy build can be manually pulled and deployed in a Production environment in
case rollback is needed.
8.4.5. In the case of hotfixes, the code changes are merged from the Hotfix branch to Main
branch if Unit Tests/Security scan pass on the build.
8.4.6. Official builds include software and release builds.
• Software builds are done on a milestone/release level.
• Release builds would be for major and minor releases and patch fixes. Only builds
that are commercially released should exist in the Production state.
• Release Notes are maintained for QA, SIT, Staging, and Production environments.
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 5 of 6
STANDARD OPERATING PROCEDURE
Document Title Document Description Version No.
SOP-32 Configuration Management 0
9. REVISION HISTORY
Version Description
0 Initial version of document
Chorus Confidential
Printed copies are uncontrolled and for reference only
Page 6 of 6