Software Design MCQs

Topic-wise practice questions for Software Engineering. Test your knowledge, check solutions on demand, and pace your preparation.

Zero-leak answer engine • Rate-limited explanations
Practice in Timed Mode
Q1medium
Compare Top-Down Design and Bottom-Up Design. Which is more common in modern Object-Oriented programming?
Q2hard
(Code/Console Logic) Analyze the following Python code snippet. Which design principle is being violated here? bad_design.py

class Engine:
def __init__(self):
        self.temperature = 90
class Car:
def check_engine(self, engine_obj):
# Directly modifying internal data of another class
if engine_obj.temperature > 100:
Q3medium
A developer is worried about "Single Point of Failure" in their system design. They decide to use a **Load Balancer** to distribute traffic across three identical servers. This is a design decision related to:
Q4easy
What is the relationship between Redundancy and Reliability in software design?
Q5easy
What does the Open-Closed Principle (from SOLID) suggest?
Q6medium
A design uses Inheritance where a "Circle" class inherits from a "Shape" class. This is an example of which design relationship? coupling-report.txt

[WARN] Module_Auth modified variable 'is_admin'
       inside Module_UI memory space.
Q7medium
A developer is writing a "PaymentModule." They include functions for calculating taxes, generating PDF invoices, sending emails to customers, and updating the database. A senior reviewer says the module has Low Cohesion. Why?
Q8medium
(Code/Console Logic) A developer is looking at a system log that tracks object interactions. Which type of Coupling is most likely present if Module A can modify the local data of Module B?
Q9medium
A design choice is made to use a Design Pattern to solve a recurring problem of creating objects without specifying their exact class. This is known as:
Q10easy
What is the primary purpose of a Data Flow Diagram (DFD) in the design phase?

 Books can still exist independently.)