Send a link to your students to track their progress
55 Terms
1
New cards
Requirements
The descriptions of what the system should doโthe services it provides and the constraints on its operation.
2
New cards
Requirements Engineering
The process of finding out, analyzing, documenting, and checking system services and constraints.
3
New cards
User Requirements
Statements in natural language plus diagrams of the services the system provides and its operational constraints; written for customers.
4
New cards
System Requirements
A structured document setting out detailed descriptions of the system's functions, services, and operational constraints; may be part of a contract.
5
New cards
Readers of User Requirements
Client managers, system end-users, client engineers, contractor managers, system architects.
6
New cards
Readers of System Requirements
System end-users, client engineers, system architects, software developers.
7
New cards
System Stakeholders
Any person or organization who is affected by the system in some way and has a legitimate interest; includes end users, system managers, system owners, external stakeholders.
8
New cards
Functional Requirements
Statements of services the system should provide, how it should react to inputs, and how it should behave in situations; may state what the system should NOT do.
9
New cards
Non-functional Requirements
Constraints on the services or functions offered by the system, such as timing constraints or development process constraints; often apply to the system as a whole.
10
New cards
Functional User Requirements
High-level statements of what the system should do (e.g., "A user shall be able to search the appointments lists for all clinics").
11
New cards
Functional System Requirements
Detailed descriptions of the system services (e.g., "The system shall generate each day, for each clinic, a list of patients expected to attend appointments").
12
New cards
Requirements Imprecision
Problems that arise when functional requirements are not precisely stated, leading to ambiguous interpretation by developers and users.
13
New cards
Requirements Completeness
Requirements should include descriptions of all facilities required.
14
New cards
Requirements Consistency
There should be no conflicts or contradictions in the descriptions of the system facilities.
15
New cards
Product Requirements
Non-functional requirements specifying that the delivered product must behave in a particular way (e.g., execution speed, reliability).
16
New cards
Organizational Requirements
Non-functional requirements that are a consequence of organizational policies and procedures (e.g., process standards used).
17
New cards
External Requirements
Non-functional requirements arising from factors external to the system and its development process (e.g., interoperability, legislative requirements).
Also called requirements elicitation or requirements discovery; involves technical staff working with customers/stakeholders.
27
New cards
Stages of Requirements Elicitation
Requirements discovery, requirements classification and organization, requirements prioritization and negotiation, requirements specification.
28
New cards
Requirements Discovery
The process of gathering information about the required and existing systems and distilling user and system requirements from this information.
29
New cards
Problems of Requirements Elicitation
Stakeholders don't know what they want, express requirements in their own terms, have conflicting requirements, organizational/political factors influence requirements, requirements change during analysis.
30
New cards
Interviewing (types)
Closed interviews (pre-determined list of questions) and open interviews (various issues explored with stakeholders).
31
New cards
Problems with Interviews
Application specialists use language hard to understand; interviews are not good for understanding domain requirements (terminology, unspoken familiar knowledge).
32
New cards
Ethnography
A social scientist spends considerable time observing and analyzing how people actually work; people don't have to explain/articulate their work.
33
New cards
Scope of Ethnography
Effective for understanding existing processes but cannot identify new features that should be added to a system.
34
New cards
Focused Ethnography
Combines ethnography with prototyping; prototype development results in unanswered questions which focus the ethnographic analysis.
35
New cards
Scenarios
A structured form of user story describing a real-life example of how a system can be used for a particular task.
36
New cards
Scenario Contents
Starting situation, normal flow of events, what can go wrong, concurrent activities, state when scenario finishes.
37
New cards
Use Cases
A requirements discovery technique first introduced in the Objectory method (Jacobson et al., 1993); now part of UML; identifies actors and the type of interaction.
38
New cards
Requirements Specification (definition)
The process of writing down the user and system requirements in a requirements document.
39
New cards
Natural Language Specification
Requirements written as natural language sentences supplemented by diagrams and tables; expressive, intuitive, universal.
An approach to writing requirements where the writer's freedom is limited and requirements are written in a standard way; good for embedded control systems, too rigid for business systems.
42
New cards
Form-based Specification (contents)
Definition of function/entity, inputs, outputs, needed information, action to be taken, pre/post conditions, side effects.
43
New cards
Tabular Specification
Used to supplement natural language; useful for defining alternative courses of action (e.g., insulin pump dose calculation table).
44
New cards
Guidelines for Writing Requirements
Use a standard format, use language consistently (shall = mandatory, should = desirable), highlight key parts, avoid jargon, include rationale.
45
New cards
Requirements and Design Relationship
In principle requirements state WHAT the system should do and design states HOW; in practice they are inseparable.
46
New cards
Software Requirements Document (purpose)
The official statement of what is required of the system developers; includes user and system requirements; NOT a design document.
47
New cards
Requirements Validation (definition)
Process of checking that requirements actually define the system that the customer really wants.