Lecture 3: Software Requirements - Vocabulary Flashcards

0.0(0)
studied byStudied by 0 people
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/32

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards covering key terms and concepts from Lecture 3 on Software Requirements, including definitions of requirements, types, quality attributes, and common guidelines.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

33 Terms

1
New cards

Requirement

A singular documented need of what a product or service should be or perform.

2
New cards

IEEE Definition of a Requirement

(1) a condition or capability needed by a user to solve a problem or achieve an objective; (2) a condition or capability that must be met by a system or component to satisfy a contract, standard, or specification.

3
New cards

Requirement Engineering

The process of establishing the services the customer requires from a system and the constraints under which it operates and is developed.

4
New cards

User requirements

Statements in natural language (and diagrams) about the services and constraints written for customers.

5
New cards

System requirements

A structured document detailing the system’s services and constraints; usually a contract between client and contractor.

6
New cards

SRS (Software Requirements Specification)

The official statement of what is required of the system developers; recorded in natural language, formal, symbolic, or graphical representations.

7
New cards

Use-case

A graphical language (often with text) used to define functional requirements; commonly represented to illustrate how the system will be used.

8
New cards

Unitary (Cohesive) requirement

A requirement that addresses one and only one thing.

9
New cards

Complete requirement

Fully stated in one place with no missing information.

10
New cards

Consistent requirement

Does not contradict any other requirement.

11
New cards

Atomic (Non-Conjugated) requirement

Atomic in form; does not contain conjunctions; should be split into separate requirements.

12
New cards

Traceable requirement

A requirement that can be traced backward to business needs and forward to design, implementation, and tests.

13
New cards

Feasible requirement

A requirement that can be implemented within the project’s constraints.

14
New cards

Unambiguous requirement

Concise and free from vagueness or jargon; one clear interpretation.

15
New cards

Mandatory requirement

A stakeholder-defined characteristic whose absence would cause a deficiency.

16
New cards

Verifiable requirement

A requirement whose implementation can be verified through inspection, demonstration, or testing.

17
New cards

Functional requirements

Statements describing what the system must do; include inputs, outputs, exceptions, data, workflows, and reports.

18
New cards

Non-functional requirements

Constraints on the software itself and how well it performs its functions (e.g., timing, standards, security).

19
New cards

Performance requirement

A non-functional requirement specifying timing or throughput (e.g., response time, capacity).

20
New cards

Design constraints

Constraints such as required database systems or memory limits that shape the solution.

21
New cards

Design directives

Guidelines on how to design certain functionality (e.g., use of a specific algorithm).

22
New cards

Implementation directives

Guidelines on how to implement functionality (e.g., preferred programming language for portability).

23
New cards

NFR Classification

Categories of non-functional requirements including product, organizational, external; with types like efficiency, reliability, portability, usability, privacy, safety.

24
New cards

Requirements Analysis problems

Issues like ambiguities, platitudes, omissions, inconsistencies, mixtures of abstraction, and FRs/NFRs mixed up.

25
New cards

Ambiguity in natural language

NL can be interpreted differently by readers and writers, leading to confusion.

26
New cards

Platitudes in requirements

Vague FRs or non-measurable NFRs that are untestable.

27
New cards

Omissions in requirements

Essential information left out of a requirement.

28
New cards

Inconsistencies in requirements

Contradictory statements within or between requirements.

29
New cards

Mixtures of abstraction

Different levels of detail in the same section of a requirements document.

30
New cards

FRs and NFRs mixed up

Functional and non-functional requirements stated together in a confusing way.

31
New cards

Alternatives to natural language

Structured language, program-description language, graphical notations (Use-case), and formal specifications.

32
New cards

Audiences for SRS

Customers, project managers, developers, testers, maintenance staff, publications, and training personnel.

33
New cards

Guidelines for writing requirements (numbering, phrasing)

Use a standard numbering format; use ‘shall’ for mandatory, ‘should’ for desirable; avoid jargon; quantify when possible.