The ___ is created during requirements elicitation
Use case model
In requirements analysis, the use case model is expressed in terms of ___
Application domain objects
In system design, the use case model is structured by ___
Subsystems
In object design, the use case model is realized by ___
Solution domain objects
In implementation, the use case model is implemented by ___
Source code
In testing, the use case model is verified by ___
Test case model
What is the first step in identifying the requirements?
System identification
What two questions are answered during requirements elicitation and analysis?
-How can we identify the purpose of a system?
-What is inside and outside the system?
What is the definition of requirements elicitation?
Definition of the system in terms understood by the customer ("Requirements specification")
What is the definition of requirements analysis?
Definition of the system in terms understood by the developer ("Technical specification", "Analysis model")
What is the definition of requirements process?
Contains the activities requirements elicitation and analysis
What are 4 techniques to elicit requirements (bridge the gap between end user and developer)?
-Questionnaires
-Task analysis
-Scenarios
-Use cases
What are questionnaires?
Asking the end user a list of pre-selected questions
What is task analysis?
Observing end users in their operational environment
What are scenarios?
Describe the use of the system as a series of interactions between a concrete end user and the system
What are use cases?
Abstractions that describe a class of scenarios
Functional requirements describe ___
The interactions between the system and its environment independent from the implementation
What are the two types of nonfunctional requirements?
-Quality requirements
-Constraints
What is the definition of quality requirements?
Aspects not directly related to functional behavior
What is the definition of constraints?
Imposed by the client or environment (also known as "pseudo requirements")
Functional requirements describe ___ which the system needs to support
User tasks
Functional requirements are phrased as ___
Actions
Nonfunctional requirements describe ___
Properties of the system or domain
Nonfunctional requirements are phrased as ___
Constraints or negative assertions
What is the type of nonfunctional requirement for the following example?
"Spectators must be able to watch a match without prior registration and without prior knowledge of the match.
Usability Requirement
What is the type of nonfunctional requirement for the following example?
"The system must support 10 parallel tournaments
Performance Requirement
What is the type of nonfunctional requirement for the following example?
"The newer version of the SW can be downloaded via internet.
Supportability Requirement
What should not be in the requirements? (It is desirable that none of them are constrained by the client)
-System structure, implementation technology
-Development methodology
-Development environment
-Implementation language
-Reusability
Requirements validation is a ___, usually performed after ___
-Quality assurance step
-Requirements elicitation or analysis
What are the 7 steps in requirements validation?
-Correctness
-Completeness
-Consistency
-Clarity
-Verifiability
-Realism
-Traceability
In requirements validation, what is correctness?
The requirements represent the client's view
In requirements validation, what is completeness?
All possible scenarios, in which the system can be used, are described
In requirements validation, what is consistency?
There are no requirements that contradict each other.
In requirements validation, what is clarity?
A requirement cannot be interpreted in two mutually exclusive ways
In requirements validation, what is verifiability?
Requirements can be tested repeatedly to demonstrate the functionality
In requirements validation, what is realism?
Requirements can be implemented and delivered
In requirements validation, what is traceability?
Each system component and behavior can be traced to a set of functional requirements.
What are the 3 different types of requirements elicitation activities?
-Greenfield engineering
-Re-engineering
-Interface Engineering
The definition of greenfield engineering is ___. It is triggered by ___
-Development starts from scratch, no prior system exists, requirements come from end users and clients
-User needs
The definition of re-engineering is ___. It is triggered by ___
-Re-design and/or re-implementation of an existing system using newer technology
-Technology enabler
The definition of interface engineering is ___. It is triggered by ___
-Redesign of the user interface of an existing system, the legacy system is left untouched.
-Provision of existing services in a new environment
-Technology enabler or new markets needs
What are the 3 priorities of requirements?
-High priority: core requirements
-Medium priority: optional requirements
-Low priority: fancy requirements
A ___ is a feature that the system must have or a constraint that it must satisfy to be accepted by the client.
Requirement
___ aims at defining the requirements of the system under construction.
Requirements engineering
Requirements engineering includes two main activities:
-Requirements elicitation
-Requirements analysis
___ focuses on describing the purpose of the system
Requirements elicitation
The client, the developers, and the users identify a problem area and define a system that addresses the problem. Such a definition is called a ___ and serves as a contract between the client and developers.
Requirements specification
The requirements specification is structured and formalized during analysis to produce an ___
Analysis model
What are the 6 activities requirements elicitation includes?
-Identifying actors
-Identifying scenarios
-Identifying use cases
-Refining use cases
-Identifying relationships among use cases
-Identifying nonfunctional requirements
___ focuses on building consensus among developers, users, and clients by jointly developing the requirements specification
Joint Application Design (JAD)
___ focuses on recording, structuring, linking, grouping, and maintaining dependencies among requirements and between requirements and other work products
Traceability
___ describe aspects of the system that are not directly related to the functional behavior of the system.
Nonfunctional requirements
In nonfunctional requirements, ___ is the ease with which a user can learn to operate, prepare inputs for, and interpret outputs of a system or component.
Usability
In nonfunctional requirements, ___ is the ability of a system or component to perform its required functions under stated conditions for a specified period of time
Reliability
In nonfunctional requirements, reliability is often replaced by ___, which is the property of a computer system such that reliance can justifiably be placed on the service it delivers.
Dependability
Dependability includes ___, ___, and ___
-Reliability
-Robustness
-Safety
In nonfunctional requirements, ___ is the degree to which a system or component can function correctly in the presence of invalid inputs or stressful environment conditions
Robustness
In nonfunctional requirements, ___ is a measure of the absence of catastrophic consequences to the environment
Safety
In nonfunctional requirements, ___ are concerned with quantifiable attributes of the system
Performance
In nonfunctional requirements, performance includes ___, ___, ___, ___
-Response time
-Throughput
-Availability
-Accuracy
In nonfunctional requirements, ___ is how quickly the system reacts to a user input
Response time
In nonfunctional requirements, ___ is how much work the system can accomplish within a specified amount of time
Throughput
In nonfunctional requirements, ___ is the degree to which a system or component is operational and accessible when required for use
Availability
In nonfunctional requirements, ___ requirements are concerned with the ease of changes to the system after deployment
Supportability
In nonfunctional requirements, supportability includes ___, ___, and ___
-Adaptability
-Maintainability
-Portability
In nonfunctional requirements, ___ is the ability to change the system to deal with additional application domain concepts
Adaptability
In nonfunctional requirements, ___ is the ability to change the system with new technology or to fix defects
Maintainability
In nonfunctional requirements, ___ is the ease with which a system or component can be transferred from one hardware or software environment to another
Portability
In nonfunctional requirements, ___ are constraints on the implementation of the system, including the use of specific tools, programming languages, or hardware platforms
Implementation requirements
In nonfunctional requirements, ___ are constraints imposed by external systems, including legacy systems and interchange formats
Interface requirements
In nonfunctional requirements, ___ are constraints on the administration and management of the system in the operational setting
Operational requirements
In nonfunctional requirements, ___ are constraints on the actual delivery of the system
Packaging requirements
In nonfunctional requirements, ___ are concerned with licensing, regulation, and certification issues
Legal requirements
Nonfunctional requirements that fall into the URPS categories are called ___ of the system
Quality requirements
Nonfunctional requirements that fall into the implementation interface, operations, packaging, and legal categories are called ___
Constraints
The requirements specification is ___ if all possible scenarios through the system are described, including exceptional behavior
Complete
The requirements specification is ___ if it does not contradict itself
Consistent
The requirements specification is ___ if exactly one system is defined
Unambiguous
The requirements specification is ___ if it represents accurately the system that the client needs and that the developers intend to build.
Correct
The requirements specification is ___ if the system can be implemented within constraints
Realistic
The requirements specification is ___ if, once the system is built, repeatable tests can be designed to demonstrate that the system fulfills the requirements specification
Verfiable
The requirements specification is ___ if each requirement can be traced throughout the software development to its corresponding system functions, and if each system function can be traced back to its corresponding set of requirements
Traceable
The 4 types of scenarios are:
-As-is
-Visionary
-Evaluation
-Training
___ scenarios describe a current system
As-is
___ scenarios describe a future system
Visionary
___ scenarios describe user tasks against which the system is to be evaulated
Evaluation
___ scenarios are tutorials used for introducing new users to the system
Training
A ___ is an instance of a use case
Scenario
___ is a requirements method developed at IBM at the end of the 1970s. Its effectiveness lies in that the requirements elicitation work is done in one single workshop session in which all stakeholders participate.
Joint Application Design
JAD is composed of 5 activities:
-Project definition
-Research
-Preparation
-Session
-Final Document
The results of the requirements elicitation and the analysis activities are documented in the ___. The document completely describes the system in terms of functional and nonfunctional requirements
Requirements Analysis Document