Follow

IEEE — Software life cycle processes

Level: Advanced
Intended audience: Anyone in systems and software engineering
Solution Store: Find all IEEE templates here

Introduction

Every system, whatever the kind or size, inherently follows some life cycle, evolving from its initial conceptualization through its eventual retirement. It is generally useful to build a model of this progression to help manage the evolution of the system because movement from one stage to another represents a decision point with specific criteria to be satisfied before movement to the next stage is allowed. A life cycle model, then, is a decision-linked conceptual segmentation of the definition of the need for the system, its realization as a product or service, and its utilization, evolution and disposal. Note that the actual progression of a system through the parts of the model, however done, is the system's life cycle.

 

 

Each life cycle process of ISO/IEC/IEEE 12207 and ISO/IEC/IEEE 15288 can be invoked at any point throughout the life cycle. The order and sequence in which processes are invoked, and when they are invoked, is driven by the project requirements and context: there is no unique definitive order or time sequence for their use within a stage or across several stages.

Many of the processes of ISO/IEC/IEEE 12207 are described as "specializations" of processes in ISO/IEC/IEEE 15288. In both standards, tailoring of processes is permitted. Tailoring is defined as the deletion of selected outcomes, activities, or tasks.

A system life cycle model is typically segmented by stages to facilitate planning, provisioning, operating and supporting the system-of-interest. These segments provide an orderly progression of a system through established decision-making gates to reduce risk and to ensure satisfactory progress. As stated before, it is the need to make a decision to specific criteria before a system can progress to the next stage that is the most important reason for using a life cycle model. A secondary aspect is that using a life cycle model can help an organization ensure that it thinks of its work and its processes within a larger framework, which may have useful business overtones.

Several factors make system life cycle planning, provisioning and operation difficult to manage. Economics and market forces, as well as novelty, complexity and operational stability affect the length of a system life cycle. Some systems have life cycles that are decades long (for example aircraft, satellites, ships) and some are very short (for example instruments and consumer electronics).

A typical system, however, progresses through a common series of stages where it is conceptualized, developed, produced as a product or service, utilized, supported and retired. The life cycle model is the framework that helps ensure that the system is able to meet its required functionality throughout its life. Thus, to define system requirements and developing system solutions during the concept and development stages, experts from other stages (for example production, utilization, support, retirement) are needed to perform trade-off analyses and to help make design decisions and arrive at a balanced solution. This helps ensure that a system has the necessary attributes designed in as early as possible. Also, it is essential to have the necessary enabling systems available to perform required stage functions.

A representative system life cycle model illustrates this progression.

Four common principles associated with a life cycle model are:

  • A system progresses through specific stages during its life;
  • Enabling systems should be available for each stage in order to achieve the outcomes of the stage;
  • At specific life cycle stages, attributes such as producibility, usability, supportability and disposability should be specified and designed into a system;
  • Progression to another stage requires satisfaction of exit criteria of the current stage.

Within a life cycle stage, processes are performed as required to achieve stated objectives. The progression of a system through its life is the result of actions managed and performed by people in one or more organizations using the processes selected for a life cycle stage.

Key Features

Feature Output
System Lifecycle ISO/IEC/IEEE 15288:2015 applies to the full life cycle of systems, including conception, development, production, utilization, support and retirement of systems, and to the acquisition and supply of systems, whether performed internally or externally to an organization. It provides a defined set of processes to facilitate communication among acquirers, suppliers and other stakeholders in the life cycle of a system.

It applies to organizations in their roles as both acquirers and suppliers. It can be used by a single organization in a self-imposed mode or in a multi-party situation. Parties can be from the same organization or from different organizations and the situation can range from an informal agreement to a formal contract.

The processes can be used as a basis for establishing business environments, e.g. methods, procedures, techniques, tools and trained personnel.

Software Lifecycle
ISO/IEC/IEEE 12207 was the first International Standard to provide a comprehensive set of life cycle processes, activities and tasks for software that is part of a larger system, and for stand alone software products and services. That International Standard was followed in November 2002 by ISO/IEC 15288 which addressed system life cycle processes. The ubiquity of the software meant that the software and its design processes should not be considered separately from those systems, but be considered as an integral part of the system and system design processes.

