Difference between revisions of "Stakeholder Needs and Requirements"

From SEBoK
Jump to: navigation, search
(Introduction)
 
(173 intermediate revisions by 16 users not shown)
Line 1: Line 1:
====Introduction====
+
----
 +
'''''Lead Authors:''''' ''Alan Faisandier, Garry Roedler,'' '''''Contributing Author:''''' ''Rick Adcock''
 +
----
 +
{{Term|Stakeholder Requirement (glossary)|Stakeholder needs and requirements}} represent the views of those at the business or enterprise operations level—that is, of {{Term|User (glossary)|users}}, {{Term|Acquirer (glossary)|acquirers}}, {{Term|Customer (glossary)|customers}}, and other {{Term|Stakeholder (glossary)|stakeholders}} as they relate to the problem (or opportunity), as a set of requirements for a solution that can provide the services needed by the stakeholders in a defined environment. Using enterprise-level life cycle concepts (see [[Business or Mission Analysis]] for details) as guidance, stakeholders are led through a structured process to elicit stakeholder needs (in the form of a refined set of system-level life-cycle concepts). Stakeholder needs are transformed into a defined set of Stakeholder Requirements, which may be documented in the form of a model, a document containing textual requirement statements or both.
  
 +
Stakeholder requirements play major roles in systems engineering, as they:
 +
* Form the basis of {{Term|System Requirement (glossary)|system requirements}} activities.
 +
* Form the basis of system {{Term|Validation (glossary)|validation}} and stakeholder acceptance .
 +
* Act as a reference for {{Term|Integration (glossary)|integration}} and {{Term|Verification (glossary)|verification}} activities.
 +
* Serve as means of communication between the technical staff, management, finance department, and the stakeholder community.
  
It is assumed that the definition of the problem or the issue to be solved and/or the opportunity for developing or improving a System of Interest has been done when entering the definition of formalized Stakeholder Requirements. This means that the context of use of the System of Interest has been characterized (see [[Mission Analysis and Marketing Analysis]] topic), or the Physical Architecture of the parent system considered as the context of use of the concerned system has been defined (see [[Physical Architecture Design]] topic).
+
This topic describes the definition of stakeholder needs and requirements which involves the activities necessary to elicit and prioritize the needs of the stakeholder(s), and transform those needs into a set of defined stakeholder requirements. Defining the problem or the issue to be solved, identifying the opportunity for developing a new solution, or improving a {{Term|System-of-Interest (glossary)|system-of-interest (SoI)}} must begin prior to starting the activities necessary to define stakeholder needs and requirements. This means that an initial context of use of the new or modified mission, operation, or capability has already been characterized (see [[Business or Mission Analysis]]).  System requirements are considered in detail during {{Term|System Definition (glossary)|system definition}}. None of the above can be considered complete until consistency between the two has been achieved, as demonstrated by {{Term|Traceability (glossary)|traceability}}, for which a number of iterations may be needed.
 +
==Purpose and Definition==
 +
The purpose of the Stakeholder Needs and Requirements definition activities are to elicit a set of clear and concise needs related to a new or changed mission for an enterprise (see [[Business or Mission Analysis|mission analysis]] (MA) for information relevant to identifying and defining the mission or operation), and to transform these stakeholder needs into verifiable stakeholder requirements.
 +
 +
Stakeholders may well begin with desires, and expectations that may contain vague, ambiguous statements that are difficult to use for SE activities. Care must be taken to ensure that those desires and expectations are coalesced into a set of clear and concise need statements that are useful as a start point for system definition. These need statements will then need to be further clarified and translated into more ''engineering-oriented'' language in a set of stakeholder requirements to enable proper architecture definition and requirement activities. As an example, a need or an expectation such as, ''to easily ''manoeuvre ''a car in order to park'', will be transformed in a set of {{Term|Stakeholder Requirement (glossary)|stakeholder requirements}} to a statement such as, ''increase the driviability of the car'', ''decrease the effort for handling'', ''assist the piloting'', ''protect the coachwork against shocks or scratches'', etc.
  
The Stakeholder Requirements represent the view of the users, acquirers, and customers of the problem or of the opportunity, through a set of requirements for a system that can provide the services needed by the acquirer, users, and other stakeholders in a defined environment. This topic provides knowledge about the notion of stakeholder requirement, and the related systems engineering activities and methods. The set of Stakeholder Requirements represents one of the major outcomes of these activities.
+
To allow a clear description of the activities of stakeholder needs and requirements to be described, a generic view of the business teams and roles involved in a typical enterprise has been used below., tThis includes teams such as business management and business operations;, and roles including requirements engineer and business analyst. For an overview of these roles and how they enable both stakeholder and business requirements across the layers of a typical enterprise see [[Life Cycle Processes and Enterprise Need]].
  
====Purpose and definition====
+
==Principles and Concepts==
  
 +
===Identifying Stakeholders===
 +
Stakeholders of a SoI may vary throughout the {{Term|Life Cycle (glossary)|life cycle}}. Thus, in order to get a complete set of needs and subsequent requirements, it is important to consider all stages of the {{Term|Life Cycle Model (glossary)|life cycle model}} when identifying the stakeholders or classes of stakeholders.
  
