CMPE 133 Ch 4

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