0% found this document useful (0 votes)
186 views26 pages

Chapter 5 - Documenting Requirements in Natural Language

This document discusses documenting requirements in natural language and some of the challenges that can arise. It covers five transformational processes that are most relevant for requirements engineering: nominalization, nouns without reference indices, universal quantifiers, incompletely specified conditions, and incompletely specified process verbs. The document also introduces using templates to help construct requirements and reduce language effects, with templates for autonomous system activities, user interactions, and interface requirements.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
186 views26 pages

Chapter 5 - Documenting Requirements in Natural Language

This document discusses documenting requirements in natural language and some of the challenges that can arise. It covers five transformational processes that are most relevant for requirements engineering: nominalization, nouns without reference indices, universal quantifiers, incompletely specified conditions, and incompletely specified process verbs. The document also introduces using templates to help construct requirements and reduce language effects, with templates for autonomous system activities, user interactions, and interface requirements.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

CSEB274/

3443
Requirements
Engineering
UNIVERSITI TENAGA
NASIONAL
MODULE 5.0
Documenting Requirements in Natural Language
Introduction
• Elicited requirements for the system to be developed are
frequently documented using natural language.
• Natural language has the advantage; does not require preparation
time in order to be read and understood by stakeholders.
• Natural language is universal in the sense that it can be used to
describe any circumstances.
5.1 Effects of Natural Language
• The following list includes the five transformational processes that are most
relevant for requirements engineering:
 Nominalization
 Nouns without reference index
 Universal quantifiers
 Incompletely specified conditions
 Incompletely specified process verbs
5.1.1 Nominalization
• Nominalization is when you
use a noun instead of another
part of speech, usually a verb.
• It is not necessary to avoid
nominalizations, but they
should only be used if the
underlying process is
completely defined.
5.1.1 Nominalization
5.1.2 Nouns Without Reference
Indices
• Missing or inadequate index of reference. Examples of terms:
the user, the controller, the system, the message, the data, the
function.
• Example: The data shall be displayed to the user on the
terminal.
• What data exactly, which user exactly, which terminal exactly?
5.1.3 Universal Quantifiers
• The specified behavior or property does not apply to all objects within the
specified set.
• Universal quantifiers can be easily identified through trigger words such as
never, always, no, none, every, or nothing.
• Example: The system shall allow all data sets to be displayed in every
submenu.
• In this case, the following question must be asked: Really in every sub-menu?
Really all data sets?
5.1.4 Incompletely Specified
Conditions
• Potential loss of information.
• Especially in complex conditional structures, decision tables can be
invaluable tools to find unspecified variants of conditions or actions.
• Trigger words are, for instance, if ... then, in case, whether, depending
on.
• Example: The restaurant shall offer all beverages to a registered guest
over the age of 20 years.
5.1.4 Incompletely Specified
Conditions
• The correct one:
• The restaurant system shall offer:
• All alcohol-free beverages to any registered user younger than 21
years
• All beverages including all alcoholic beverages to any user over
the age of 20
5.1.4 5.13

U •A l U i I U

5.1.5 Incompletely Specified Process Verbs

• Avoid passive voice. Use active voice, instead.


• Requirement using the passive voice: To log a user in, the login
data is entered.
• In this requirement using passive voice, it is unclear who enters
the login data. It is also unclear where and how this is done. If this
requirement is reformulated using the active voice, at least the
agent or person responsible must be included.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Requirement using active voice: The system must allow the user
to enter his user name and password using the keyboard of the
terminal.
5.2 Requirement Construction using
Templates
• Requirements templates provide a simple and easily
understandable approach to reduce language effects when
documenting requirements.
• Templates support the author in achieving high quality and
syntactic unambiguousness in optimal time and at low costs.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 1: Determine the Legal Obligation


 Determine the degree of legal obligation for a requirement. Usually,
one distinguishes between legally obligatory requirements, urgently
recommended requirements, future requirements, desirable
requirements.
 Use the modal verbs shall, should, will, and may.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 2: The Requirement Core


 The core of each requirement is the functionality that it
specifies 'process’ (e.g., print, save, paste, or calculate).
 This functionality is referred to as the process.
 Processes are activities and may only be described using
verbs.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 3: Characterize the Activity of a System


• For functional requirements, the system activity can be
classified as one of the relevant types:
 Autonomous system activity
 User interaction
 Interface requirement (third party system)
5.1.4 5.13

5.2 Requirement Construction using Templates


5.1.4 5.13

5.2 Requirement Construction using Templates

• Autonomous system activity


THE SYSTEM SHALL/SHOULD/WILL/MAY <process
verb>
Example: The system shall display the list of registered
subjects.
5.1.4 5.13

5.2 Requirement Construction using Templates

• User interaction
THE SYSTEM SHALL/SHOULD/WILL/MAY provide
<whom?> with the ability to <process verb>
Example: The system shall provide the student with the
ability to print the registered subjects.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Interface requirement
THE SYSTEM SHALL/SHOULD/WILL/MAY be
able to <process verb>
Example: The system shall be able to turn off
automatically after 10 seconds not in use.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 4: Insert Objects


 Some process verbs require one or more additional objects to be
considered complete.
 In next figure, potentially missing objects and supplements of objects are
identified and added to the requirement.
 For instance, the requirements template for the process verb print is
amended by the information of what is being printed and where it is printed.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 4: Insert Objects


<autonomous>

<autonomous>
The system shall display the list of registered subjects after the user
choose the subjects.
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 4: Insert Objects

User interaction

<user interaction>
The system shall provide the user with the ability to print the
registered subjects in alphabetical order .
5.1.4 5.13

5.2 Requirement Construction using Templates

• Step 4: Insert Objects

interface requirement

<interface requirement>
The system shall be able to turn off automatically after 10 seconds
not in use.
5.2 Requirement Construction using Templates

• Step 5: Determine Logical and Temporal Conditions

If the user is detected as a lecturer, the system shall display the list
of students registered for the subject taught by the lecturer.
REFERENCES

 Certification Professional for Requirements Engineering Foundation Slide,


Custommedia
 https://www.slideshare.net/vivianamattiello/nominalization-intro-16206063
 Clipart Library

You might also like