Software Engineering Requirements Engineering 1 — Questions and Answers
Question 1: What is the primary goal of requirements engineering?
- To write code that meets user expectations
- To define and document what the software system must do (Correct answer)
- To test the software against user needs
- To deploy software to production environments
Correct answer: To define and document what the software system must do
Requirements engineering aims to define and document what the system must do before design and development begin.
Question 2: Which type of requirement specifies constraints on how a system must operate, such as performance and security?
- Functional requirements
- Business requirements
- Non-functional requirements (Correct answer)
- Domain requirements
Correct answer: Non-functional requirements
Non-functional requirements specify quality attributes and constraints like performance, security, and scalability rather than specific system behaviors.
Question 3: What is a 'use case' in requirements engineering?
- A description of how the system is implemented internally
- A scenario describing how a user interacts with the system to achieve a goal (Correct answer)
- A test case used to verify software behavior
- A design pattern for organizing code modules
Correct answer: A scenario describing how a user interacts with the system to achieve a goal
A use case describes an interaction between a user (actor) and the system to accomplish a specific goal.
Question 4: Which requirements elicitation technique involves observing users in their actual work environment?
- Interviews
- Surveys
- Ethnography (Correct answer)
- Prototyping
Correct answer: Ethnography
Ethnography involves observing users in their natural work environment to understand real-world workflows and discover implicit requirements.
Question 5: What does the acronym 'SRS' stand for in software engineering?
- Software Release Specification
- System Requirements Summary
- Software Requirements Specification (Correct answer)
- System Runtime Standards
Correct answer: Software Requirements Specification
SRS stands for Software Requirements Specification, the primary document that captures all functional and non-functional requirements for a system.
Question 6: Which of the following is an example of a functional requirement?
- The system must respond within 2 seconds
- The system must allow users to reset their password via email (Correct answer)
- The system must be available 99.9% of the time
- The system must use TLS 1.3 for all communications
Correct answer: The system must allow users to reset their password via email
A functional requirement describes a specific behavior or function the system must perform, such as enabling password resets via email.
Question 7: What is 'requirements traceability'?
- The ability to track changes to requirements over time
- The process of linking requirements to their origins and to design and test artifacts (Correct answer)
- A method for estimating how many requirements a project needs
- A technique for prioritizing requirements by business value
Correct answer: The process of linking requirements to their origins and to design and test artifacts
Requirements traceability links each requirement to its source and to downstream artifacts like design documents and test cases, enabling impact analysis.
What is the primary goal of requirements engineering?