343 Chapter 6 Requirements Engineering

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

1/49

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 10:12 PM on 12/15/25
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

50 Terms

1
New cards

What are requirements?

The statements that describe what the software system should be but not how it is to be constructed.

2
New cards

What are requirements engineering?

A set of activities related to the development and agreement of the final set of requirement specifications.

3
New cards

Prior to actually performing the requirements engineering activities, it is important to-

plan for the resources, methodology, and time needed to perform this crucial step in software engineering.

4
New cards

Some organizations even perform requirements engineering-

as a separate , stand-alone activity and price it separately, with the option of folding the cost into the whole project if they get the call to complete the software project.

5
New cards

What are the engineering activities involved in a software project?

  • Elicitation

  • Documentation and definition

  • Specification

  • Prototyping

  • Analysis

  • Review and validation

  • Agreement and acceptance

6
New cards

What should plan include?

  • Process (for requirements engineering) to be used

  • Resources needed

  • Schedule for completing the requirements activities

7
New cards

Why do we need clear requirements?

For design and implementation activities.

8
New cards

Requirements documentation is needed to create test cases and test scenarios—especially for what?

Large systems where the test team is a separate group of people from the developers.

9
New cards

Requirements document is needed to control what?

potential scope-creep.

10
New cards

Requirements document is needed to create what?

User training material, marketing material, and documents for support and maintenance.

11
New cards

Requirements document provides a way to segment what?

A large project, prioritize releases, and easier project management

12
New cards

Requirements Elicitation principles are-

  • May be given to the software engineers

  • Have to be established by software engineers

13
New cards

What must be given to software engineers?

  • Initial product/system requirements

  • For second and/or third follow-on release of a “planned” sequences of software product where a preliminary set of requirements are already established

  • Requirements provided as a part of a request for price quotation for a software development project

14
New cards

What has to be established by software engineers?

  • Users sometimes have an understanding of only the requirements related to their specific job tasks

  • The business rationale and goals are not always clear to individual user and needs to be established for prioritization reason  There may be contradicting and incomplete requirements stated by the users and customers

15
New cards

What are High Level requirement elicitation?

  1. Need to seek out the business and management perceptions and goals for the software project

  2. Business opportunity and business needs

  3. Justification for the project

  4. Scope

  5. Major constraints

  6. Major functionality

  7. Success factor

  8. User characteristics

16
New cards

Software engineers who have to interact with business management and handle requirements are sometimes called what?

Business analyst

17
New cards

What does Requirements “analysis” compose of?

  • Categorizing the requirements (by some criteria)

  • Prioritizing the requirements

18
New cards

What are the requirements classification/categorization?

  • Most high level:

    • functional

    • non-functional

  • Other more detailed grouping also exist

    • six dimensions of requirements

19
New cards

What are the detailed six requirements areas in requirements categorization?

  1. Individual functionality

  2. Business flow (usage ‘scenarios’)

  3. Data and information needs

  4. User interfaces

  5. Other interfaces to external systems/platforms

  6. Various constraints (non-functional)

  • Performance

  • Security

  • Reliability

  • etc.

20
New cards

View Oriented Requirements Definition (VORD) is based on what?

The concept that requirements are viewed differently by different people

21
New cards

Principles of View Oriented Requirements Definition (VORD)?

  • Identify stakeholders and their viewpoints of the requirements

  • Categorize the viewpoints of requirements and eliminating any duplication (look for consistency and completeness)

  • Refine the identified viewpoints of requirements

  • Map the viewpoints of requirements to the system and the services that the system must provide

22
New cards

What are the limitations in developing software?

  • Time

  • Resources

  • Technical capabilities (existing)

23
New cards

What do we prioritize to satisfy limitations in developing software?

The requirements

24
New cards

What are the criteria for prioritization?

  • Current user/customer demands or needs

  • competition and current market conditions

  • Anticipated future and new customer needs

  • Sales advantages

  • Existing critical problems in current product

25
New cards

Prioritization is what?

Subjective

26
New cards

What is requirements prioritization?

An activity of comparing the requirements and placing them in some order relative to each other.

27
New cards

Sort by priority groups where the groups are based on what?

some prioritization criteria list

28
New cards

What is Pair-wise comparison?

Normalize and compute relative value using the Analytical Hierarchical Process (AHP)

29
New cards

Once the requirements are solicited, analyzed and prioritized, more details may/must be spelled out, what are they?

  • Requirements definition

  • Requirements prototyping

  • Requirements reviewing

30
New cards

What are the different definitions of requirements?

  1. Simple Input/Process/Output (I-P-U) descriptions in English

  2. Dataflow diagrams (DFD)

  3. Entity relations diagram (ERD)

  4. Use case diagram from Unified Modeling Language (UML)

31
New cards

Once the requirements are defined in detail using any of the above forms, they still need to be what?

reviewed

32
New cards

Using OO’s Use Case Methodology and Notation, which identifies what?

  • Basic/main functionalities

  • Pre-conditions of functionality

  • Flow of events or scenarios

  • Post-conditions for the functionality

  • Error conditions and alternative flows

33
New cards

Using OO Use Case Diagram, which identifies what?

  • Actors (or all external interfaces with the system, including the users)

  • Related “use cases” (major functionalities)

  • Boundary conditions

34
New cards

Use Case Diagrams are mostly for functionalities and are not detailed enough, so what do we use for further descriptions?

We need to use “English” text for further descriptions of the requirements

35
New cards

What are the further description of requirements that utilizes “English” Text?

  • Functional details

  • Pre-conditions

  • Post-conditions

  • Non-functional characteristics about the functionalities

  • “alternative paths” (e.g., error processing)

  • UI sample (e.g., “looks”)

  • etc.

36
New cards

What is needed to ensure product has fully implemented the requirements?

Capability to trace a requirement

37
New cards

Where do we need to trace requirements?

  • From the source (people and documents)

  • to later steps (design, implementation, test, and release)

38
New cards

What do we need to do to “per-requisite” requirements?

To link requirements

39
New cards

What does requirements prototyping address?

User Interface (UI)

40
New cards

What are the requirements in terms of User Interface (UI)

  • Visual looks (size, shape, position, color)

  • Flow (control and logical flow; depth of flow)

41
New cards

What are the types of prototyping that may be performed?

  • Low fidelity

  • High fidelity

42
New cards

What is low fidelity?

using paper/cardboard to represent screens and human to move the boards

43
New cards

What is high fidelity?

using automated tools such as Visual Basic to code the screens and direct the logical flow of these screens

44
New cards

When requirements are defined, prototyped, and reviewed, where are they placed?

A requirements specification document

45
New cards
46
New cards

What is the IEEE/EIA standard 12207.1-1997?

It outlines the guidelines for three major sections of a requirements specification document.

47
New cards

What are the major guidelines of requirements specification document?

  • Introduction

  • High-level description

  • detailed description

48
New cards

What are the elements of detailed description?

  • Details of each functionality (input-out-process)

  • Interfaces, including user interfaces and network interfaces

  • Performance requirements (response time, throughput, etc.)

  • Design constraints, standards, etc.

  • Additional attributes such as security, reliability, etc.

  • Any additional unique requirements

49
New cards

It is important to have?

requirements specification agreed to and signed off

50
New cards

What does a “sign off” serve as?

  • A milestone marker and formal exit of a phase of software of engineering

  • A baseline from which any future changes can be monitored and controlled