Software Engineering · Quiz 2 · Jan 2026
Software Engineering · Quiz 2 · Jan 2026
← Course papers · Start practice / exam
Questions and published explanations below are available without starting a test. Some questions may not have a published solution yet.
25 / 25 published solutions
A software feature has already been released. Developers observe that users are struggling with
the interface on a specific browser and release a patch to fix it.
This activity belongs to which phase?
Design
Development
Testing
Maintenance
**1. Identify the distinction:** The feature is already released; diagnosing and patching a browser-specific problem is post-release maintenance.
**Answer: D — Maintenance.**
A: **Incorrect:** Initial design precedes the released system.
B: **Incorrect:** Although code is changed, its lifecycle purpose is post-release maintenance.
C: **Incorrect:** Testing may support the patch, but the overall activity is maintenance.
D: **Correct:** Post-release fixes and adaptations belong to maintenance.
Question 3 MCQ · 4.0 marks
Two developers are working on different modules of an e-commerce system. One developer
modifies a function’s parameters, causing the other developer’s code to break.
Which concept would have helped prevent this issue?
Unit testing
Interface definition
Acceptance testing
Code refactoring
Published solution
**1. Identify the distinction:** An agreed interface defines parameter names, types and allowed interactions between modules. Preserving that contract prevents one developer’s incompatible parameter change from breaking another module.
**Answer: B — Interface definition.**
A: **Incorrect:** Unit tests may detect breakage but do not alone define a shared contract.
B: **Correct:** A stable, explicit interface establishes the intermodule contract.
C: **Incorrect:** Acceptance tests address user-level requirements.
D: **Incorrect:** Refactoring does not itself prevent breaking an undocumented interface.
Question 4 MCQ · 4.0 marks
Before releasing a banking application, the development team tests individual functions such as
“check balance” and “transfer money” in complete isolation.
What type of testing is being performed?
Integration testing
Acceptance testing
Unit testing
Beta testing
Published solution
**1. Identify the distinction:** Individual functions are tested in isolation from other components. This is unit testing.
**Answer: C — Unit testing.**
A: **Incorrect:** Integration testing exercises interactions between units.
B: **Incorrect:** Acceptance testing verifies the product against customer requirements.
C: **Correct:** The scope is isolated program units.
D: **Incorrect:** Beta testing uses external users in real-world conditions.
Question 5 MCQ · 4.0 marks
A student team begins coding a project immediately after an informal discussion with users. After
completion, they repeatedly modify the code to fix mismatches with user expectations.
This approach is best described as:
Build-and-fix programming
Waterfall model
Spiral model
Prototype model
Published solution
**1. Identify the distinction:** Coding begins without a systematic specification and is followed by repeated fixes to make the product fit expectations. This is build-and-fix programming.
**Answer: A — Build-and-fix programming.**
A: **Correct:** The approach builds first and fixes mismatches reactively.
B: **Incorrect:** Waterfall follows defined sequential lifecycle phases.
C: **Incorrect:** Spiral explicitly iterates through risk analysis and planning.
D: **Incorrect:** A prototype model deliberately builds a feedback artifact to refine requirements.
Question 6 MCQ · 4.0 marks
A software team wants to collect answers to specific, well-defined questions from thousands of
geographically distributed sellers.
Which requirement-gathering technique is most appropriate?
Interviews
Focus groups
Observation
Questionnaires
Published solution
**1. Identify the distinction:** A standardized questionnaire collects well-defined answers from many geographically dispersed respondents with low per-person effort.
**Answer: D — Questionnaires.**
A: **Incorrect:** Individual interviews are costly at this scale.
B: **Incorrect:** Focus groups engage small groups rather than thousands efficiently.
C: **Incorrect:** Observation is poorly suited to collecting many specific answers remotely.
D: **Correct:** Questionnaires scale to standardized, geographically distributed responses.
Question 7 MCQ · 4.0 marks
Which of the following is a correct user story template as per BDD?
Feature–Role–Time
Input–Process–Output
Role–Feature–Benefit
Task–Module–Deadline
Published solution
**1. Identify the distinction:** The user-story form is “As a [role], I want [feature], so that [benefit].” It identifies who needs what and why.
**Answer: C — Role–Feature–Benefit.**
A: **Incorrect:** Time is not the third component of the usual user-story form.
B: **Incorrect:** This describes processing rather than the role and business benefit.
C: **Correct:** The sequence is role, feature and benefit.
D: **Incorrect:** Module and deadline do not replace the user and benefit.
Question 8 MCQ · 4.0 marks
An e-commerce website allows returning customers to purchase items quickly by saving delivery
addresses and payment details.
This design primarily improves:
Effectiveness
Efficiency
Learnability
Safety
Published solution
**1. Identify the distinction:** Reusing saved details reduces repeated entry, time and effort for returning customers. That primarily improves efficiency.
**Answer: B — Efficiency.**
A: **Incorrect:** Effectiveness concerns successfully achieving the goal, not primarily reducing effort.
B: **Correct:** The same purchase can be completed with fewer actions and less time.
C: **Incorrect:** Learnability concerns learning the interface.
D: **Incorrect:** Safety concerns avoiding harmful errors or outcomes.
Question 9 MCQ · 4.0 marks
Multiple screens of a mobile application are drawn on paper, and switching between screens is
simulated manually during discussions with users.
Which prototyping technique is being used?
Storyboarding
Paper prototyping
Digital mock-ups
Coding a beta version
Published solution
**1. Identify the distinction:** Paper screens are manipulated manually to simulate interaction with users. This is paper prototyping.
**Answer: B — Paper prototyping.**
A: **Incorrect:** Storyboarding primarily depicts a narrative sequence.
B: **Correct:** The paper screens simulate an interactive workflow manually.
C: **Incorrect:** A digital mock-up is implemented with digital rather than physical screens.
D: **Incorrect:** No running beta software has been coded.
Question 10 MCQ · 4.0 marks
An e-commerce website allows users to browse products and check prices without requiring them
to log in.
Which heuristic for action does this design decision support?
Freedom
Flexibility
Recognition over recall
Consistency
Published solution
**1. Identify the distinction:** The user can browse and check prices without being forced to authenticate. This supports freedom to explore before committing.
**Answer: A — Freedom.**
A: **Correct:** The action is available without an unnecessary prerequisite.
B: **Incorrect:** Flexibility usually concerns multiple ways or shortcuts to perform a task.
C: **Incorrect:** This does not primarily reduce the need to remember information.
D: **Incorrect:** This does not describe consistency across interface conventions.
Question 11 MCQ · 4.0 marks
A project has an initial COCOMO effort estimate of 20 person-months. After considering cost
drivers, the Effort Adjustment Factor (EAF) is 1.5.
What is the final estimated effort?
20 PM
25 PM
30 PM
35 PM
Published solution
**1. Apply the effort adjustment:** \[E_{final}=E_{initial}\times EAF=20\times1.5=30\text{ PM}.\]
**Answer: C — 30 person-months.**
A: **Incorrect:** This omits the adjustment factor.
B: **Incorrect:** EAF is multiplied, not treated as an arbitrary five-month increment.
C: **Correct:** 20 multiplied by 1.5 is 30.
D: **Incorrect:** The adjusted estimate is 30, not 35.
Question 12 MCQ · 4.0 marks
A person ensures that the development team delivers maximum value to the client and prioritizes
work considering business needs and technical constraints.
Which Scrum role is being described?
Scrum Master
Product Owner
Project Manager
Development Lead
Published solution
**1. Identify the distinction:** The Product Owner is accountable for maximizing product value and ordering the backlog according to business priorities.
**Answer: B — Product Owner.**
A: **Incorrect:** The Scrum Master supports Scrum effectiveness and removes process impediments.
B: **Correct:** Value maximization and backlog ordering belong to the Product Owner.
C: **Incorrect:** Project Manager is not a defined Scrum accountability.
D: **Incorrect:** A technical lead does not by that role own business-value prioritization.
Question 13 MCQ · 4.0 marks
A team completes 4 story points in one sprint. This value is used to predict future progress.
What is this value called?
Throughput
Capacity
Velocity
Burn rate
Published solution
**1. Identify the distinction:** Velocity is the amount of estimated story work completed in a sprint, often expressed as story points per sprint.
**Answer: C — Velocity.**
A: **Incorrect:** Throughput generally counts completed work items per time period.
B: **Incorrect:** Capacity describes available work resources, not completed story points.
C: **Correct:** Completed story points per sprint are velocity.
D: **Incorrect:** Burn rate concerns expenditure or resource consumption.
Question 14 MCQ · 4.0 marks
Several developers with critical expertise leave the organization midway through a project,
causing delays.
Which mitigation strategy BEST addresses this risk?
Reducing scope
Cross-training team members
Using third-party components
Increasing automation
Published solution
**1. Identify the distinction:** Cross-training spreads critical knowledge across the team, reducing dependence on specialists who may leave.
**Answer: B — Cross-training team members.**
A: **Incorrect:** Cutting scope may reduce load but does not preserve critical expertise.
B: **Correct:** Cross-training directly reduces single-person knowledge dependencies.
C: **Incorrect:** Third-party components do not necessarily replace the lost expertise.
D: **Incorrect:** Automation does not by itself transfer understanding of the system.
Question 15 MCQ · 4.0 marks
A module performs a sequence of operations where each step depends on the previous one, but
all steps contribute to one main goal.
This is an example of:
Functional cohesion
Sequential cohesion
Coincidental cohesion
Temporal cohesion
Published solution
**1. Identify the distinction:** The distinguishing property is that one operation’s output or result is required by the next. That is sequential cohesion.
**Answer: B — Sequential cohesion.**
A: **Incorrect:** Functional cohesion emphasizes one indivisible function rather than the stated chain of dependent stages.
B: **Correct:** The operations are connected by a sequential producer-consumer relationship.
C: **Incorrect:** Coincidental cohesion groups unrelated operations.
D: **Incorrect:** Temporal cohesion groups operations because they occur at the same time.
Question 16 MCQ · 4.0 marks
If class Book inherits from class Product, which statement is true?
Book has-a Product
Book uses Product
Book is-a Product
Product is part of Book
Published solution
**1. Identify the distinction:** Inheritance defines a specialization relationship: Book is a particular kind of Product.
**Answer: C — Book is-a Product.**
A: **Incorrect:** Has-a describes composition or aggregation.
B: **Incorrect:** Uses describes a dependency.
C: **Correct:** A subclass is a specialized instance of its superclass type.
D: **Incorrect:** Being a part is not the meaning of inheritance.
Question 17 MCQ · 4.0 marks
Which UML diagram is used to model message exchanges over time among objects?
Class diagram
Sequence diagram
Activity diagram
Use-case diagram
Published solution
**1. Identify the distinction:** A sequence diagram places objects on lifelines and shows messages in chronological order.
**Answer: B — Sequence diagram.**
A: **Incorrect:** A class diagram shows static classes and relationships.
B: **Correct:** Lifelines and ordered messages model interactions over time.
C: **Incorrect:** An activity diagram models workflow and control flow.
D: **Incorrect:** A use-case diagram shows actors and high-level user goals.
Question 18 MCQ · 4.0 marks
A developer designs a
class with private data like
and
, and allows access
only through methods such as
and
.
This describes which of the following object-oriented programming concepts?
Inheritance
Encapsulation
Association
Dependency
Published solution
**1. Identify the distinction:** Private state is accessed through controlled public methods such as getPrice() and setPrice(). This groups state with behaviour and hides the representation: encapsulation.
**Answer: B — Encapsulation.**
A: **Incorrect:** Inheritance specializes an existing class.
B: **Correct:** The object controls access to its internal data.
C: **Incorrect:** Association relates objects rather than hiding their internal state.
D: **Incorrect:** Dependency describes reliance between elements.
Question 19 MCQ · 4.0 marks
A team of 20 developers is working on a large web application. One developer commits faulty code
to the main branch that crashes the system. Other developers are unable to test their own
changes. The team wants to quickly revert to a stable version and identify who made the faulty
change.
Which feature of a Version Control System directly addresses this situation?
Branching
Version history tracking
Staging area
Distributed repositories
Published solution
**1. Identify the distinction:** Version history records commits, their authors and earlier snapshots. It supports identifying the faulty change and restoring or reverting to a known-good version.
**Answer: B — Version history tracking.**
A: **Incorrect:** Branching isolates work but does not alone identify historical changes.
B: **Correct:** Recorded snapshots and authorship support investigation and rollback.
C: **Incorrect:** The staging area collects the next commit’s changes.
D: **Incorrect:** Distributed copies alone are not the history and attribution feature being asked about.
Question 20 MCQ · 4.0 marks
A banking application calculates interest. Due to a wrong formula in the code, the system
produces an incorrect interest amount for customers.
In the same banking application, the developer finds that the line
was written instead of
This incorrect line is an example of:
Failure
Fault
Error
Test case
Published solution
**1. Identify the distinction:** The incorrect line in the code is the program defect, or fault. The incorrect interest observed when it executes is the failure.
**Answer: B — Fault.**
A: **Incorrect:** Failure refers to the observed incorrect output.
B: **Correct:** The erroneous source statement is a fault.
C: **Incorrect:** Error refers to the developer’s mistaken action or reasoning.
D: **Incorrect:** A test case specifies inputs and expected outputs.
Question 21 MCQ · 4.0 marks
A video-streaming application is functionally correct, but users complain that it is very slow when
playing high-resolution videos.
The development team wants to find out:
• Which functions consume the most CPU time
• Where memory usage is highest
• Which parts of the program are performance bottlenecks
Which debugging tool or technique should the team use?
Logging
Dump & Diff
Profiling Tool
Backward Debugging
Published solution
**1. Identify the distinction:** Profiling attributes CPU time and memory usage to parts of the program, revealing runtime bottlenecks.
**Answer: C — Profiling Tool.**
A: **Incorrect:** Logging records events but does not systematically measure hotspots by itself.
B: **Incorrect:** Dump-and-diff compares program states.
C: **Correct:** A profiler directly measures CPU and memory hotspots.
D: **Incorrect:** Backward debugging traces causes of behaviour rather than primarily measuring performance.
Question 22 MCQ · 4.0 marks
A photo-editing application applies a series of transformations to an image: first resizing, then
filtering, then compression, and finally saving it to disk. Each stage takes input from the previous
stage and passes output to the next.
Which architecture best represents this system?
Client–server
Pipe-and-filter
Peer-to-peer
MVC
Published solution
**1. Identify the distinction:** Each image-processing stage transforms its input and feeds the next stage. These independent transformations connected in a pipeline are pipe-and-filter.
**Answer: B — Pipe-and-filter.**
A: **Incorrect:** Client-server organizes requests to services.
B: **Correct:** Pipes carry data between successive transformation filters.
C: **Incorrect:** Peer-to-peer connects equivalent distributed participants.
D: **Incorrect:** MVC divides model, presentation and input handling.
Question 23 MCQ · 4.0 marks
An e-commerce system performs the following steps when a customer places an order:
1. Create an Order
2. Notify the Seller
3. Call Packaging
4. Call Delivery
Originally, every client had to call all these classes in the correct sequence.
To simplify this, a new class
was created with a method:
This method internally creates all required objects and executes all steps in order.
Which design pattern is being used?
Adapter
Facade
Builder
Factory
Published solution
**1. Identify the distinction:** OrderService offers one operation that coordinates Order, Seller, Packaging and Delivery. It hides a complex subsystem workflow behind a simple facade.
**Answer: B — Facade.**
A: **Incorrect:** Adapter translates an incompatible interface.
B: **Correct:** Facade provides a simplified unified entry point.
C: **Incorrect:** Builder primarily constructs a complex object step by step.
D: **Incorrect:** Factory primarily centralizes object creation.
Question 24 MCQ · 4.0 marks
A software company builds a system to process both physical books and e-books.
The interface
contains the following methods:
•
•
•
•
The e-book module must implement
and
even though they do
nothing.
Which principle is violated?
Open–Closed Principle
Interface Segregation Principle
Liskov Substitution Principle
Dependency Inversion Principle
Published solution
**1. Identify the distinction:** E-books must implement physical packing and shipping operations that they do not use. Splitting the interface by relevant responsibilities would avoid this dependency.
**Answer: B — Interface Segregation Principle.**
A: **Incorrect:** Open-Closed concerns extension without editing existing code.
B: **Correct:** Interface Segregation prohibits forcing clients to depend on irrelevant methods.
C: **Incorrect:** Liskov Substitution concerns preserving behavioural contracts under substitution.
D: **Incorrect:** Dependency Inversion concerns abstract versus concrete dependencies.
Question 25 MSQ · 4.0 marks
Which of the following are non-functional requirements?
(Select all that apply)
The system must display new products within 5 seconds
The system should behave consistently over time
The seller can update product prices
The system should recover from invalid input
Published solution
**1. Separate capability from quality:** A five-second display limit constrains performance; consistency over time concerns reliability; recovery from bad input concerns robustness. Updating prices is a functional capability.
**Answer: A, B, D — Performance, reliability and robustness.**
A: **Correct:** The five-second limit is a performance quality requirement.
B: **Correct:** Consistent operation over time is a reliability property.
C: **Incorrect:** Updating a price specifies a function the seller can perform.
D: **Correct:** Recovery describes robustness against invalid input.
Question 26 MSQ · 4.0 marks
Which of the following are characteristics of heuristic (model-based) estimation techniques?
(Select all that apply)
Use mathematical models
Relate effort to project size
Depend solely on expert intuition
Include models like COCOMO
Published solution
**1. Recognize model-based estimation:** These techniques use mathematical relationships, often fitted to historical data, to map project size and other drivers to effort. COCOMO is an example.
**Answer: A, B, D — Mathematical models, size–effort relations and COCOMO.**
A: **Correct:** The effort relationship is represented mathematically.
B: **Correct:** Size is a major predictor in models such as COCOMO.
C: **Incorrect:** A quantitative model is not solely expert intuition.
D: **Correct:** COCOMO is a parametric effort model.