A diagram type in ↑UML which models the flow of actions in some part of a ↑system including ↑data flows and areas of responsibility where necessary.
The CPRE Glossary
The basis for successful RE is a common understanding of the terms used. The CPRE Glossary covers the core terms of Requirements Engineering—it is the central reference work across all CPRE modules and levels!
The glossaries are also available in various languages for download.
The CPRE Glossary: An overview of the most important Requirements Engineering terms
Please note that the definitions of terms in the glossaries are deliberately in English only in order to exclude any ambiguities or scope for interpretation that may result from translations.
Reset filter
-
Activity diagram
-
Activity model
-
Actor
-
Adequacy (of a requirement)
The degree to which a ↑requirement expresses the ↑stakeholders' true and agreed desires and needs (i.e., those they had actually in mind when stating the requirement).
-
Application domain
-
Attribute
-
Behavior
The way in which a ↑system reacts to stimuli, changes its state and produces observable results.
Note:Stimuli may be events or changes of conditions. Their origin may be external or system-internal.
-
Behavior model
A ↑model describing the ↑behavior of a ↑system , e.g., by a ↑state machine.
-
Business requirement
A ↑requirement stating a business ↑goal , objective or need of an organization.
Note:Business requirements typically state those business goals, objectives and needs that shall be achieved by employing a ↑system or a collection of systems.
-
Change request
In RE: A well-argued request for changing one or more ↑baselined ↑requirements.
-
Class
A representation of a set of ↑objects of the same kind by describing the structure of the objects, the ways they can be manipulated and how they behave.
-
Class diagram
A diagrammatic representation of a ↑class model.
-
Class model
A model consisting of a set of ↑classes and relationships between them.
-
Configuration
A consistent set of logically coherent ↑items. The items are individually identifiable ↑work products or parts of work products in at most one ↑version per item.
-
Conformity
The degree to which a ↑work product conforms to regulations given in some ↑standard .
-
Consistency (of requirements)
The degree to which a set of ↑requirements is free of contradicting statements.
-
Constraint (in RE)
A ↑requirement that limits the solution space beyond what is necessary for meeting the given ↑functional requirements and ↑quality requirements.
-
Context boundary
The boundary between the ↑context of a ↑system and those parts of the ↑application domain that are irrelevant for the ↑system and its ↑requirements.
Note:The context boundary separates the relevant part of the environment of a system to be developed from the irrelevant part, i.e., the part that does not influence the system to be developed and, thus, does not have to be considered during Requirements Engineering.
-
Context model
-
Customer requirements specification
A coarse description of the required capabilities of a ↑system from the ↑customer’s perspective.
Note:A customer requirements specification is usually supplied by the customer.
-
Defect
Synonym: bug, fault
An imperfection or deficiency in a ↑work product that impairs its intended use.
-
Design
1. A plan or drawing produced to show how something will look, function or be structured before it is made.
2. The activity of creating a design.
3. A decorative pattern [This meaning does not apply in the software engineering ↑domain ].Note:1. In software product development, we distinguish between creative design which shapes the look and feel of the product, i.e., its perceivable form, function and quality, and technical design (also called software design) which determines the inner structure of the product, in particular the software architecture.
2. The creative design of products is also called product design.
3. The creative design of digital solutions is called digital design. -
Domain
A range of relevant things (for some given matter); for example, an ↑application domain .
-
Domain requirement
-
Effectiveness
-
Efficiency
The degree to which resources are expended in relation to results achieved.
-
Elaboration (of requirements)
An umbrella term for requirements ↑elicitation, ↑negotiation and ↑validation.
-
Elicitation (of requirements)
-
Error
1. A human action that produces an incorrect result.
2. A discrepancy between an observed ↑behavior or result and the specified behavior or result.Note:In practice, both meanings are used. Where needed, the meaning of error can be disambiguated by using human error and observed error or observed fault, respectively.
-
Evolutionary prototype
A pilot system forming the core of a ↑system to be developed.
-
Exploratory prototype
A throwaway ↑prototype used to create shared understanding, clarify ↑requirements or validate ↑requirements .
-
Fault
-
Fault tolerance
The capability of a ↑system to operate as intended despite the presence of (hardware or software) ↑faults .
Note:Fault tolerance may be stated as a ↑quality requirement .
-
Functional requirement
A ↑requirement concerning a result or ↑behavior that shall be provided by a function of a ↑system .
-
Functionality
The capabilities of a ↑system as stated by its ↑functional requirements .
-
Glossary
-
Goal
A desired state of affairs (that a ↑stakeholder wants to achieve).
Note:Goals describe intentions of stakeholders. They may conflict with one another.
-
Goal model
-
Increment (in software development)
An addition to a ↑system under development that extends, enhances or refactors ( ↑refactoring ) the existing parts of the ↑system .
Note:In ↑agile development, every ↑iteration produces an increment.
-
Inspection
A formal ↑review of a ↑work product by a group of experts according to given criteria, following a defined procedure.
-
Kind of requirement
A classification of requirements according to their kind into ↑system requirements (consisting of ↑functional requirements , ↑quality requirements and ↑constraints ), project requirements, and process requirements.
Note:1. RE is primarily concerned with system requirements.
2. Quality requirements and constraints are also called ↑non-functional requirements .
-
Mock-up (of a digital system)
A medium-fidelity ↑prototype that demonstrates characteristics of a user interface without implementing any real ↑functionality .
Note:In RE, a mock-up primarily serves for specifying and validating user interfaces.
-
Model
An abstract representation of an existing part of reality or a part of reality to be created.
Note:1. The notion of reality includes any conceivable set of elements, phenomena or concepts, including other models.
2. Models are always built for specific purposes in a specific context.
3. With respect to a model, the modeled part of reality is called the original.
4. In RE, ↑requirements can be specified with models. -
Modeling language
-
Modifiability
The degree to which a ↑work product or ↑system can be modified without degrading its ↑quality .
-
Native prototype
A high-fidelity ↑prototype that implements critical parts of a ↑system to an extent that ↑stakeholders can use the prototype to see whether the prototyped part of the system will work and behave as expected.
-
Natural language
A ↑language that people use for speaking and writing in everyday life.
Note:This is in contrast to artificial languages that people have deliberately created for specific purposes such as programming or specifying.
-
Necessity (of a requirement)
The degree to which an individual ↑requirement is a necessary part of the ↑requirements specification of a ↑system .
-
Non-functional requirement
A ↑quality requirement or a ↑constraint .
Note:↑Performance requirements may be regarded as another category of non-functional requirements. In this glossary, performance requirements are considered to be a sub-category of ↑quality requirements .
-
Object model
-
Performance requirement
A ↑requirement describing a performance characteristic (timing, speed, volume, capacity, throughput, ...).
Note:In this glossary, performance requirements are regarded as a sub-category of ↑quality requirements. However, they can also be considered as a ↑kind of requirements of its own.
-
Priority
The level of importance assigned to an ↑item , e.g., a ↑requirement or a ↑defect , according to certain criteria.
-
Process
A set of interrelated ↑activities performed in a given order to process information or materials.
Note:The notion of process includes business processes (e.g., how to commission and send ordered goods to ↑customers ), information processes (e.g., how to deliver records from a database that match a given query), and technical processes (e.g., cruise control in a car).
-
Process model
-
Product (in the context of software)
A software-based ↑system or a ↑service provided by a system which is developed and marketed by a ↑supplier and used by ↑customers.
-
Product backlog
An ordered, typically prioritized collection of work items that a development team has to work on when developing or evolving a ↑system .
Note:Items include ↑requirements , ↑defects to be fixed, or ↑refactorings to be done.
-
Quality requirement
A ↑requirement that pertains to a quality concern that is not covered by ↑functional requirements.
-
Release
A ↑configuration that has been released for installation and use by ↑customers.
-
Reliability
The degree to which a ↑system performs specified functions under specified conditions for a specified period of time.
Note:Reliability may be stated as a ↑quality requirement .
-
Requirements document
A document consisting of a ↑requirements specification.
Note:Requirements document is frequently used as a synonym for requirements specification.
-
Requirements elicitation
Synonym: elicitation (of requirements)
The process of seeking, capturing and consolidating ↑requirements from available ↑sources, potentially including the re-construction or creation of requirements.
-
Requirements Engineer
A person who – in collaboration with ↑stakeholders – elicits, documents, validates, and manages ↑requirements.
Note:In most cases, requirements engineer is a ↑role and not a job title.
-
Requirements Engineering
The systematic and disciplined approach to the ↑specification and management of ↑requirements with the goal of understanding the ↑stakeholders’ desires and needs and minimizing the risk of delivering a ↑system that does not meet these desires and needs.
Abbreviation: RE -
Requirements management
The process of managing existing ↑requirements and requirements-related ↑work products, including the storing, changing and tracing of requirements ( ↑traceability ).
-
Requirements negotiation
A ↑process where ↑stakeholders are working toward reaching an agreement to resolve ↑requirements conflicts.
-
Requirements source
The source from which a ↑requirement has been derived.
Note:Typical sources are ↑stakeholders, documents, existing ↑systems and observations.
-
Requirements specification
A systematically represented collection of ↑requirements , typically for a ↑system , that satisfies given criteria.
Note:1. In some situations we distinguish between a ↑customer requirements specification (typically written by the customer) and a ↑system requirements specification or ↑software requirements specification (written by the supplier).
2. Requirements specification may also denote the ↑process of specifying ( ↑eliciting , documenting and ↑validating ) requirements. -
Requirements template
A template for specifying ↑requirements.
Note:In RE, several forms of templates are used. ↑Phrase templates are used for specifying individual ↑requirements or ↑user stories . ↑Form templates can be used to specify ↑use cases or ↑quality requirements. ↑Document templates provide a predefined structure for ↑requirements documents.
-
Review
An evaluation of a ↑work product by an individual or a group in order to find problems or suggest improvements.
Note:Evaluation may be performed with respect to both contents and conformance.
-
Risk
A possible event that threatens the success of an endeavor.
Note:A risk is typically assessed in terms of its probability and potential damage.
-
Safety
The capability of a ↑system to achieve an acceptable level of probability that the system, under defined conditions, will not reach a state in which human life, health, property, or the environment is endangered.
Note:Safety ↑requirements may be stated as ↑quality requirements or in terms of ↑functional requirements.
-
Scope (of a system development)
The range of things that can be shaped and designed when developing a ↑system .
-
Security
The degree to which a ↑system protects its data and resources against unauthorized access or use and secures unobstructed access and use for its legitimate ↑users.
Note:Security requirements may be stated as ↑quality requirements or in terms of ↑functional requirements.
-
Semantics
The meaning of a sign or a set of signs in a ↑language .
-
Sequence diagram
-
Service
The provision of some ↑functionality to a human or a ↑system by a provider (a system, organization, group or individual) that delivers value to the receiver.
-
Software requirements specification
A ↑requirements specification pertaining to a software ↑system .
Abbreviation: SRS -
Sprint
An ↑iteration in ↑agile development, particularly when using ↑Scrum.
-
Stakeholder
A person or organization who influences a ↑system’s ↑requirements or who is impacted by that system.
Note:Influence can also be indirect. For example, some stakeholders may have to follow instructions issued by their managers or organizations.
-
Stakeholder requirement
A ↑requirement expressing a ↑stakeholder desire or need.
Note:Stakeholder requirements are typically written by stakeholders and express their desires and needs from their perspective.
-
Standard
A formal, possibly mandatory set of regulations for how to interpret, develop, manufacture or execute something.
Note:In RE, there are RE-relevant standards issued by ISO/IEC and IEEE.
-
State machine
-
State machine diagram
A diagrammatic representation of a ↑state machine .
-
Statechart
A ↑state machine having states that are hierarchically and/or orthogonally decomposed.
-
Synonym
A word having the same meaning as another word.
-
Syntax
The rules for constructing structured signs in a ↑language .
-
System context
The part of a ↑system’s environment that is relevant for the definition as well as the understanding of the ↑requirements of a ↑system to be developed.
-
System requirement
A ↑requirement pertaining to a ↑system .
-
System requirements specification
A ↑requirements specification pertaining to a ↑system .
Note:A system requirements specification is frequently considered to be a synonym for ↑requirements specification.
Abbreviation: SyRS
-
Tool (in software engineering)Note:
In RE, tools support ↑requirements management as well as modeling, documenting, and validating ↑requirements.
-
UML
Abbreviation for Unified Modeling Language, a standardized language for modeling problems or solutions.
-
Unambiguity (of requirements)
The degree to which a ↑requirement is expressed such that it cannot be understood differently by different people.
-
Understandability
The degree to which an ↑item is comprehensible to its intended users.
Note:Typical items are: a ↑system , a ↑work product , or a part thereof.
-
Usability
-
Use case
A set of possible interactions between external ↑actors and a ↑system that provide a benefit for the actor(s) involved.
Note:Use cases specify a system from a user’s (or other external actor’s) perspective: every use case describes some ↑functionality that the system must provide for the actors involved in the use case.
-
Use case diagram
A diagram type in UML that models the ↑actors and the ↑use cases of a ↑system .
Note:The boundary between the actors and the use cases constitutes the ↑system boundary.
-
User
A person who uses the ↑functionality provided by a ↑system .
Note:Users (also called end users) always are ↑stakeholders of a ↑system .
-
User requirement
A ↑requirement expressing a ↑user need.
Note:User requirements are typically about what a system should do for certain users and how they can interact with the system. User requirements are a subset of ↑stakeholder requirements .
-
Validation
The ↑process of confirming that an ↑item (a ↑system , a ↑work product or a part thereof) matches its ↑stakeholders’ needs.
Note:In RE, validation is the process of confirming that the documented ↑requirements match their ↑stakeholders’ needs; in other words: whether the right requirements have been specified.
-
Verifiability (of requirements)
The degree to which the fulfillment of a ↑requirement by an implemented ↑system can be verified.
Note:Such ↑verification can be performed, for example by defining ↑acceptance test cases, measurements or ↑inspection procedures.
-
Version
An occurrence of an ↑item which exists in multiple, time-ordered occurrences where each occurrence has been created by modifying one of its previous occurrences.
-
View
An excerpt from a ↑work product , containing only those parts one is currently interested in.
Note:A view can abstract or aggregate parts of the work product.
-
Vision (for a system or product)
-
Walkthrough
A ↑review in which the author of a ↑work product leads the reviewers systematically through the work product and the reviewers ask questions and make comments about possible issues.
-
Wireframe
A low-fidelity ↑prototype built with simple materials that primarily serves for discussing and validating requirements, design ideas or user interface concepts.
Note:When prototyping digital systems, wireframes are typically built with paper. Such prototypes are also called paper prototypes.
-
Work product
Synonym: artifact
A recorded, intermediate or final result generated in a work ↑process .