0

Software Requirements and Specifications

Description: This quiz covers the fundamental concepts and practices related to Software Requirements and Specifications. It aims to assess your understanding of eliciting, analyzing, documenting, and managing software requirements.
Number of Questions: 14
Created by:
Tags: software requirements requirements engineering software specifications srs frs
Attempted 0/14 Correct 0 Score 0

Which of the following is NOT a primary objective of software requirements engineering?

  1. To understand the needs and expectations of stakeholders.

  2. To define the functional and non-functional requirements of a software system.

  3. To design the software architecture.

  4. To develop test cases for the software system.


Correct Option: C
Explanation:

Software requirements engineering focuses on gathering, analyzing, and documenting the requirements of a software system, not on designing its architecture.

Which of the following is NOT a common technique for eliciting software requirements?

  1. Interviews

  2. Questionnaires

  3. Use cases

  4. Reverse engineering


Correct Option: D
Explanation:

Reverse engineering is a technique for understanding the design and implementation of an existing software system, not for eliciting requirements for a new system.

Which of the following is NOT a type of software requirement?

  1. Functional requirements

  2. Non-functional requirements

  3. Business requirements

  4. User requirements


Correct Option: C
Explanation:

Business requirements are high-level statements of the goals and objectives of an organization, not specific requirements for a software system.

Which of the following is NOT a common section of a Software Requirements Specification (SRS)?

  1. Introduction

  2. Requirements

  3. Design

  4. Test plan


Correct Option: C
Explanation:

The SRS should contain an introduction, a section on requirements, and a section on test plans, but it should not contain a section on design.

Which of the following is NOT a common type of non-functional requirement?

  1. Performance requirements

  2. Security requirements

  3. Reliability requirements

  4. Maintainability requirements


Correct Option: D
Explanation:

Maintainability requirements are not typically considered non-functional requirements, as they are related to the ease of modifying and updating the software system.

Which of the following is NOT a common technique for managing software requirements?

  1. Requirements traceability matrix

  2. Change control board

  3. Risk management

  4. Configuration management


Correct Option: D
Explanation:

Configuration management is a technique for managing the changes to the software system itself, not for managing the requirements for the system.

Which of the following is NOT a common tool for documenting software requirements?

  1. Natural language

  2. Structured natural language

  3. Use cases

  4. Formal specifications


Correct Option: D
Explanation:

Formal specifications are a mathematical notation for expressing software requirements, but they are not a common tool for documenting requirements.

Which of the following is NOT a common technique for validating software requirements?

  1. Reviews

  2. Inspections

  3. Prototyping

  4. User acceptance testing


Correct Option: D
Explanation:

User acceptance testing is a technique for verifying that the software system meets the user's needs, not for validating the requirements for the system.

Which of the following is NOT a common technique for managing software requirements changes?

  1. Change control board

  2. Impact analysis

  3. Risk management

  4. Version control


Correct Option: D
Explanation:

Version control is a technique for managing the changes to the software system itself, not for managing the changes to the requirements for the system.

Which of the following is NOT a common technique for prioritizing software requirements?

  1. MoSCoW method

  2. Weighted sum method

  3. Analytical hierarchy process

  4. Pairwise comparison


Correct Option: C
Explanation:

The analytical hierarchy process is a technique for making decisions, not for prioritizing software requirements.

Which of the following is NOT a common technique for tracing software requirements?

  1. Requirements traceability matrix

  2. Use cases

  3. Data flow diagrams

  4. Entity-relationship diagrams


Correct Option: D
Explanation:

Entity-relationship diagrams are a technique for modeling data, not for tracing software requirements.

Which of the following is NOT a common technique for managing software requirements risks?

  1. Risk identification

  2. Risk assessment

  3. Risk mitigation

  4. Risk acceptance


Correct Option: D
Explanation:

Risk acceptance is a decision to accept a risk, not a technique for managing software requirements risks.

Which of the following is NOT a common technique for communicating software requirements?

  1. Natural language

  2. Structured natural language

  3. Use cases

  4. Formal specifications


Correct Option: D
Explanation:

Formal specifications are a mathematical notation for expressing software requirements, but they are not a common technique for communicating requirements to stakeholders.

Which of the following is NOT a common technique for measuring the quality of software requirements?

  1. Completeness

  2. Consistency

  3. Correctness

  4. Traceability


Correct Option: D
Explanation:

Traceability is a measure of the degree to which requirements can be traced to other artifacts, such as design documents and test cases, not a measure of the quality of the requirements themselves.

- Hide questions