
This set focuses on requirements engineering, the stage where most costly project failures begin. It covers functional and non-functional requirements, qualities of a good SRS, elicitation techniques, data flow diagrams and their levels, data dictionaries, use case relationships, decision tables, traceability and validation. Each question is explained, making it useful for semester exams, GATE and UGC NET practice, and interviews for analyst and developer roles.
How to practise: read each question and tap the option you think is correct. You will see right away whether you got it, along with a short explanation, and your score is tracked at the bottom of the screen. This set has 18 questions.
Topics covered in this set
- Functional and non-functional requirements
- Characteristics of a good SRS (IEEE 830)
- Elicitation techniques
- Data flow diagrams, levels and balancing
- Use case diagrams: actors, include and extend
- Traceability, prioritisation and validation
Software Engineering MCQs with answers and explanations
Q1. "The system shall return search results within 2 seconds for 95 percent of queries." This statement is a
a) Functional requirement
b) Domain-independent design decision
c) Non-functional (performance) requirement
d) User interface requirement
Q2. Which of the following is a functional requirement for a payroll system?
a) The system shall be available 99.9 percent of the time
b) The system shall be written in Java
c) Every screen shall load within one second
d) The system shall generate a monthly salary slip for every employee
Q3. IEEE Std 830 is best known as a recommended practice for
a) Software requirements specifications
b) Software test documentation
c) Software configuration management plans
d) Software project cost estimation
Q4. An SRS document should ideally avoid
a) Stating external interfaces
b) Prescribing internal design and implementation details
c) Specifying performance constraints
d) Defining functional requirements
Q5. "The interface shall be user-friendly" is a poor requirement mainly because it is
a) Not a functional requirement
b) Too detailed
c) Inconsistent with other requirements
d) Not verifiable
Q6. An analyst spends several days in a hospital ward quietly watching how nurses actually record medicines, to uncover requirements users do not mention. This elicitation technique is
a) Ethnography (observation)
b) Questionnaire
c) Joint application development
d) Requirements prototyping
Q7. A level 0 DFD, also called a context diagram, shows
a) All data stores and internal processes of the system
b) The control flow and loops of each process
c) The entire system as a single process with its external entities and data flows
d) The database schema with primary keys
Q8. Which of the following cannot be represented in a data flow diagram?
a) Data stores
b) The sequence and conditions that decide when a process executes
c) External entities
d) Flow of data between processes
Q9. Balancing of a DFD means
a) Data flows into and out of a parent process match those of its child diagram
b) Each process has an equal number of inputs and outputs
c) All data stores are drawn at the same level
d) Every external entity appears in every level
Q10. The main purpose of a data dictionary in structured analysis is to
a) List the developers assigned to each module
b) Store the test cases for each requirement
c) Define precisely every data item, data flow and data store used in the model
d) Record the cost estimate of each process
Q11. In an online shop, "Apply discount coupon" is performed only when the customer has a coupon, during "Checkout". The relationship from Apply discount coupon to Checkout is
a) Include
b) Extend
c) Generalisation
d) Association with multiplicity
Q12. In a use case diagram, an actor represents
a) A class inside the system
b) A database table
c) A single method call
d) A role played by a person or external system interacting with the system
Q13. A requirements traceability matrix is mainly used to
a) Estimate the cost of each requirement
b) Link each requirement to the design elements and test cases that address it
c) Rank developers by productivity
d) Track the hours spent on each defect
Q14. Which activity is primarily a requirements validation technique?
a) Writing the source code
b) Load testing the deployed system
c) Formal review of the SRS with stakeholders
d) Code refactoring
Q15. In MoSCoW prioritisation, the letter W stands for
a) Would like to have
b) Worth having
c) Weighted
d) Won't have this time
Q16. Which sequence correctly orders the main activities of the requirements engineering process?
a) Feasibility study, elicitation and analysis, specification, validation
b) Specification, feasibility study, validation, elicitation
c) Validation, specification, elicitation, feasibility study
d) Elicitation, validation, feasibility study, specification
Q17. A decision table models a business rule with 4 independent binary conditions. How many rules does the complete table contain before any simplification?
a) 8
b) 4
c) 16
d) 32
Q18. A railway signalling system must comply with a national safety standard for train separation. Such a requirement, derived from the application area, is called a
a) User interface requirement
b) Domain requirement
c) Organisational requirement
d) Derived design constraint from coding
Quick revision notes
- Functional requirement: what the system must do; non-functional: qualities such as performance, security, usability.
- A good SRS is correct, unambiguous, complete, consistent, ranked, verifiable, modifiable and traceable (IEEE 830).
- SRS states what the system does, not how it is implemented.
- Level 0 DFD = context diagram: whole system as one process with external entities.
- DFD shows data flow, not control flow or decisions; child diagrams must be balanced with the parent.
- Include = mandatory reused behaviour; extend = optional, conditional behaviour.
- A decision table with n binary conditions has 2^n rules before simplification.
- MoSCoW: Must have, Should have, Could have, Won't have this time.
Frequently asked questions
What is the difference between functional and non-functional requirements?
Functional requirements describe the services or functions the system provides, such as generating an invoice. Non-functional requirements describe how well it does them, such as response time, availability or security constraints.
Why must a DFD be balanced?
When a process is decomposed into a lower-level diagram, the data flows entering and leaving the child diagram must match those of the parent process. Otherwise the levels contradict each other and the model becomes inconsistent.
What is the difference between include and extend in use cases?
An include relationship means the base use case always uses the included behaviour, which is factored out for reuse. An extend relationship adds optional behaviour that runs only under certain conditions at an extension point.
Comments
Post a Comment