Software Engineering · Quiz 2 · Sep 2025
Software Engineering · Quiz 2 · Sep 2025
← 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.
23 / 23 published solutions
A company is developing an Online Food Delivery System (OFDS). Different users and systems
interact with OFDS in various ways. Identify the type of client in each case.
1. A customer orders food from a restaurant using the OFDS mobile app.
2. The restaurant staff updates menu items and prices through the OFDS portal.
3. The payment gateway processes the customer’s payment for the order.
4. The delivery tracking module communicates with the restaurant’s order management
system to update order status.
Which of the following correctly matches the type of client for each case?
1 → External user, 2 → Internal user, 3 → Software client, 4 → Software client
1 → Internal user, 2 → External user, 3 → Software client, 4 → Internal user
1 → External user, 2 → Software client, 3 → Internal user, 4 → Software client
1 → Software client, 2 → External user, 3 → Internal user, 4 → Internal user
**1. Identify the key property:** Customers are external human users; restaurant staff act as internal operational users in the scenario. The gateway and communicating order-management system are software clients.
**Answer: A — 1 → External user, 2 → Internal user, 3 → Software client, 4 → Software client.**
A: **Correct:** All four roles match the stated interactions.
B: **Incorrect:** This reverses the customer/staff roles and treats software as a person.
C: **Incorrect:** Restaurant staff are humans and the gateway is software.
D: **Incorrect:** The app customer is a person, while the gateway and order system are software.
Question 3 MCQ · 4.0 marks
A ride-hailing company has completed the development of a fare estimation feature. Internal
testers simulate trips and detect issues before release. Later, the company releases the feature to
selected users to get real-world feedback.
Which testing phases do these correspond to?
Integration testing → Beta testing
Alpha testing → Beta testing
Unit testing → Integration testing
Beta testing → Alpha testing
Published solution
**1. Identify the key property:** Controlled internal prerelease trials are alpha testing; trials by selected users in their own real-world environments are beta testing.
**Answer: B — Alpha testing → Beta testing.**
A: **Incorrect:** The first phase is described by its internal prerelease setting, not module integration.
B: **Correct:** Internal alpha trials precede real-world beta feedback.
C: **Incorrect:** Neither phase is described as isolated unit testing.
D: **Incorrect:** This reverses internal and external testing settings.
Question 4 MSQ · 4.0 marks
In a distributed software development project, multiple teams work on different modules. Each
module exposes an interface to allow other teams to interact with it.
From the following statements, which one(s) correctly describe the purpose of an interface
definition?
It specifies what actions a function or module can perform.
It explains how the function or module is implemented internally.
It defines the allowed inputs, requests, and format of the outputs.
Once the interface is defined, the underlying implementation can change
without affecting other modules.
Published solution
**1. Separate contract from implementation:** An interface defines allowed actions, inputs and outputs, enabling independent teams to interact without knowing internal code. Compatible internals can change while preserving that contract.
**Answer: A, C, D — Statements A, C and D.**
A: **Correct:** The public actions are specified.
B: **Incorrect:** Internal implementation details are hidden behind the interface.
C: **Correct:** Allowed inputs, requests and outputs are part of the contract.
D: **Correct:** An implementation may change if the full behavioural contract remains compatible.
Question 5 MSQ · 4.0 marks
A team is building a mobile banking app. The exact requirements are unclear, so they build a
prototype with limited functionality and share it with the client for feedback before building the
full system.
Which of the following are advantages of using a prototype model?
Helps clients understand what they actually need.
Reduces development cost because prototypes are always used in production.
Helps developers identify technical issues and improve design before full
development.
Ensures all bugs are caught before the final system is built.
Published solution
**1. Use early feedback:** A prototype helps the client clarify needs and lets developers detect design or technical difficulties early. Prototypes may be discarded and do not guarantee discovery of every defect.
**Answer: A, C — Requirement clarification and early issue detection.**
A: **Correct:** The concrete demonstration helps clarify client expectations.
B: **Incorrect:** Prototypes are not always suitable for production reuse.
C: **Correct:** Early experimentation can expose technical and design issues.
D: **Incorrect:** A prototype cannot ensure every bug is caught.
Question 6 MSQ · 4.0 marks
You are developing features for the sales summary module of the seller portal. Different
industries have different priorities: mobile sales teams care about launch day sales, whereas
furniture sales teams care about 30-day sales trends.
Why might you conduct focus groups with sales managers from different industries?
(More than one answer may be correct)
To gain consensus on common requirements across industries.
To highlight conflicts or differences between stakeholder needs.
To observe how users perform tasks in their natural setting.
To get detailed regulatory information from banks.
Published solution
**1. Compare stakeholder views:** A focus group allows managers to discuss common needs and expose conflicts between industries. It is a group elicitation discussion, not field observation or a bank-regulation investigation.
**Answer: A, B — Consensus and stakeholder-difference discovery.**
A: **Correct:** Discussion can establish shared requirements.
B: **Correct:** Contrasting priorities can be identified directly.
C: **Incorrect:** Natural-setting observation is a different technique.
D: **Incorrect:** The stated managers are not being assembled for bank-regulation research.
Question 7 MCQ · 4.0 marks
Consider the following two requirements:
Requirement 1: The mobile banking app must complete a fund transfer transaction within 3
seconds.
Requirement 2: The mobile banking app must allow users to view their account balance and
transaction history.
Which of the following statements is true?
Requirement 1 is a functional requirement, whereas Requirement 2 is a non-
functional requirement.
Requirement 2 is a functional requirement, whereas Requirement 1 is a non-
functional requirement.
Both requirements are functional requirements.
Both the requirements are non-functional requirements.
Published solution
**1. Identify the key property:** A three-second bound constrains performance and is non-functional. Viewing balances and history describes functional capabilities.
**Answer: B — Requirement 2 is a functional requirement, whereas Requirement 1 is a non-.**
A: **Incorrect:** This reverses the capability and quality classifications.
B: **Correct:** Requirement 2 describes behaviour; Requirement 1 constrains performance.
C: **Incorrect:** The response-time limit is a quality constraint.
D: **Incorrect:** Viewing balance/history is a system function.
Question 8 MCQ · 4.0 marks
Consider the user story given below for a **ride-sharing app** and answer the question.
Feature: Find nearby drivers
As a rider,
I want to search for available drivers
so that I can see driver details, estimated fare and arrival time within a reasonable time.
The results must be displayed with clear sorting and filtering options.
Now consider the following improvement in the user story. The phrase
so that I can see driver details, estimated fare and arrival time within a reasonable time.
is modified as:
so that I can see driver details, estimated fare and arrival time within 4 seconds.
It makes the user story more **__________**.
Specific
Measurable
Achievable
Relevant
Timeboxed
Published solution
**1. Identify the key property:** Replacing “reasonable time” with four seconds creates an objective response-time criterion, making the story measurable.
**Answer: B — Measurable.**
A: **Incorrect:** It adds detail, but measurability is the direct benefit of a numerical bound.
B: **Correct:** The response time can be objectively timed.
C: **Incorrect:** A bound alone does not prove feasibility.
D: **Incorrect:** The benefit was already relevant before the change.
E: **Incorrect:** This is a system response limit, not a timebox for completing the development task.
Question 9 MCQ · 4.0 marks
A hospital management system introduces a new appointment booking interface. Users complain
that it takes them a long time to figure out how to add or delete a patient record, and no tutorial
or guided steps are provided.
Which usability goal is not satisfied?
Learnability
Memorability
Effectiveness
Efficiency
Published solution
**1. Identify the key property:** New users cannot discover how to perform basic actions. This primarily concerns how easily the interface can be learned.
**Answer: A — Learnability.**
A: **Correct:** The problem is learning the operations initially.
B: **Incorrect:** Memorability concerns returning after already learning them.
C: **Incorrect:** The primary complaint is learning rather than an inability to achieve the goal once understood.
D: **Incorrect:** Efficiency concerns effort and speed in performing an understood task.
Question 10 MCQ · 4.0 marks
During a client meeting, the UX designer presents hand-drawn sketches of different screens on
paper to demonstrate navigation flow. The client suggests some changes, which the designer
applies immediately.
Which type of prototype is being used?
Storyboard
Paper prototype
Interactive prototype
Digital mock-up
Published solution
**1. Identify the key property:** The designer uses quickly editable physical screen sketches to explore navigation with the client. That is a paper prototype.
**Answer: B — Paper prototype.**
A: **Incorrect:** A storyboard emphasizes a narrative sequence rather than manipulating prototype screens.
B: **Correct:** Physical sketches are used as a prototype.
C: **Incorrect:** The stated medium specifically makes it paper prototyping, though it can simulate interaction.
D: **Incorrect:** The sketches are on paper rather than digital screens.
Question 11 MCQ · 4.0 marks
A new user opens a document editor and navigates menus to copy text, while an experienced user
immediately uses Ctrl+C. Which design heuristic is being demonstrated?
Recognition over recall
Flexibility
Freedom
Providing help
Published solution
**1. Identify the key property:** Menus support beginners while Ctrl+C accelerates the same task for experts. Multiple ways to perform an action demonstrate flexibility.
**Answer: B — Flexibility.**
A: **Incorrect:** Visible menus support recognition, but the two alternatives specifically demonstrate flexibility.
B: **Correct:** Both novice and expert users have suitable ways to perform the same task.
C: **Incorrect:** Freedom concerns avoiding unnecessary restrictions or allowing reversal.
D: **Incorrect:** No help facility is described.
Question 12 MCQ · 4.0 marks
A development team is creating a new e-commerce platform. They group related functionalities
like inventory management, payment processing, and catalog management into separate
modules. What aspect of the design process is being demonstrated?
Interfaces
Components
Algorithms
Data structures
Published solution
**1. Identify the key property:** The team is decomposing related functionality into separate software modules, identifying components of the architecture.
**Answer: B — Components.**
A: **Incorrect:** Interfaces specify interactions between the modules.
B: **Correct:** The separate functional modules are components.
C: **Incorrect:** Algorithms specify computational procedures inside components.
D: **Incorrect:** Data structures organize stored data rather than group the system’s functional modules.
Question 13 MCQ · 4.0 marks
Module M1 directly modifies variables inside module M2 by referencing its internal implementation.
What is this type of coupling?
Data coupling
Common coupling
Content coupling
Control coupling
Published solution
**1. Identify the key property:** Direct access to another module’s internal implementation is content coupling.
**Answer: C — Content coupling.**
A: **Incorrect:** Data coupling uses values passed through defined interfaces.
B: **Incorrect:** Common coupling shares a global data area.
C: **Correct:** The access reaches directly into another module’s contents.
D: **Incorrect:** Control coupling passes flags or commands that direct another module’s behaviour.
Question 14 MCQ · 4.0 marks
A developer changes code in one module, and multiple other modules start failing due to
dependencies. Which issue does this illustrate?
Poor data cohesion
High coupling
High cohesion
Good modular design
Published solution
**1. Identify the key property:** A local code change causes many dependent modules to fail. This propagation reflects strong intermodule dependencies, or high coupling.
**Answer: B — High coupling.**
A: **Incorrect:** Cohesion concerns relationships inside a module, not the spread of intermodule breakage.
B: **Correct:** Strong dependencies make changes propagate across modules.
C: **Incorrect:** High cohesion is desirable internal focus and does not explain this symptom.
D: **Incorrect:** Good modularity limits such change propagation.
Question 15 MSQ · 4.0 marks
Consider the class diagram given below.
Which of the following is/are true about the class diagram?
There is an association relation between Customer and Order.
There is a composition relation between Order and Item.
There is an inheritance relation between Order and ExpressOrder.
There is an aggregation relation between Customer and Order.
There is a composition relation between Customer and Order.
There is an inheritance relation between Item and Order.
Published solution
**1. Read the diagram:** Customer–Order has an association arrow; Order–Item has a filled composition diamond; ExpressOrder points to Order with a hollow inheritance triangle.
**Answer: A, B, C — Customer–Order association, Order–Item composition, ExpressOrder inheritance.**
A: **Correct:** The plain navigable line is an association.
B: **Correct:** The filled diamond denotes composition.
C: **Correct:** ExpressOrder specializes Order.
D: **Incorrect:** There is no hollow aggregation diamond between Customer and Order.
E: **Incorrect:** There is no composition diamond between Customer and Order.
F: **Incorrect:** Item is connected by composition, not a generalization triangle.
Question 16 MCQ · 4.0 marks
Which debugging strategy involves tracing the flow of execution from the beginning of the
program to identify where the output deviates from expectations?
Forward debugging
Backward debugging
Input manipulation strategy
Black-box debugging
Published solution
**1. Identify the key property:** Starting from the program’s initial execution and following states until they deviate is forward debugging.
**Answer: A — Forward debugging.**
A: **Correct:** Execution is traced from the beginning toward the failure.
B: **Incorrect:** Backward debugging starts with the failure and works toward its cause.
C: **Incorrect:** Input manipulation varies inputs rather than follows execution states.
D: **Incorrect:** Black-box debugging does not trace internal execution.
Question 17 MCQ · 4.0 marks
A developer has written the following Python function to compute the factorial of a number:
def factorial(n):
if n < 0:
return None
elif n == 0 or n == 1:
return 1
else:
result = 1
for i in range(2, n + 1):
result *= i
return result
What is the cyclomatic complexity of this function?
2
3
4
5
Published solution
**1. Count source-level decision statements:** The first if, the elif, and the for loop contribute three decisions.
**2. Add the base path:** \(V=3+1=4\) under the statement-level convention.
**Answer: C — 4.**
**Convention note:** This is the source key’s convention. A CFG that explicitly expands the short-circuit OR in “n==0 or n==1” adds another decision and reports complexity 5.
A: **Incorrect:** The stated structure gives 4, rather than 2.
B: **Incorrect:** The stated structure gives 4, rather than 3.
C: **Correct:** This equals the independently counted result 4.
D: **Incorrect:** The stated structure gives 4, rather than 5.
Question 18 MCQ · 4.0 marks
A developer is working on a branch feature1 while another developer fixes a bug in branch issueP and
merges it into the master. The developer now needs to use a function (fun1) added in the bug-fix
branch, inside feature1.
Which Git command should be used before merging, to bring the latest changes from master into
feature1?
git fetch master
git pull origin feature1
git rebase master
git clone master
Published solution
**1. Identify the key property:** While on feature1, git rebase master replays its unique commits on top of master, incorporating master’s current commits into the feature branch.
**Answer: C — git rebase master.**
**Convention note:** master must already contain the latest remote changes. Rebase rewrites feature-branch commits, so its use on shared published branches needs coordination.
A: **Incorrect:** Fetch updates remote-tracking data and does not itself integrate master into feature1.
B: **Incorrect:** This pulls the feature1 remote branch rather than master.
C: **Correct:** Rebase places feature1’s changes on the updated master base.
D: **Incorrect:** Clone creates a new repository copy rather than updates the current branch.
Question 19 MCQ · 4.0 marks
A compiler processes source code into assembly and then an executable file. Each step transforms
data and passes it to the next stage. Which architectural style best describes this system?
Peer-to-Peer
Model-View-Controller
Pipe and Filter
Client-Server
Published solution
**1. Identify the key property:** Successive transformations pass their outputs to later stages. This is a pipe-and-filter pipeline.
**Answer: C — Pipe and Filter.**
A: **Incorrect:** Peer-to-peer is organized around cooperating peers.
B: **Incorrect:** MVC separates data, presentation and control.
C: **Correct:** Filters transform representations and pipes connect successive stages.
D: **Incorrect:** Client-server is organized around requests to a service.
Question 20 MCQ · 4.0 marks
A developer is designing a software system for a marketplace. There are multiple delivery types:
physical shipment, email delivery, and instant download.
Which of the following is a key advantage of applying the Interface Segregation Principle in this
scenario?
Clients are forced to implement all delivery methods, ensuring consistency.
Each client implements only the methods relevant to its delivery type, avoiding
meaningless implementations.
Interfaces are removed entirely, and all functionality is placed in one
monolithic class.
It reduces the number of classes in the system.
Published solution
**1. Identify the key property:** Separating interfaces by delivery role lets each implementation provide only the operations it actually needs.
**Answer: B — Each client implements only the methods relevant to its delivery type, avoiding .**
A: **Incorrect:** Forcing irrelevant methods is exactly what ISP avoids.
B: **Correct:** Role-specific interfaces eliminate meaningless implementations.
C: **Incorrect:** ISP splits abstractions rather than removes them all.
D: **Incorrect:** Reducing the class count is not its defining purpose.
Question 21 MCQ · 4.0 marks
You are designing a Book class with mandatory fields (ISBN, title, cost) and optional fields (author,
published year, description). Using multiple constructors to handle every combination of fields
leads to telescoping constructors.
Which design pattern would best solve this problem?
Factory Pattern
Builder Pattern
Adapter Pattern
Facade Pattern
Published solution
**1. Identify the key property:** Builder constructs an object incrementally with named optional settings, avoiding a constructor for every field combination.
**Answer: B — Builder Pattern.**
A: **Incorrect:** Factory centralizes creation but does not specifically solve optional-argument telescoping.
B: **Correct:** Builder provides readable stepwise construction with optional fields.
C: **Incorrect:** Adapter translates incompatible interfaces.
D: **Incorrect:** Facade simplifies access to a subsystem.
Question 22 MSQ · 4.0 marks
In a sprint planning meeting, which of the following are true?
The team decides what work can be completed in the sprint
Only the product owner decides which user stories are included
The team discusses how the selected work will be implemented
Sprint planning is time-boxed
Published solution
**1. Understand sprint planning:** The Scrum Team collaborates on the sprint goal and selected work; developers plan how to deliver it. Planning is timeboxed, and selection is not a unilateral Product Owner decision.
**Answer: A, C, D — Statements A, C and D.**
A: **Correct:** The planned amount reflects team capability and the goal.
B: **Incorrect:** The Product Owner prioritizes value, but developers and the team collaborate on selection.
C: **Correct:** The delivery approach is discussed and planned.
D: **Correct:** Sprint Planning has a defined timebox.
Question 23 MSQ · 4.0 marks
Consider a Work Breakdown Structure (WBS) for a project with root node "Amazon Seller Portal"
and leaf nodes such as "Component Diagram," "Database Schema," and "User Interface."
Which of the following statements are correct about WBS?
WBS breaks down project activities into smaller tasks
Each leaf node represents a task that can be assigned to a developer
Dependencies between tasks are explicitly represented in the WBS
WBS is structured like a tree with the project as the root
Published solution
**1. Identify a decomposition tree:** A WBS organizes the project into smaller assignable work packages with the project at the root. It does not itself encode scheduling dependencies as an activity network does.
**Answer: A, B, D — Decomposition, assignable leaves and a project-rooted tree.**
**Convention note:** A formal WBS is deliverable-oriented and a leaf can be a work package containing several detailed tasks; the question uses “task” in that simplified sense.
A: **Correct:** It decomposes the scope into manageable work.
B: **Correct:** Leaf work packages can be assigned and further planned as tasks.
C: **Incorrect:** Dependencies are represented in a scheduling/activity network rather than inherently in the WBS tree.
D: **Correct:** The project is decomposed hierarchically.
Question 24 MCQ · 4.0 marks
R1
R2
R3
All equally
Published solution
**1. Multiply probability by impact:** \(R_1=0.3(4)=1.2\), \(R_2=0.5(3)=1.5\), \(R_3=0.7(3)=2.1\).
**2. Rank the scores:** R3 has the highest exposure score and should be prioritized.
**Answer: C — R3.**
A: **Incorrect:** R1’s score 1.2 is below the others.
B: **Incorrect:** R2’s score 1.5 is below R3.
C: **Correct:** R3 has the highest score, 2.1.
D: **Incorrect:** The three scores are different.