The purpose of Stakeholder Requirements definition is to consolidate the initial engineering elements related a System of Interest, or those related to a system or a System Element defined in the context of the physical architecture of a parent system; and to formalize a set of needs, expectations, goals or objectives into clear, concise, and verifiable stakeholder requirements.
+
Every system has its own stages of life, which typically include stages such as concept, development, production, operations, sustainment, and retirement (for more information, please see [[Life Cycle Models]]). For each stage, a list of all stakeholders having an interest in the future system must be identified. The goal is to get every stakeholder’s point of view for every stage of the system life in order to consolidate a complete set of stakeholder needs that can be prioritized and transformed into the set of stakeholder requirements as exhaustively as possible.  Examples of stakeholders are provided in Table 1.
 +
{|
 +
|+'''Table 1. Stakeholder Identification Based on Life Cycle Stages.''' (SEBoK Original)
 +
!Life Cycle Stage
 +
!Example of Related Stakeholders
 +
|-
 +
|Engineering
 +
|Acquirer, panel of potential users, marketing division, research and development department, standardization body, suppliers, verification and validation team, production system, regulator/certification authorities, etc.
 +
|-
 +
|Development
 +
|Acquirer, suppliers (technical domains for components realization), design engineers, integration team, etc.
 +
|-
 +
|Transfer for Production or for Use
 +
|Quality control, production system, operators, etc.
 +
|-
 +
|Logistics and Maintenance
 +
|Supply chain, support services, trainers, etc.
 +
|-
 +
|Operation
 +
|Normal users, unexpected users, etc.
 +
|-
 +
|Disposal
 +
|Operators, certifying body, etc.
 +
|}
  
The distinction between stakeholder requirements and needs is related to which system is concerned; for example, a stakeholder requirement for a system may be allocated to a software element of the system, viewed as needs by the supplier of this software element, and further elaborated as (a) requirement(s) for this software element.
+
===Identifying Stakeholder Needs===
 +
Once business management is satisfied that their needs and requirements are reasonably complete, they pass them on to the business operations team. Here, the Stakeholder Needs and Requirements (SNR) Definition Process uses the ConOps, or Strategic Business Plan (SBP), and the life-cycle concepts as guidance.  The requirements engineer (RE) or business analyst (BA) leads stakeholders from the business operations layer through a structured process to elicit stakeholder needs—in the form of a refined OpsCon (or similar document) and other life-cycle concepts.  The RE or BA may use a fully or partially structured process to elicit specific needs, as described in models such as user stories, use cases, scenarios, system concepts, and operational concepts.  
  
 +
===Identifying Stakeholder Requirements===
 +
Stakeholder needs are transformed into a formal set of stakeholder requirements, which are captured as models or documented as textual requirements in and output typically called a Stakeholder Requirement Specification (StRS), Stakeholder Requirement Document (StRD) or similar.  That transformation should be guided by a well‐defined, repeatable, rigorous, and documented process of requirements analysis. This requirements analysis may involve the use of functional flow diagrams, timeline analysis, N2 Diagrams, design reference missions, modeling and simulations, movies, pictures, states and modes analysis, fault tree analysis, failure modes and effects analysis, and trade studies.
  
==Principles and concepts==
+
===Collecting Stakeholder Needs and Requirements===
 
+
There are many ways to collect stakeholder needs and requirements. It is recommended that several techniques or methods be considered during elicitation activities to better accommodate the diverse set of sources, including:
===From capture of needs to Stakeholder Requirements definition===
+
* Structured brainstorming workshops
 
+
* Interviews and questionnaires
Several steps are necessary to state the maturity of the needs, from "real needs" to reaching a realized solution (that could be called "realized needs"). Figure 1 presents the “Cycle of needs” as it can be deduced from Professor Shoji Shiba and Professor Noriaki Kano's works and courses, and is adapted here for systems engineering purposes.
+
* Technical, operational, and/or strategy documentation review
 
+
* Simulations and visualizations
<center> FIGURE 1 </center>
+
* Prototyping
 
+
* Modeling
<center>Figure 1 – Cycle of needs</center>
+
* Feedback from [[System Verification|verification]] and [[System Validation|validation]] processes,
 
+
* Review of the outcomes from the [[System Analysis|system analysis]] process (ISO/IEC 2015)
 
+
* Quality function deployment (QFD) - can be used during the needs analysis and is a technique for deploying the "voice of the customer”. It provides a fast way to translate customer needs into requirements. (Hauser and Clausing 1988)
Figure 1 shows these steps and the position of the Stakeholder Requirements and System Requirements in the engineering cycle:
+
* Use case diagrams (OMG 2010)
#'''Real needs''' are those that lie behind any perception, and indeed may not be perceived at all; they are conditioned by the context in which people live. As an example, a generic need could be “identify infectious diseases easily”. It often looks like a simple action.
+
* Activity diagrams (OMG 2010)
#'''Perceived needs''' are based on a person’s awareness (possibly imperfect) that something is wrong, that there is a lack of something, that there is something that could improve a situation, or that there are business / investment / market opportunities. Perceived needs are often presented as a list of more or less organized expectations, often resulting from an analysis of the usage conditions for the considered action (see Mission Analysis and Marketing Analysis topic). Following on from the example above, the real need might be perceived as a need to "carry out medical tests in particular circumstances (laboratories, point of care, hospital, human dispensary)". Since the real need is seldom expressed, the richness of the knowledge of the perceived needs is used as a basis for potential solutions. This step has to be as complete as possible to cover all the contexts of use.
+
* Functional flow block diagrams (Oliver, Kelliher, and Keegan 1997)
#'''Expressed needs''' originate from perceived needs in the form of generic actions or constraints, and are typically prioritized.  For example, if safety is the top concern, the expressed need “Protect the operator against contamination” may take priority over other expressed needs, such as “Assist in the execution of tests.” Here the analysis of the expected mission or services in terms of Operational Scenarios takes place.
 
