SQA Standards in EMI
Introduction
In order to define the SQAP for EMI, a set of standards have been used. In the following sections, we present how SQA Standards have been applied in the EMI project.
ISO/IEC 12207
The Standard ISO/IEC 12207 is about software lifecycle processes. It defines all the tasks required for developing and maintaining software. In the following Matrix, the processes, activities, tasks and outcomes defined in the standard are presented and mapped to what it is currently defined for EMI.
Type |
Process |
Activity |
EMI |
Primary |
Acquisition |
Initiation |
|
Request-for-Proposal |
|
Contract Preparation and update |
|
Supplier monitoring |
|
Acceptance and completion |
|
Supply |
Initiation |
|
Preparation of response |
|
Contract |
|
Planning |
|
Execution and control |
|
Review and evaluation |
|
Delivery and completion |
|
Development |
Process implementation |
|
System requirements analysis |
|
System architectural design |
|
Software requirements analysis |
|
Software architectural design |
|
Software detailed design |
|
Software coding and testing |
|
Software integration |
|
Software qualification testing |
|
System integration |
|
System qualification testing |
|
Software installation |
|
Software acceptance support |
|
Operation |
Process implementation |
|
Operational testing |
|
System operation |
|
User support |
|
Maintenance |
Process implementation |
|
Problem and modification analysis |
|
Modification implementation |
|
Maintenance review/acceptance |
|
Migration |
|
Software Retirement |
|
Supporting |
Documentation |
Process implementation |
|
Design and Development |
|
Production |
|
Maintenance |
|
Configuration Management |
Process implementation |
|
Configuration identification |
|
Configuration control |
|
Configuration status accounting |
|
Configuration evaluation |
|
Release management and delivery |
|
Quality Assurance |
Process implementation |
|
Product assurance |
|
Process assurance |
|
Assurance of quality systems |
|
Verification |
Process implementation |
|
Verification |
|
Validation |
Process implementation |
|
Validation |
|
Joint Review |
Process implementation |
|
Project Management reviews |
|
Technical reviews |
|
Audit |
Process implementation |
|
Audit |
|
Problem resolution |
Process implementation |
|
Problem resolution |
|
Organisational |
Management |
Initiation and scope definition |
|
Planning |
|
Execution and control |
|
Review and evaluation |
|
Closure |
|
Infrastructure |
Process implementation |
|
Establishment of the infrastructure |
|
Maintenance of the infrastructure |
|
Improvement |
Process establishment |
|
Process assessment |
|
Process improvement |
|
Training |
Process implementation |
|
Training material development |
|
Training plan implementation |
|
Quality assurance process
The quality assurance process is a process for providing adequate assurance that the software products and processes in the project life cycle conform to their specified requirements and adhere to their established plans. The process consists of the following activities:
- Process implementation
- Product assurance
- Process assurance
- Assurance of quality systems
Process implementation
- A quality assurance process tailored to the project shall be established. The objectives of the process are:
- Assure that the software products and the processes employed for providing those software products comply with their established requirements and adhere to their established plans.
- The quality assurance process should be coordinated with the following processes:
- Verification and Validation
- Joint Review
- Audit
- A plan for conducting the quality assurance process activities and tasks shall be developed, documented, implemented and maintained. The plan shall include:
- Quality standards, methodologies, procedures and tools for performing quality assurance activities.
- Procedures for contract review.
- Procedures for identification, collection, filing, maintenance and disposition of quality records.
- Resources, schedule and responsibilities for conducting the quality assurance activities.
- Scheduled and on-going quality assurance activities and tasks shall be executed. When problems or non-conformances with contract requirements are detected, they shall be documented and serve as input to Problem Resolution Process. Records of these activities and tasks, their execution, problems, and problem resolutions shall be prepared and maintained.
- Records of quality assurance activities and tasks shall be made available to the acquirer as specified in the contract.
Product Assurance
- It shall be assured that all the plans required by the contract are documented, comply with the contract, are mutually consistent and are being executed as required.
- It shall be assured that the software products and related documentation comply with the contract and adhere to the plans.
- In preparation for the delivery of the software products, it shall be assured that they have fully satisfied their contractual requirements and are acceptable to the acquirer.
Process Assurance
- It shall be assured that those software life cycle processes (suppy, development, operation, maintenance, and supporting processes including quality assurance) employed for the project comply with the contract and adhere to the plans.
- It shall be assured that the internal software engineering practices, development environment, test environment and libraries, comply with the contract.
- It shall be assured that the acquirer and other parties are provided the required support and cooperation in accordance with the contract, negotiation and plans.
- It should be assured that software product and process measurements are in accordance with established standards and procedures.
- It shall be assured that the staff assigned have the skill and knowledge needed to meet the requirements of the project and receive any necessary training.
Assurance of quality systems
- Additional quality management activities shall be assured in accordance with the clauses of ISO 9001 as specified in the contract.