Difference between revisions of "What Requirements Are"

From CNM Wiki
Jump to: navigation, search
(True/False questions)
 
(27 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[File:Cnm-digital.png|400px|thumb|right|[[CNM Cyber]]]][[What Requirements Are]] (hereinafter, the ''Lectio'') is the [[lectio|lesson part]] of the '''[[Digital Transformations]]''' [[lesson]] that introduces its participants to the development of [[CNM Cyber]]. This ''lesson'' belongs to the [[Introduction to CNM Cyber]] session of the [[CNM Cyber Orientation]].
+
[[File:Cnm-digital.png|400px|thumb|right|[[CNMCyber suite]]s]][[What Requirements Are]] (hereinafter, the ''Lectio'') is the [[lectio|lesson part]] of the '''[[Digital Transformations]]''' [[lesson]] that introduces its participants to the development of [[CNMCyber]]. This ''lesson'' belongs to the [[CNMC for Experience]] session of [[EmployableU Concepts]].
  
  
 
==Content==
 
==Content==
The predecessor [[lectio]] is [[What CNM Agile Is]].
+
The predecessor [[lectio]] is [[What the DevOps Is]].
  
===Key terms===
+
===Script===
:'''[[Requirement]]'''. An expressed demand, desire, expectation, and/or wish to have or not to have a certain [[marketable]] and/or a certain capability, condition, feature, and/or property. The plural term, [[Requirement|requirements]], may refer to the aggregate of various ''requirements'' that the [[product owner]] or another authority for the ''requested product'' and/or its development [[process]] has approved, verified, and/or validated.<div style="background-color:#efefef; padding: 5px; margin: 15px;">
+
:The [[requirement]]s the [[document]]s that represent the visions of what needs to be developed. Creation of [[requirement]]s is neither an easy nor straightforward process.
:*'''[[Product epic]]'''. A detailed description of a proposed product that is designed to make its potential consumer understand what this product shall do. At [[CNM Cyber]], the ''Epic'' is any [[wikipage]] that describes a desired product.
+
 