This International Standard can be used in one or more of the following modes:

  • By an organization — to help establish an environment of desired processes. These processes can be supported by an infrastructure of methods, procedures, techniques, tools and trained personnel. The organization may then employ this environment to perform and manage its projects and progress systems through their life cycle stages. In this mode this International Standard is used to assess conformance of a declared, established set of life cycle processes to its provisions.

  • By a project — to help select, structure and employ the elements of an established set of life cycle processes to provide products and services. In this mode this International Standard is used in the assessment of conformance of the project to the declared and established environment.

  • By an acquirer and a supplier — to help develop an agreement concerning processes and activities. Via the agreement, the processes and activities in this International Standard are selected, negotiated, agreed to and performed. In this mode this International Standard is used for guidance in developing the agreement.

  • By organizations and assessors — to perform assessments that may be used to support organizational process improvement.

Key Benefits

Here are the key benefits of the ISO/IEC/IEEE Life Cycle Solution.

Pre-defined Templates

Models for best practice approaches can be selected from the Solution Store and customized to make them appropriate for your organization. This reduces the risk of errors and kick starts your project

A Single Point of Truth

A central online repository stores each requirement as a record. Updates, comments and meta-data are controlled and tracked individually. 

A Collaborative Platform

The multi-user environment allows administrators control over which users have access to which project components. This means that information is accessible to those who need it in real time, fully secure and auditable.

Reporting

In-line analytics highlight gaps in coverage, traceability of changes and status of implementation efforts

Typical Use Cases

Here is a typical, but not exhaustive, list of roles and associated use cases that would interact with this solution.

Role Use Case
End users * Use the pre-defined templates to manage the system and software lifecycles
Project team * Select and update the selected templates for use by the organization to manage the system and software lifecycle

 

Templates

These files, apps and templates are used for the solution.

App Template
Files IEEE 15288-2015 Systems and software engineering - System life cycle processes (PDF)
IEEE 12207-2008 Systems and software engineering — Software life cycle processes (PDF)
IEEE 29148-2011 Systems and software engineering — Requirements engineering (PDF)
IEEE 14764-2006 Software Engineering - Software Lifecycle Processes - Maintenance (PDF)
IEEE 15026-1-2014 Systems and Software Engineering - Systems and Software Assurance—Part 1 Concepts and Vocabulary (PDF)
IEEE 15289-2015 Systems and software engineering - Content of life-cycle information items (documentation) (PDF)
IEEE 16085-2006 Systems and software engineering — Life cycle processes — Risk management (PDF)
IEEE 16326-2009 Systems and software engineering - Life cycle processes - Project management (PDF)
Planning ISO/IEC/IEEE 29148 Systems and software engineering — Requirements engineering
ISO/IEC/IEEE 16326 Systems and Software Engineering - Life Cycle Processes - Project Management

 

Specification ISO/IEC/IEEE-16085 Risk Management Plan
ISO/IEC/IEEE-16085 Risk Treatment Plan
ISO/IEC/IEEE-16085 Risk Action Request
IEEE Acceptance Record (IEEE 20000)
IEEE Assessment Record (Audit Record) (IEEE 12207, 20000)
IEEE Availability Record (IEEE 20000)
IEEE Complaint Record (compliment record) (IEEE 20000)
IEEE Configuration Record (IEEE 12207, 15288, 20000)
IEEE Decision Record (IEEE 15288, 20000)
IEEE Disposal Record (IEEE 12207)
IEEE Incident Record (IEEE 15288, 20000)
IEEE Information Item Storage Record (IEEE 12207)
IEEE Knowledge Management Record (IEEE 12207, 15288)
IEEE Performance Control Record (IEEE 20000)
IEEE Personnel Skills Record (IEEE 15288, 20000)
IEEE Problem Record (IEEE 12207, 15288, 20000)
IEEE Quality Activity Record (IEEE 12207, 20000)
IEEE Quality Cost Data (IEEE 12207)
IEEE Release Record (IEEE 12207, 20000)
IEEE Requirement Record (IEEE 12207, 15288, 20000)
IEEE Risk Record or Profile (IEEE 12207, 15288, 20000)
IEEE Skill Development Record (IEEE 12207, 15288, 20000)
IEEE Software Item Configuration Record (IEEE 12207)
IEEE Test Result Record (IEEE 12207, 20000)

 