#'''Retained needs''' are selected from a more or less important number of expressed needs. The selection uses the prioritization of expressed needs in order to achieve something or make solutions feasible. The retained needs allow the consideration of potential solutions for a System-of-Interest. The retained needs are generally called "Stakeholder Requirements,” and exploration of potential solutions must start from this step. The various solutions suggested at this step are not yet products but describe means of satisfying the Stakeholder Requirements. Each potential solution imposes constraints on the future System of Interest.
 
#'''Specified needs''', generally called “System Requirements”, are the translation of the Stakeholder Requirements to represent the view and expression of the supplier of the problem or opportunity, having in mind potential feasible solutions. The expression of System Requirements means that potential solutions as systems exist or can be developed, manufactured, or bought.
 
#'''Realized needs''' are the Product, Service or Enterprise realized, taking into account every System Requirement (and hence Stakeholder Requirement).
 
 
 
===Stakeholders and their requirements===
 
 
 
Needs, expectations, objectives are collected through stakeholders' interviews (including user surveys), technical documents, feedback from the Verification Process and the Validation Process, and from outcomes of the System Analysis Process.  (ISO/IEC. 2008)
 
 
 
Stakeholder Requirements are developed from these needs. To get a complete set of Stakeholder Requirements, it is necessary to consider the System of Interest or the parent system in various stages across its typical life cycle. Every system has its own stages of life; these may include transfer for use or deployment, normal use in operation, production, maintenance, and disposal. For each stage, a list of all actors having an interest in the future system is identified. Those actors are called Stakeholders. The aim is to get every stakeholder point of view for every stage of the system life in order to establish the list of Stakeholder Requirements as exhaustively as possible.
 
 
 
Examples of Stakeholders are provided in Table 1.
 
 
 
 
 
<center> TABLE 1 </center>
 
 
 
<center>Table 1 – Stakeholders Identification Based on Life Cycle Stages</center>
 
  
 +
=== From the Capture of Stakeholder Needs to the Definition of Stakeholder Requirements ===
 +
Several steps are necessary to understand the maturity of stakeholder needs and to understand how to improve upon that maturity. Figure 1 presents the ''cycle of needs ''as it can be deduced from Professor Shoji Shiba's and Professor Noriaki Kano's works and courses, and is adapted here for systems engineering (SE) purposes.
 +
[[File:SEBoKv05_KA-SystDef_Cycle_of_needs.png|centre|thumb|600x600px|
 +
'''Figure 1. Cycle of Needs (Faisandier 2012).''' Permission granted by Sinergy'Com. All other rights are reserved by the copyright owner.
 +
]]
 +
Figure 1 shows the steps and the position of the stakeholder requirements and system requirements in the engineering cycle. Below are explanations of each stage of requirements (Faisandier 2012); to illustrate this, consider this example of a system related to infectious disease identification:
 +
* '''Real needs '''are those that lie behind any perceived needs (see below); they are conditioned by the context in which people live. As an example, a generic need could be the ability to ''identify infectious diseases easily.''Often, real needs appear to be simple tasks.
 +
* '''Perceived needs '''are based on a person’s awareness that something is wrong, that something is lacking, that improvements could be made, or that there are business, investment, or market opportunities that are not being capitalized upon. Perceived needs are often presented as a list of organized expectations resulting from an analysis of the usage conditions for the considered action (see [[Business or Mission Analysis]]). Following from the infectious disease example above, the real need might be perceived as a need to ''carry out medical tests in particular circumstances (laboratories, points of care, hospitals, and/or human dispensaries). ''Since the real need is seldom clearly expressed, richness of the knowledge of the perceived needs is used as a basis for potential solutions. This step has to be as complete as possible to cover all the contexts of use.
 +
* '''Expressed needs '''originate from perceived needs in the form of generic actions or constraints, and are typically prioritized. In the example, if safety is the primary concern, the expressed need to ''protect the operator against contamination ''may take priority over other expressed needs such as ''assist in the execution of tests. ''When determining the expressed needs, the analysis of the expected mission or services in terms of operational scenarios takes place.
 +
* '''Retained needs '''are selected from the expressed needs. The selection process uses the prioritization of expressed needs to achieve a solution or to make attaining solutions feasible. The retained needs allow the consideration of potential solutions for a SoI. These retained ''stakeholder intentions do not serve as stakeholder requirements, since they often lack definition, analysis, and possibly consistency and feasibility. Using the concept of operations to aid the understanding of the stakeholder intentions at the organizational level and the system operational concept from the system perspective, requirements engineering leads stakeholders from those initial intentions to structured and more formal stakeholder requirement statements, ''ISO/IEC/IEEE 29148 ''Systems and software engineering - Requirements engineering '' (ISO 2011). Characteristics of good requirements can be found in (ISO 2011). Exploration of potential solutions must start from this step. The various solutions suggested at this step are not yet products, but describe means of satisfying the stakeholder requirements. Each potential solution imposes constraints on the potential future SoI.
 +
* '''Specified needs''', are the translation of the stakeholder needs to represent the views of the supplier, keeping in mind the potential, preferred, and feasible solutions. Specified needs are translated into system requirements. Consistent practice has shown this process requires {{Term|Iteration (glossary)|iterative}} and {{Term|Recursion (glossary)|recursive}} steps in parallel with other life cycle processes through the system design hierarchy (ISO 2011).
 +
* '''Realized needs '''are the product, service, or enterprise realized, taking into account every specified need (and hence, the retained needs).
 +
Each class of needs listed above aligns with an area of the SE process. For example, the development of ''specified needs ''requirements is discussed in the [[System Requirements]] topic. For more information on how requirements are used in the systems engineering process, please see the [[System Definition]] knowledge area (KA).
  
 
===Classification of Stakeholder Requirements===
 
===Classification of Stakeholder Requirements===
 