:*'''[[User story]]'''. A brief description of a [[solution requirement]] to a desired system that is written from the point of view of a [[customer]] or [[end-user]] of this system. In other words, the ''story'' is a high-level, informal, brief, non-technical description of a solution capability that provides value to its [[stakeholder]]. The ''story'' is typically one or two sentences long and provides the minimum information necessary to allow a developer to estimate the work required to implement it. <code>In order to ..., as a ..., I need to ...</code> or, using another format, <code>In order to [achieve some goal], as a [type of user], I need to [perform some task or execute some function]</code> is a generic example of the ''story''.</div>
+
:Initially, [[CNMCyber Team]] creates [[product epic]]s. At [[CNMCyber]], they are the [[wikipage]]s that describe the new [[deliverable]]s that need to be developed. The [[:Category:Product Epics|product epics' category]] lists of the available ''epics''.
  
:'''[[Requirements specification]]'''. A [[requirement]] in a form of technical description of a proposed [[system]].<div style="background-color:#efefef; padding: 5px; margin: 15px;">
+
:These [[product epic]]s are helpful to clarify the vision of new ''deliverables'', but they are rarely clear or specific for developers to implement and not useful for [[CNMCyber Team]] to accept developers' work.
:*'''[[CNM Cyber requirements]]'''. The [[requirements specification]] for [[CNM Cyber]].
 
:*'''[[CNM Cloud requirements]]'''. The [[requirements specification]] for [[CNM Cloud]].</div>
 
  
===Script===
+
:To make the ''epics'' usable for the product developers, these ''epics'' are chunked in [[user story|user stori]]es. Every ''story'' represents one function or feature and is written from the point of view of an [[end-user]]. To create the ''stories'', [[CNMCyber Team]] uses a simple format, <code>In order to ..., as a ..., I need to ...</code>. For instance, <code>In order to develop ''user stories'', as [[CNMCyber Team]] member, I need to know their format.</code>
:The [[requirement]]s represent the visions of what needs to be developed. Creation of [[requirement]]s is neither an easy nor straightforward process.
 
  
:Initially, the [[CNM Cyber Team]] creates [[product epic]]s. At [[CNM Cyber]], they are the [[wikipage]]s that describe the new [[deliverable]]s that need to be developed. The [[:Category:Product epics|product epics' category]] lists of the available ''epics''.
+
:For the developers, these ''stories'' indicate what needs to be developed. More thorough [[requirements specification]]s indicate the rest what the developers need to know. Those ''specifications'' include what rules and regulations exist, how the developers shall submit their works, etc. At [[CNMCyber]], one ''specification'', [[CNMCyber requirements]], clarifies the overall requirements for the [[CNMCyber]] development, while another, [[CNM Cloud requirements]], does so for the [[Opplet]] one.
  
:These [[product epic]]s are helpful to clarify the vision of new ''deliverables'', but they are rarely clear or specific for developers to implement and not useful for the [[CNM Cyber Team]] to accept developers' work.
+
:All of those ''requirements'' are created at [[CNM Wiki]] to be open to the general public. This policy serves two purposes.
  
:To make the ''epics'' usable for the product developers, these ''epics'' are chunked in [[user story|user stori]]es. Every ''story'' represents one function or feature and is written from the point of view of an [[end-user]]. To create the ''stories'', the [[CNM Cyber Team]] uses a simple format, <code>In order to ..., as a ..., I need to ...</code>. For instance, <code>In order to develop ''user stories'', as the [[CNM Cyber Team]] member, I need to know their format.</code>
+
:First, [[CNMCyber Team]] can solicit better feedback in that way.
  
:For the developers, these ''stories'' indicate what needs to be developed. More thorough [[requirements specification]]s indicate the rest what the developers need to know. Those ''specifications'' include what rules and regulations exist, how the developers shall submit their works, etc. At [[CNM Cyber]], one ''specification'', [[CNM Cyber requirements]], clarifies the overall requirements for the [[CNM Cyber]] development, while another, [[CNM Cloud requirements]], does so for the [[CNM Cloud]] one.
+
:Second, even pre-entry-level developers can see the complete development process 24 hours a day and 7 days a week.
  
:All of those ''requirements'' are created at [[CNM Wiki]] to be open to the general public. This policy serves two purposes.
+
:Having a variety of [[document]]s may create some confusions if some documents contradict each other. The concept of [[single source of truth]] ([[Single source of truth|SSOT]]) aims to solve that challenge. [[Product epic]]s are drafted at [[CNM Wiki]], but their approved versions are published on [[CNM Page]].
  
:First, the [[CNM Cyber Team]] can solicit better feedback in that way.
+
===Key terms===
 +
:[[Requirement]], [[product epic]], [[user story]], [[requirements specification]], [[CNMCyber requirements]], [[CNM Cloud requirements]], [[single source of truth]] ([[Single source of truth|SSOT]]), [[document]]
  
:Second, even pre-entry-level developers can see the complete development process 24 hours a day and 7 days a week.
+
===Closing===
 +
:Are you interested in working on [[requirement]]s for [[CNMCyber]]? --Yes/No/I'm not sure
  
'''[[What CNM Page Be]]''' is the successor [[lectio]].
+
'''[[What the Workforce Is]]''' is the successor [[lectio]].
  
 
==Questions==
 
==Questions==
 
===Lectio quiz===
 
:The answer is recorded for the lectio completion purpose:
 
:*Are you interested in working on [[requirement]]s for [[CNM Cyber]]? --Yes/No/I'm not sure/Let me think/Let's move on
 
  
 
===Placement entrance exam===
 
===Placement entrance exam===
Line 50: Line 45:
 
:*Every user story (does not) represents one function or feature.
 
:*Every user story (does not) represents one function or feature.
 
:*Every [[product epic]] (does not) represents one function or feature.
 
:*Every [[product epic]] (does not) represents one function or feature.
:*In order to ..., as a ..., I need to .... are some phrases used to write [[user stories]] at [[CNM Cyber]].
+
:*In order to ..., as a ..., I need to .... are some phrases used to write [[user stories]] at [[CNMCyber]].
:*In order to ..., as a ..., I need to .... are some phrases used to write [[product epic]]s at [[CNM Cyber]].
+
:*In order to ..., as a ..., I need to .... are some phrases used to write [[product epic]]s at [[CNMCyber]].
 
:*Requirement specifications have thorough information for developers.
 
:*Requirement specifications have thorough information for developers.
 
:*Requirement specifications (do not) include rules and regulations and how the developers shall submit their works, etc.
 
:*Requirement specifications (do not) include rules and regulations and how the developers shall submit their works, etc.

Latest revision as of 09:27, 15 November 2023

What Requirements Are (hereinafter, the Lectio) is the lesson part of the Digital Transformations lesson that introduces its participants to the development of CNMCyber. This lesson belongs to the CNMC for Experience session of EmployableU Concepts.


Content

The predecessor lectio is What the DevOps Is.

Script

The requirements the documents that represent the visions of what needs to be developed. Creation of requirements is neither an easy nor straightforward process.
Initially, CNMCyber Team creates product epics. At CNMCyber, they are the wikipages that describe the new deliverables that need to be developed. The product epics' category lists of the available epics.
These product epics are helpful to clarify the vision of new deliverables, but they are rarely clear or specific for developers to implement and not useful for CNMCyber Team to accept developers' work.
To make the epics usable for the product developers, these epics are chunked in user stories. Every story represents one function or feature and is written from the point of view of an end-user. To create the stories, CNMCyber Team uses a simple format, In order to ..., as a ..., I need to .... For instance, In order to develop user stories, as CNMCyber Team member, I need to know their format.
For the developers, these stories indicate what needs to be developed. More thorough requirements specifications indicate the rest what the developers need to know. Those specifications include what rules and regulations exist, how the developers shall submit their works, etc. At CNMCyber, one specification, CNMCyber requirements, clarifies the overall requirements for the CNMCyber development, while another, CNM Cloud requirements, does so for the Opplet one.
All of those requirements are created at CNM Wiki to be open to the general public. This policy serves two purposes.
First, CNMCyber Team can solicit better feedback in that way.
Second, even pre-entry-level developers can see the complete development process 24 hours a day and 7 days a week.
Having a variety of documents may create some confusions if some documents contradict each other. The concept of single source of truth (SSOT) aims to solve that challenge. Product epics are drafted at CNM Wiki, but their approved versions are published on CNM Page.

Key terms

Requirement, product epic, user story, requirements specification, CNMCyber requirements, CNM Cloud requirements, single source of truth (SSOT), document

Closing

Are you interested in working on requirements for CNMCyber? --Yes/No/I'm not sure

What the Workforce Is is the successor lectio.

Questions

Placement entrance exam

True/False questions

  • In comparison with user stories, product epics are more clear for developers work.
  • To make usable for developers ,product epics are chunked in user stories.
  • A user story is (not) written from the point of view of developer.
  • A user story is (not) written from the point of view of end-user.
  • A product epic is (not) written from the point of view of developer.
  • A product epic is (not) written from the point of view of end user.
  • user stories are chunked in product epics.
  • Every user story (does not) represents one function or feature.
  • Every product epic (does not) represents one function or feature.
  • In order to ..., as a ..., I need to .... are some phrases used to write user stories at CNMCyber.
  • In order to ..., as a ..., I need to .... are some phrases used to write product epics at CNMCyber.
  • Requirement specifications have thorough information for developers.
  • Requirement specifications (do not) include rules and regulations and how the developers shall submit their works, etc.