Getting started

Plans

Template Get started
ISO/IEC/IEEE 29148 Systems and software engineering — Requirements engineering

Description: A plan used to provide guidance for the execution of the ISO/IEC 15288 and ISO/IEC 12207 processes that deal with requirements engineering.
Download the ISO/IEC/IEEE 29148 Systems and software engineering — Requirements engineering plan from the Solution Store, and complete the Stakeholder requirement definition, requirements analysis and requirement engineering processes sections according to the plan instructions.

 

ISO/IEC/IEEE 16326 - Systems and Software Engineering - Life Cycle Processes - Project Management

Description: A plan to be used for software or software-intensive system project management.

Download the ISO/IEC/IEEE 16326 - Systems and Software Engineering - Life Cycle Processes - Project Management plan from the Solution Store, and complete it according to the plan instructions.

 

Specifications

Template Get started
ISO/IEC/IEEE-16085 Risk Management Plan

Description: A specification used to create a risk management plan for your organization.

The purpose of the risk management plan is to define how the risk management activities are implemented and supported during a project.

Download the ISO/IEC/IEEE 16085 Systems and Software Engineering - Life Cycle Processes - Risk Management Plan Specification from the Solution Store.

Before you start, edit the Owner Custom field to reflect the people in your team.

Add records (think of them as paragraphs) to each section to answer the question in the table of contents heading. Each record can be assigned using the Owner custom field, and can be given a status (Draft Final, Approved). This means that the work can be shared among the team, filters and reports can be used to show progress, and to manage the work.

 

ISO/IEC/IEEE-16085 Risk Treatment Plan

Description: A specification that can be used to handle unacceptable risks.

The purpose of the risk treatment plan is to define how risks that are found unacceptable are to be treated.

The risk treatment plan serves as the mechanism for implementing a selected recommended alternative defined within a risk action request.

Download the ISO/IEC/IEEE 16085 Systems and software engineering - Life cycle processes - Risk Treatment Plan specification from the Solution Store.

Before you start, edit the Owner Custom field to reflect the people in your team. Re-name this specification according to your organization's naming convention for each individual risk.

Complete a copy of this specification for each individual risk or risks sharing pertinent characteristics.

 

ISO/IEC/IEEE-16085 Risk Action Request

Description: A specification that can be used to capture risk information and communicate it to the stakeholders.

The risk management process requires the creation of risk action requests for risks above their risk threshold.

Download the ISO/IEC/IEEE 16085 Systems and software engineering - Life cycle processes - Risk Action Request specification from the Solution Store.

Spend some time setting the context for the risk management process context - this information only needs updating as and when there are significant changes to the risk context.

Individual risks are added to the Risks section, and are categorized according to the custom fields (Probability, Consequences and Timing).

Risk treatment alternatives are also documented in the relevant section, and categorized using the custom fields (Justification, Recommended? and Disposition).

 

IEEE Acceptance Record

Description: A specification that can be used to document the acceptance criteria agreed, and record whether or not they have been met.

Download the IEEE Acceptance Record specification from the Solution Store.

Create a table of contents that organizes the acceptance criteria into logical units.

Add the acceptance criteria as records in the appropriate place in the table of contents. Mark each acceptance criteria as "Not Met", "Partially Met" or "Met" using the custom field.

Use filters and / or reports to identify which criteria still need to be met.

 

IEEE Assessment Record (Audit Record)

Description: A specification that can be used to document the assessment results (audit results), and record whether or not they have been met.

Download the IEEE Assessment Record specification from the Solution Store.

Create a table of contents that organizes the assessment results (audit results) into logical units.

Add the assessment data (audit data) as records in the appropriate place in the table of contents. Mark each record as "Not Met", "Partially Met" or "Met" using the "Outcome" custom field.

Generate a report that can be shared with the relevant audience by clicking V DOWNLOAD -> Export to Word

 

IEEE Availability Record