+
Several classifications of stakeholder requirements are possible, e.g. ISO/IEC 29148, section 9.4.2.3 (ISO 2011) provides a useful set of elements for classification. Examples of classification of stakeholder requirements include: service or functional, operational, interface, environmental, human factors, logistical, maintenance, design, production, verification requirements, validation, deployment, training, certification, retirement, regulatory, environmental, reliability, availability, maintainability, design, usability, quality, safety, and security requirements. Stakeholders will also be faced with a number of constraints, including: enterprise, business, project, design, realization, and process constraints.
Several classifications of Stakeholder Requirements are possible, e.g. ISO/IEC 29148, section 9.4.2.3 (ISO/IEC. 2011) provides interesting elements for classification. These classifications of Stakeholder Requirements have the goal to facilitate the classification of System Requirements and, subsequently, to prepare the design and validation activities. One possible way to classify the Stakeholder Requirements is under the following categories as indicated in Table 2.
 
 
 
<center> TABLE 2 </center>
 
 
 
<center>Table 2 – Example of Stakeholder Requirements classification</center>
 
  
 
==Process Approach==
 
==Process Approach==
  
===Purpose===
+
===Activities of the Process===
 +
Major activities and tasks performed during this process include the following:
 +
* Identify the stakeholders or classes of stakeholders across the life cycle.
 +
* Elicit, capture, or consolidate the stakeholder needs, expectations, and objectives as well as any constraints coming from the mission and business analysis processes.
 +
*Refine the OpsCon and other life-cycle concepts (acquisition concept, deployment concept, support concept, and retirement concept).
 +
*Prioritize the stakeholder needs.
 +
*Transform the prioritized and retained stakeholder needs into stakeholder requirements.
 +
* Verify the quality of each stakeholder requirement and of the set of stakeholder requirements using the characteristics of good requirements identified in the [[System Requirements]] article.
 +
* Validate the content and the relevance of each stakeholder requirement with corresponding stakeholder representatives providing {{Term|Rationale (glossary)|rationale (glossary)}} for the existence of the requirement.
 +
* Identify potential {{Term|Risk (glossary)|risks}} (or threats and hazards) that could be generated by the stakeholder requirements (for further information, see [[Risk Management]]).
 +
* Synthesize, record, and manage the stakeholder requirements and potential associated risks.
  
The purpose of the Stakeholder Requirements Definition Process is to identify all needs and expectations from every stakeholder (acquirer, users and others) and to define clear, concise, and verifiable Stakeholder Requirements.
+
===Artifacts, Methods and Modeling Techniques===
  
'''Generic inputs''' are concept of operation and/or mission definition, market studies, preliminary stakeholder needs and expectations, business models, etc.
+
This process may create several artifacts, such as:
 +
* Recommendations to refine the Business Requirement Specification (if necessary)
 +
* Refined life-cycle concepts (OpsCon, acquisition concept, deployment concept, support concept, and retirement concept)
 +
* Stakeholder requirements (in the form of a model or a document containing textual requirements, such as the Stakeholder Requirement Specification)
 +
* Stakeholder interview reports
 +
* Stakeholder requirements database
 +
* Stakeholder requirements justification documents (for traceability purposes)
 +
* Input for draft verification and validation plans
  
'''Generic output''' is a set of consistent Stakeholder Requirements.
+
The content, format, layout and ownership of these artifacts will vary depending on who is creating them and in which domains they will be used.  Between these artifacts and the outputs of the process, activities should cover the information identified in the first part of this article.
  
 +
==Practical Considerations==
 +
Major pitfalls encountered with stakeholder requirements are presented in Table 3.
  
===Activities of the Process===
+
<center>
 +
{|
 +
|+'''Table 3. Major Pitfalls for Stakeholder Requirements.''' (SEBoK Original)
 +
!Pitfall
 +
!Description
 +
|-
 +
|'''Operator Role Not Considered'''
 +
|Sometimes engineers do not take into account the humans acting as operators inside a system or those who use the system and are outside of the system. As a consequence, elements are forgotten (e.g. roles of operators).
 +
|-
 +
|'''Exchanges with External Objects Forgotten'''
 +
|The exhaustiveness of requirements can be an issue; in particular, the interfaces with external objects of the context of the system can be forgotten (exchanges of matter, energy, information).
 +
|-
 +
|'''Physical Connections with External Objects Forgotten'''
 +
|Within the interface issue, physical connections of the system-of-interest with external objects can be forgotten (technological constraints).
 +
|-
 +
|'''Forgotten Stakeholders'''
 +
|Stakeholders can be forgotten, as everyone thinks of direct users, customers, and suppliers; however, one may fail to consider those who do not want the system to exist and malevolent persons.
 +
|}
 +
</center>
  
Major activities and tasks performed during this process include:
 
#Elicit, capture or consolidate the stakeholders' needs, expectations, objectives or requirements coming from Mission and Marketing Analysis of the System of Interest.
 
#And/or consolidate the stakeholder requirements applicable to the concerned system or System Element coming from the physical architecture of the parent system.
 
#Analyze the acquirers’ and users' needs and define corresponding Stakeholder Requirements.
 
#Explore, analyze, and identify needs and expectations of the other stakeholders (the list of the stakeholders depends on the system life cycle), including various life cycle constraints.
 
#Verify quality, completeness of each Stakeholder Requirement and consistency of the set of Stakeholder Requirements.
 
#Validate content and relevance of each Stakeholder Requirement with corresponding stakeholder representative providing Rational of the existence of the requirement.
 
#Identify potential Risks (or threats and hazards) that could be generated by the Stakeholder Requirements.
 
#Synthesize, record and manage the Stakeholder Requirements and potential associated Risks.
 
  
 +
