H2 System and Context Boundaries Flashcards
2 requirements of a system
do not simply exist, must be elicited!!!
2 purpose of defining system and context boundaries
identify the part of the environment that influences the requirements for the system to be developed
( 2.1 System Context )
Anticipate the system in operation
- RE identifies all those material and immaterial aspects that have a relationship to the system
THEREFORE MUST anticipate what the system will be like once it becomes real
2.1 Definition 2-1: System Context
The system context is the part of the system environment that is relevant for the definition as well as the understanding of the requirements of a system to be developed.
The part of reality that is relevant for the requirements of a system is called the system context.
2.1 Context aspects in the system context
aspects of reality that influence the context of a system:
- People (stakeholders or groups of stakeholders)
- Systems in operation (other technical systems or hardware)
- Processes (technical or physical processes, business processes)
- Events (technical or physical) - Documents (e.g., laws, standards, system documentation)
2.1 Consequence of erroneous or incomplete context consideration
= > incomplete or erroneous requirements => system failure during operation
— this remains undetected during the validation procedure !!!
2.1 System context and requirement context
A requirement is defined for a specific context and can only be interpreted correctly in regard to this specific context.
therefore must have purpose-driven documentation of the system context !!!
2.2 Defining System and Context Boundaries
REr must define system context!!
therefore must separate sys context from actual sys and from irrelevant reality by:
1. Defining the system boundary
2. Defining the context boundary
2.2 System and context boundaries define the system context
system context = all aspects relevant to requirements for system TBDevd
= cannot be altered or modified by the system development process!!!!
2.2.1 Defining the System Boundary
= separates the object of concern (i.e., the system) from its environment.
Definition 2-2: System Boundary
The system boundary separates the system to be developed from its environment; i.e., it separates the part of the reality that can be modified or altered by the development process from aspects of the environment that cannot be changed or modified by the development process.
2.2.1 within sys boundary
All aspects that are within the system boundary can be altered during system development.
aspects ex:
- business processes,
- technical processes,
- people and roles,
- organizational structures,
- components of the IT infrastructure.
2.2.1 Sources and sinks as the starting point
-Sources provide inputs for the system.
- Sinks receive outputs from the system
ex:
- (Groups of) stakeholders
- Existing systems (both technical and nontechnical systems
2.2.1 Interfaces: interaction between system and environment
Sources and sinks interact with the system to be developed via system interfaces.
Using these interfaces, the system provides its functionality to the environment, monitors the environment, influences parameters of the environment, and controls operations of the environment.
Depending on the type of the respective source or sink, the system needs different interface types (e.g., human−machine interface, hardware interface, or software interface). The interface type in turn may also impose specific constraints or additional sources of requirements on the system to be developed.
2.2.1 Gray zone between system and system context
Frequently, the system boundary is not precisely defined until the end of the requirements engineering process
2.2.1 Adjusting the gray zon
The system boundary may not only shift within the gray zone but also the gray zone itself may shift during the requirements engineering process .
This kind of shifting is caused by the fact that aspects, pertaining at first to the system context, now will be modified during system development
2.2.2 Defining the Context Boundary
context aspects VS aspects that are irrelevant for the system
2.2.2 Definition 2-3: Context Boundary
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.
2.2.2 Concretion and shift of the context boundary
it is necessary to concretize the boundary between system context and irrelevant environment by analyzing relevant aspects within the environment with regard to their relationships to the system.
- typically also shifts during requirements engineering
2.2.2 Gray zone between system context and irrelevant environment
reasons for existence of gray zone :
- a complete and precise definition of the context boundary for complex systems is virtually impossible
- it may not be possible to clarify for single aspects of the environment whether they influence the system to be developed or are influenced by it or no
2.2.2 Resolving and shifting of the gray zone
In contrast to the gray zone between the system and the system context that must be resolved in the course of requirements engineering, it is not necessary to resolve the gray zone between the system context and the irrelevant environment entirely.
- not necessary ;)
2.3 Documenting the System Context
with
- “use case” diagrams ( souces andn sinks )
- “data flow” diagrams ( actors in sys environment and their relationship to the sys )
2.4 Summary
The system context is the part of the reality that influences the system to be developed and thus also influences the requirements for the system.
In order to be able to elicit the requirements for the system to be developed, it is necessary to define the boundary of the system to the system context and the boundary of the system context to the irrelevant environment first. When the system boundaries are defined, the scope of the system is determined. The scope comprises those aspects that can be changed and designed during system development. At the same time, it is also defined which aspects belong to the environment and thus cannot be altered during development and may provide constraints for the system to be developed.
The context boundary separates the part of the environment that influences the requirements for the system to be developed from that part that does not influence the requirements. Typical aspects within the system context are stakeholders (e.g., the users of the system) and documents (e.g., standards that have to be considered) as well as other systems that, for instance, interact with the system to be developed. Defining the system and context boundaries successfully is the foundation for a systematic elicitation of requirements for the system to be developed.
When the system boundaries are defined, the scope of the system is determined. The scope comprises those aspects that can be changed and designed during system development