Description: A specification that can be used to document the acceptance criteria agreed, and record whether or not they have been met.

Download the IEEE Availability Record specification from the Solution Store.

Amend the table of contents by replacing the year and month names with the actual numbers. Add additional months and years as needed.

Add the availability records for each SLA, and complete each of the custom fields. Use filters and / or reports to present the data back to the business.

 

IEEE Complaint Record (compliment record)

Description: A specification that can be used to document the complaint / complements received by the organization.

Download the IEEE Complaint Record (compliment record) specification from the Solution Store.

Amend the custom fields to reflect your organizations customer type, categories and assigned to fields.

Amend the table of contents to reflect a structure that makes sense for the records you want to store, and may be by quarter, by type or by status. Using the example record as a guide, add all feedback to the specification, and use the filters to manage the work.

 

IEEE Configuration Record

Description: A specification that can be used to manage all assets within your organization.

Download the IEEE Configuration Record (Asset Record, Change Record) specification from the Solution Store.

Amend the Table of Contents to reflect a structure that makes sense for your organization. Currently it is structured by asset type, but this could also be by year, by status, by location... Update the custom fields to reflect your organization.

Create asset records for each of your assets. Use the Requirement Links to record up and downstream links between assets as well as change requests (from the Change Request specification). Problems and Incidents may be created in the Issues app and linked via the Issues Link.

Attach approvals and disposal records with the appropriate attachment categories

Use the notes to record maintenance, failure and lifetime data.

 

IEEE Decision Record

Description: A specification that can be used to record the decisions made during a project.

Download the IEEE Decision Record specification from the Solution Store.

Create a table of contents that organizes the decisions made into logical units. Currently this is by project, and if you want to keep this structure, just rename the sections to match your current projects.

Add the decisions made as records in the appropriate place in the table of contents, using the example record as a template.

Give each decision a status and an owner using the custom fields.

Use filters and / or reports to identify which decisions still need to be made.

 

IEEE Disposal Record

Description: A specification that can be used to document the disposal actions, and record whether or not they have been completed.

Download the IEEE Disposal Record specification from the Solution Store.

Create a table of contents that organizes the disposal actions into logical units. Currently this is by project, but it could also be by time or by status. If you want to keep this structure just rename the sections to match your current projects.Edit the custom fields to reflect appropriate values for your organization.

Create the disposal records in the appropriate place in your table of contents using the example provided as a template.

Use filters and / or reports to identify which decision records still need to be completed.

 

IEEE Incident Record

Description: A Specification that can be used to record incidents, including security incidents, service records and major incident records.

Download the IEEE Incident Record specification from the Solution Store.

Create a table of contents that organizes the incident records into logical units. We have used record type, but you can convert this to a custom field if this works better for your organization. Amend the custom fields to reflect your business.

Create your incident records using the example as a template.

Use filters and / or reports to identify the work to be done.

 

IEEE Information Item Storage Record

Description: Use this specification to store data about information items. The information items themselves can be stored in this specification or a related specification.

Download the IEEE Information Item Storage Record specification from the Solution Store.

Create a table of contents that organizes the acceptance criteria into logical units. Either use the existing structure or rename these items to reflect what will work best for your organization. Edit the custom fields to values that are appropriate to your organization.

Add the information items a as records in the appropriate place in the table of contents. Mark each information item status as "New", "Draft", "Published" or "Retired" using the custom fields, as well as assigning them a security status and an owner.

Use filters and / or reports to identify which information items still need work.

 

IEEE Knowledge Management Record

Description: A specification that can be used to manage knowledge.
Download the IEEE Knowledge Management Record specification from the Solution Store.

Create a table of contents that organizes the knowledge into logical units. Currently this is set up by collection, but this can be changed to suit your organization. Amend the custom fields to reflect appropriate data for your organization.

Add the knowledge records in the appropriate place in the table of contents.

Use the custom fields to categorize the content.

Use filters and / or reports to manage your knowledge.

 

IEEE Performance Control Record

Description: A specification that can be used to document the acceptance criteria agreed, and record whether or not they have been met.
Download the IEEE Performance Control Record specification from the Solution Store.

Create a table of contents that organizes the acceptance criteria into logical units.