Proven practices with stakeholder requirements are presented in Table 4.
  
===Artifacts and Ontology Elements===
+
<center>
 +
{|
 +
|+'''Table 4. Stakeholder Requirements Proven Practices.''' (SEBoK Original)
 +
!Practice
 +
!Description
 +
|-
 +
|'''Involve Stakeholders'''
 +
|Involve the stakeholders early in the stakeholder requirements development process.
 +
|-
 +
|'''Presence of Rationale'''
 +
|Capture the rationale for each stakeholder requirement.
 +
|-
 +
|'''Analyze Sources before Starting'''
 +
|Complete stakeholder requirements as much as possible before starting the definition of the system requirements.
 +
|-
 +
|'''Modeling Techniques'''
 +
|Use modeling techniques as indicated in sections above.
 +
|-
 +
|'''Requirements Management Tool'''
 +
|Consider using a requirements management tool. This tool should have the capability to trace linkages between the stakeholder requirements and the system requirements and to record the source of each stakeholder requirement.
 +
|}
 +
</center>
  
This process may create several artifacts such as:
+
==References==
#Stakeholder Requirements Document
+
===Works Cited===
#Stakeholder Interview Report
 
#Stakeholder Requirements Database
 
#Stakeholder Requirements Justification Document (for traceability purpose)
 
  
This process handles the ontology elements of Table 3.
+
Faisandier, A. 2012. ''Systems Architecture and Design.'' Belberaud, France: Sinergy'Com.
  
 +
Hauser, J. and D. Clausing. 1988. "The House of Quality." ''Harvard Business Review.'' (May - June 1988).
  
<center> TABLE 3 </center>
+
OMG. 2010. ''OMG Systems Modeling Language specification'', version 1.2. Needham, MA: Object Management Group. July 2010.
  
<center>Table 3 – Main ontology elements within stakeholder requirements definition</center>
+
Oliver, D., T. Kelliher, and J. Keegan. 1997. ''Engineering complex systems with models and objects''. New York, NY, USA: McGraw-Hill.
  
 +
ISO/IEC/IEEE. 2011. ''Systems and software engineering - Requirements engineering.'' Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission/ Institute of Electrical and Electronics Engineers (IEEE), (IEC), ISO/IEC/IEEE 29148.
  
===Methods and Modeling Techniques===
+
ISO/IEC/IEEE. 2015. ''[[ISO/IEC/IEEE 15288|Systems and Software Engineering -- System Life Cycle Processes]]''. Geneva, Switzerland: International Organisation for Standardisation / International Electrotechnical Commissions / Institute of Electrical and Electronics Engineers. ISO/IEC/IEEE 15288:2015.
It is recommended to consider several techniques or methods for identifying needs, expectations, and requirements during the elicitation activity to better accommodate the diverse set of requirements sources, including:
 
  
*Structured workshops with brainstorming
+
===Primary References===
*Interviews and questionnaires
+
ISO/IEC/IEEE. 2011. ''[[ISO/IEC/IEEE 29148|Systems and software engineering - Requirements engineering]]''. Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission/ Institute of Electrical and Electronics Engineers (IEEE), (IEC), ISO/IEC/IEEE 29148.
*Technical documentation review
 
*Simulations, prototyping, and modeling
 
*Organizational analysis techniques (e.g., Strengths, Weaknesses, Opportunities, Threats - SWOT analysis, product portfolio)
 
*Quality Function Deployment (QFD), which can be used during the needs analysis. QFD is a technique for deploying the "Voice of the Customer.” It provides a fast way to translate customer needs into requirements.
 
*Use Case Diagram of SysML (OMG. 2010)
 
*Activity Diagram of SysML (OMG. 2010)
 
*Functional Flow Block Diagram, etc.
 
  
 +
ISO/IEC/IEEE. 2015. ''[[ISO/IEC/IEEE 15288|Systems and Software Engineering -- System Life Cycle Processes]]''. Geneva, Switzerland: International Organisation for Standardisation / International Electrotechnical Commissions / Institute of Electrical and Electronics Engineers. ISO/IEC/IEEE 15288:2015.
  
==Practical Considerations==
+
ISO/IEC/IEEE. 2011. ''[[ISO/IEC/IEEE 42010|Systems and Software Engineering - Architecture Description]]''. Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission (IEC)/Institute of Electrical and Electronics Engineers (IEEE), [[ISO/IEC/IEEE 42010]].
Major pitfalls encountered with Stakeholder Requirements are presented in Table 4.
 
 
 
<center> TABLE 4 </center>
 
  
<center>Table 4 – Major pitfalls</center>
+
===Additional References===
 +
Buede, D.M. 2009. ''The engineering design of systems: Models and methods''. 2nd ed. Hoboken, NJ, USA: John Wiley & Sons Inc.
  
Proven practices with Stakeholder Requirements are presented in Table 5.
+
MITRE. 2011. "Requirements Engineering." ''Systems Engineering Guide.'' Accessed 9 March 2012 at http://www.mitre.org/work/systems_engineering/guide/se_lifecycle_building_blocks/requirements_engineering/.
  
<center> TABLE 5 </center>
+
MITRE. 2011. "Stakeholder Assessment and Management." ''Systems Engineering Guide.'' Accessed 9 March 2012 at http://www.mitre.org/work/systems_engineering/guide/enterprise_engineering/transformation_planning_org_change/stakeholder_assessment_management.html.
  
<center>Table 5 – Major proven practices</center>
+
===Relevant Videos===
 +
*[https://www.youtube.com/watch?v=YJ4wCbKJeXY How to Get Project Requirements from Project Stakeholders]
 +
*[https://www.youtube.com/watch?v=bK-y0CaGkhU Requirements Engineering Challenges]
 +
*[https://www.youtube.com/watch?v=GSe4xIy-iBE Requirements Engineering Processes]
 +
*[https://www.youtube.com/watch?v=vpNnZDwC_vs User and System Requirements]
 +
----
 +
<center>[[Business or Mission Analysis|< Previous Article]] | [[Concept Definition|Parent Article]] | [[System Definition|Next Article >]]</center>
  
 +
<center>'''SEBoK v. 2.2, released 15 May 2020'''</center>
  
==Citations==
+
[[Category:Concept Definition]]
==Primary References==
 
==Additional References and Readings==
 

Latest revision as of 17:53, 14 May 2020


Lead Authors: Alan Faisandier, Garry Roedler, Contributing Author: Rick Adcock


Stakeholder needs and requirementsStakeholder needs and requirements represent the views of those at the business or enterprise operations level—that is, of usersusers, acquirersacquirers, customerscustomers, and other stakeholdersstakeholders as they relate to the problem (or opportunity), as a set of requirements for a solution that can provide the services needed by the stakeholders in a defined environment. Using enterprise-level life cycle concepts (see Business or Mission Analysis for details) as guidance, stakeholders are led through a structured process to elicit stakeholder needs (in the form of a refined set of system-level life-cycle concepts). Stakeholder needs are transformed into a defined set of Stakeholder Requirements, which may be documented in the form of a model, a document containing textual requirement statements or both.

Stakeholder requirements play major roles in systems engineering, as they:

  • Form the basis of system requirementssystem requirements activities.
  • Form the basis of system validationvalidation and stakeholder acceptance .
  • Act as a reference for integrationintegration and verificationverification activities.
  • Serve as means of communication between the technical staff, management, finance department, and the stakeholder community.

This topic describes the definition of stakeholder needs and requirements which involves the activities necessary to elicit and prioritize the needs of the stakeholder(s), and transform those needs into a set of defined stakeholder requirements. Defining the problem or the issue to be solved, identifying the opportunity for developing a new solution, or improving a system-of-interest (SoI)system-of-interest (SoI) must begin prior to starting the activities necessary to define stakeholder needs and requirements. This means that an initial context of use of the new or modified mission, operation, or capability has already been characterized (see Business or Mission Analysis). System requirements are considered in detail during system definitionsystem definition. None of the above can be considered complete until consistency between the two has been achieved, as demonstrated by traceabilitytraceability, for which a number of iterations may be needed.

Purpose and Definition

The purpose of the Stakeholder Needs and Requirements definition activities are to elicit a set of clear and concise needs related to a new or changed mission for an enterprise (see mission analysis (MA) for information relevant to identifying and defining the mission or operation), and to transform these stakeholder needs into verifiable stakeholder requirements.

Stakeholders may well begin with desires, and expectations that may contain vague, ambiguous statements that are difficult to use for SE activities. Care must be taken to ensure that those desires and expectations are coalesced into a set of clear and concise need statements that are useful as a start point for system definition. These need statements will then need to be further clarified and translated into more engineering-oriented language in a set of stakeholder requirements to enable proper architecture definition and requirement activities. As an example, a need or an expectation such as, to easily manoeuvre a car in order to park, will be transformed in a set of stakeholder requirementsstakeholder requirements to a statement such as, increase the driviability of the car, decrease the effort for handling, assist the piloting, protect the coachwork against shocks or scratches, etc.

To allow a clear description of the activities of stakeholder needs and requirements to be described, a generic view of the business teams and roles involved in a typical enterprise has been used below., tThis includes teams such as business management and business operations;, and roles including requirements engineer and business analyst. For an overview of these roles and how they enable both stakeholder and business requirements across the layers of a typical enterprise see Life Cycle Processes and Enterprise Need.

Principles and Concepts

Identifying Stakeholders

Stakeholders of a SoI may vary throughout the life cyclelife cycle. Thus, in order to get a complete set of needs and subsequent requirements, it is important to consider all stages of the life cycle modellife cycle model when identifying the stakeholders or classes of stakeholders.

Every system has its own stages of life, which typically include stages such as concept, development, production, operations, sustainment, and retirement (for more information, please see Life Cycle Models). For each stage, a list of all stakeholders having an interest in the future system must be identified. The goal is to get every stakeholder’s point of view for every stage of the system life in order to consolidate a complete set of stakeholder needs that can be prioritized and transformed into the set of stakeholder requirements as exhaustively as possible. Examples of stakeholders are provided in Table 1.

Table 1. Stakeholder Identification Based on Life Cycle Stages. (SEBoK Original)
Life Cycle Stage Example of Related Stakeholders
Engineering Acquirer, panel of potential users, marketing division, research and development department, standardization body, suppliers, verification and validation team, production system, regulator/certification authorities, etc.
Development Acquirer, suppliers (technical domains for components realization), design engineers, integration team, etc.
Transfer for Production or for Use Quality control, production system, operators, etc.
Logistics and Maintenance Supply chain, support services, trainers, etc.
Operation Normal users, unexpected users, etc.
Disposal Operators, certifying body, etc.

Identifying Stakeholder Needs

Once business management is satisfied that their needs and requirements are reasonably complete, they pass them on to the business operations team. Here, the Stakeholder Needs and Requirements (SNR) Definition Process uses the ConOps, or Strategic Business Plan (SBP), and the life-cycle concepts as guidance. The requirements engineer (RE) or business analyst (BA) leads stakeholders from the business operations layer through a structured process to elicit stakeholder needs—in the form of a refined OpsCon (or similar document) and other life-cycle concepts. The RE or BA may use a fully or partially structured process to elicit specific needs, as described in models such as user stories, use cases, scenarios, system concepts, and operational concepts.

Identifying Stakeholder Requirements

Stakeholder needs are transformed into a formal set of stakeholder requirements, which are captured as models or documented as textual requirements in and output typically called a Stakeholder Requirement Specification (StRS), Stakeholder Requirement Document (StRD) or similar. That transformation should be guided by a well‐defined, repeatable, rigorous, and documented process of requirements analysis. This requirements analysis may involve the use of functional flow diagrams, timeline analysis, N2 Diagrams, design reference missions, modeling and simulations, movies, pictures, states and modes analysis, fault tree analysis, failure modes and effects analysis, and trade studies.

Collecting Stakeholder Needs and Requirements

There are many ways to collect stakeholder needs and requirements. It is recommended that several techniques or methods be considered during elicitation activities to better accommodate the diverse set of sources, including:

  • Structured brainstorming workshops
  • Interviews and questionnaires
  • Technical, operational, and/or strategy documentation review
  • Simulations and visualizations
  • Prototyping
  • Modeling
  • Feedback from verification and validation processes,
  • Review of the outcomes from the system analysis process (ISO/IEC 2015)
  • Quality function deployment (QFD) - can be used during the needs analysis and is a technique for deploying the "voice of the customer”. It provides a fast way to translate customer needs into requirements. (Hauser and Clausing 1988)
  • Use case diagrams (OMG 2010)
  • Activity diagrams (OMG 2010)
  • Functional flow block diagrams (Oliver, Kelliher, and Keegan 1997)

From the Capture of Stakeholder Needs to the Definition of Stakeholder Requirements

Several steps are necessary to understand the maturity of stakeholder needs and to understand how to improve upon that maturity. Figure 1 presents the cycle of needs as it can be deduced from Professor Shoji Shiba's and Professor Noriaki Kano's works and courses, and is adapted here for systems engineering (SE) purposes.

Figure 1. Cycle of Needs (Faisandier 2012). Permission granted by Sinergy'Com. All other rights are reserved by the copyright owner.

Figure 1 shows the steps and the position of the stakeholder requirements and system requirements in the engineering cycle. Below are explanations of each stage of requirements (Faisandier 2012); to illustrate this, consider this example of a system related to infectious disease identification:

  • Real needs are those that lie behind any perceived needs (see below); they are conditioned by the context in which people live. As an example, a generic need could be the ability to identify infectious diseases easily.Often, real needs appear to be simple tasks.
  • Perceived needs are based on a person’s awareness that something is wrong, that something is lacking, that improvements could be made, or that there are business, investment, or market opportunities that are not being capitalized upon. Perceived needs are often presented as a list of organized expectations resulting from an analysis of the usage conditions for the considered action (see Business or Mission Analysis). Following from the infectious disease example above, the real need might be perceived as a need to carry out medical tests in particular circumstances (laboratories, points of care, hospitals, and/or human dispensaries). Since the real need is seldom clearly expressed, richness of the knowledge of the perceived needs is used as a basis for potential solutions. This step has to be as complete as possible to cover all the contexts of use.
  • Expressed needs originate from perceived needs in the form of generic actions or constraints, and are typically prioritized. In the example, if safety is the primary concern, the expressed need to protect the operator against contamination may take priority over other expressed needs such as assist in the execution of tests. When determining the expressed needs, the analysis of the expected mission or services in terms of operational scenarios takes place.
  • Retained needs are selected from the expressed needs. The selection process uses the prioritization of expressed needs to achieve a solution or to make attaining solutions feasible. The retained needs allow the consideration of potential solutions for a SoI. These retained stakeholder intentions do not serve as stakeholder requirements, since they often lack definition, analysis, and possibly consistency and feasibility. Using the concept of operations to aid the understanding of the stakeholder intentions at the organizational level and the system operational concept from the system perspective, requirements engineering leads stakeholders from those initial intentions to structured and more formal stakeholder requirement statements, ISO/IEC/IEEE 29148 Systems and software engineering - Requirements engineering (ISO 2011). Characteristics of good requirements can be found in (ISO 2011). Exploration of potential solutions must start from this step. The various solutions suggested at this step are not yet products, but describe means of satisfying the stakeholder requirements. Each potential solution imposes constraints on the potential future SoI.
  • Specified needs, are the translation of the stakeholder needs to represent the views of the supplier, keeping in mind the potential, preferred, and feasible solutions. Specified needs are translated into system requirements. Consistent practice has shown this process requires iterativeiterative and recursiverecursive steps in parallel with other life cycle processes through the system design hierarchy (ISO 2011).
  • Realized needs are the product, service, or enterprise realized, taking into account every specified need (and hence, the retained needs).

Each class of needs listed above aligns with an area of the SE process. For example, the development of specified needs requirements is discussed in the System Requirements topic. For more information on how requirements are used in the systems engineering process, please see the System Definition knowledge area (KA).

Classification of Stakeholder Requirements

Several classifications of stakeholder requirements are possible, e.g. ISO/IEC 29148, section 9.4.2.3 (ISO 2011) provides a useful set of elements for classification. Examples of classification of stakeholder requirements include: service or functional, operational, interface, environmental, human factors, logistical, maintenance, design, production, verification requirements, validation, deployment, training, certification, retirement, regulatory, environmental, reliability, availability, maintainability, design, usability, quality, safety, and security requirements. Stakeholders will also be faced with a number of constraints, including: enterprise, business, project, design, realization, and process constraints.

Process Approach

Activities of the Process

Major activities and tasks performed during this process include the following:

  • Identify the stakeholders or classes of stakeholders across the life cycle.
  • Elicit, capture, or consolidate the stakeholder needs, expectations, and objectives as well as any constraints coming from the mission and business analysis processes.
  • Refine the OpsCon and other life-cycle concepts (acquisition concept, deployment concept, support concept, and retirement concept).
  • Prioritize the stakeholder needs.
  • Transform the prioritized and retained stakeholder needs into stakeholder requirements.
  • Verify the quality of each stakeholder requirement and of the set of stakeholder requirements using the characteristics of good requirements identified in the System Requirements article.
  • Validate the content and the relevance of each stakeholder requirement with corresponding stakeholder representatives providing rationale (glossary)rationale (glossary) for the existence of the requirement.
  • Identify potential risksrisks (or threats and hazards) that could be generated by the stakeholder requirements (for further information, see Risk Management).
  • Synthesize, record, and manage the stakeholder requirements and potential associated risks.

Artifacts, Methods and Modeling Techniques

This process may create several artifacts, such as:

  • Recommendations to refine the Business Requirement Specification (if necessary)
  • Refined life-cycle concepts (OpsCon, acquisition concept, deployment concept, support concept, and retirement concept)
  • Stakeholder requirements (in the form of a model or a document containing textual requirements, such as the Stakeholder Requirement Specification)
  • Stakeholder interview reports
  • Stakeholder requirements database
  • Stakeholder requirements justification documents (for traceability purposes)
  • Input for draft verification and validation plans

The content, format, layout and ownership of these artifacts will vary depending on who is creating them and in which domains they will be used. Between these artifacts and the outputs of the process, activities should cover the information identified in the first part of this article.

Practical Considerations

Major pitfalls encountered with stakeholder requirements are presented in Table 3.

Table 3. Major Pitfalls for Stakeholder Requirements. (SEBoK Original)
Pitfall Description
Operator Role Not Considered Sometimes engineers do not take into account the humans acting as operators inside a system or those who use the system and are outside of the system. As a consequence, elements are forgotten (e.g. roles of operators).
Exchanges with External Objects Forgotten The exhaustiveness of requirements can be an issue; in particular, the interfaces with external objects of the context of the system can be forgotten (exchanges of matter, energy, information).
Physical Connections with External Objects Forgotten Within the interface issue, physical connections of the system-of-interest with external objects can be forgotten (technological constraints).
Forgotten Stakeholders Stakeholders can be forgotten, as everyone thinks of direct users, customers, and suppliers; however, one may fail to consider those who do not want the system to exist and malevolent persons.


Proven practices with stakeholder requirements are presented in Table 4.

Table 4. Stakeholder Requirements Proven Practices. (SEBoK Original)
Practice Description
Involve Stakeholders Involve the stakeholders early in the stakeholder requirements development process.
Presence of Rationale Capture the rationale for each stakeholder requirement.
Analyze Sources before Starting Complete stakeholder requirements as much as possible before starting the definition of the system requirements.
Modeling Techniques Use modeling techniques as indicated in sections above.
Requirements Management Tool Consider using a requirements management tool. This tool should have the capability to trace linkages between the stakeholder requirements and the system requirements and to record the source of each stakeholder requirement.

References

Works Cited

Faisandier, A. 2012. Systems Architecture and Design. Belberaud, France: Sinergy'Com.

Hauser, J. and D. Clausing. 1988. "The House of Quality." Harvard Business Review. (May - June 1988).

OMG. 2010. OMG Systems Modeling Language specification, version 1.2. Needham, MA: Object Management Group. July 2010.

Oliver, D., T. Kelliher, and J. Keegan. 1997. Engineering complex systems with models and objects. New York, NY, USA: McGraw-Hill.

ISO/IEC/IEEE. 2011. Systems and software engineering - Requirements engineering. Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission/ Institute of Electrical and Electronics Engineers (IEEE), (IEC), ISO/IEC/IEEE 29148.

ISO/IEC/IEEE. 2015. Systems and Software Engineering -- System Life Cycle Processes. Geneva, Switzerland: International Organisation for Standardisation / International Electrotechnical Commissions / Institute of Electrical and Electronics Engineers. ISO/IEC/IEEE 15288:2015.

Primary References

ISO/IEC/IEEE. 2011. Systems and software engineering - Requirements engineering. Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission/ Institute of Electrical and Electronics Engineers (IEEE), (IEC), ISO/IEC/IEEE 29148.

ISO/IEC/IEEE. 2015. Systems and Software Engineering -- System Life Cycle Processes. Geneva, Switzerland: International Organisation for Standardisation / International Electrotechnical Commissions / Institute of Electrical and Electronics Engineers. ISO/IEC/IEEE 15288:2015.

ISO/IEC/IEEE. 2011. Systems and Software Engineering - Architecture Description. Geneva, Switzerland: International Organization for Standardization (ISO)/International Electrotechnical Commission (IEC)/Institute of Electrical and Electronics Engineers (IEEE), ISO/IEC/IEEE 42010.

Additional References

Buede, D.M. 2009. The engineering design of systems: Models and methods. 2nd ed. Hoboken, NJ, USA: John Wiley & Sons Inc.

MITRE. 2011. "Requirements Engineering." Systems Engineering Guide. Accessed 9 March 2012 at http://www.mitre.org/work/systems_engineering/guide/se_lifecycle_building_blocks/requirements_engineering/.

MITRE. 2011. "Stakeholder Assessment and Management." Systems Engineering Guide. Accessed 9 March 2012 at http://www.mitre.org/work/systems_engineering/guide/enterprise_engineering/transformation_planning_org_change/stakeholder_assessment_management.html.

Relevant Videos


< Previous Article | Parent Article | Next Article >
SEBoK v. 2.2, released 15 May 2020