Add the acceptance criteria as records in the appropriate place in the table of contents

Mark each acceptance criteria as "Not Met", "Partially Met" or "Met" using the custom field.

Use filters and / or reports to identify which criteria still need to be met.

 

IEEE Personnel Skills Record

Description: A specification that can be used to document the skills of all personnel
Download the IEEE Personnel Skills Record specification from the Solution Store.

Create a table of contents that organizes the acceptance criteria into logical units. Currently this is by skill set, but you can choose to register this as a custom field instead.

Add the Personnel skill records in the appropriate place in the table of contents

Use filters and / or reports to identify skill gaps.

 

IEEE Problem Record

Description: A specification that can be used to manage problem records, which are concerned with identifying and removing the causes of incidents.
Download the IEEE Problem Record specification from the Solution Store.

Create a table of contents that organizes the problem records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the problem records in the appropriate place in the table of contents.

Use filters and / or reports to manage your problem records.

 

IEEE Quality Activity Record

Description: A specification that can be used to record quality activity
Download the IEEE Quality Activity Record specification from the Solution Store.

Create a table of contents that organizes the quality records into logical units. Currently this is set up by type, but this can be changed to suit your organization. Amend the custom fields to reflect appropriate data for your organization.

Add the quality records in the appropriate place in the table of contents.

Use filters and / or reports to manage your quality records.

 

IEEE Quality Cost Data

Description: A specification that can be used to record quality cost data
Download the IEEE Quality Cost Data specification from the Solution Store.

Create a table of contents to organize the quality cost records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the quality cost records in the appropriate place in the table of contents, adding the Name of the control and the description, and then completing the relevant cost fields.

Use filters and / or reports to manage your quality cost records.

 

IEEE Release Record

Description: A specification that can be used to control a release
Download the IEEE Release Record specification from the Solution Store.

Create a table of contents to organize the release records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the release records in the appropriate place in the table of contents, adding all the data about the release to each record.

Use filters and / or reports to manage your release records.

 

IEEE Requirement Record

Description: A specification that can be used to record requirements
Download the IEEE Requirement Record specification from the Solution Store.

Create a table of contents to organize the requirements into logical units. Currently this is divided into business and functional requirements, but you may prefer to have separate specifications for these, and organize requirements according to components instead.

Amend the custom fields to reflect appropriate data for your organization.

Add the requirements in the appropriate place in the table of contents.

Use filters and / or reports to manage your requirements.

 

IEEE Risk Record

Description: A specification that can be used as a risk register
Download the IEEE Risk Record specification from the Solution Store.

Create a table of contents to organize the risk records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the risk records in the appropriate place in the table of contents, adding all the data about the risk to each record.

Use filters and / or reports to manage your risk records.

 

IEEE Skill Development Record

Description: A specification that can be used to maintain skill development records and needs.
Download the IEEE Skill Development Record specification from the Solution Store.

Create a table of contents to organize the development records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the development records in the appropriate place in the table of contents, adding all the data about the skill development to each record.

Use filters and / or reports to manage your development records.

 

IEEE Software Item Configuration Record

Description: A specification that can be used to maintain software item configuration records and needs.
Download the IEEE Software Item Configuration Record specification from the Solution Store.

Create a table of contents to organize the Software Item Configuration Record records into logical units. Amend the custom fields to reflect appropriate data for your organization.

Add the Software Item Configuration Record records in the appropriate place in the table of contents, adding all the data about the Software Item Configuration to each record.

Use filters and / or reports to manage your Software Item Configuration Records.

 

IEEE Test Result Record

Description:A specification that can be used to maintain test result records.
Download the IEEE Test Result Record specification from the Solution Store.

Create a table of contents to organize the test result records into logical units. This could be by product, or date for example. Amend the custom fields to reflect appropriate data for your organization.

Add the test result records in the appropriate place in the table of contents, adding all the data about test results to each record, including attaching related verification and validation records.

Use filters and / or reports to manage your test result records.

 

 

Additional notes

This is a starting point for managing the system and software life cycle.

Related links

Questions or Comments?

Respond to this post if you want to comment on the template or ask the author a question.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk