Comprehensive MCQ Quiz (50 Questions)
Topic 1: Foundations of System Development
1. Which of the following best describes a System Development
Methodology?
a) A specific programming language used to write code.
b) A formal framework covering the entire process of creating
an information system, including hardware, software, people,
and procedures.
c) A set of tools for debugging software.
d) The process of writing and testing code.
2. A software team is following a strict set of steps to build a
mobile application. Their process only covers planning,
designing, coding, and testing the app. This is an example of a:
a) System Development Methodology
b) Software Development Methodology
c) Hardware Procurement Plan
d) Business Analysis Strategy
3. The traditional (algorithmic) view of software primarily focuses
on:
a) Objects and their interactions.
b) Data and the functions that operate on that data as separate
entities.
c) The user interface and user experience.
d) Data security and encryption.
4. The formula "Algorithms + Data Structures = Program" is most
representative of which view of software?
a) The Object-Oriented View
b) The Component-Based View
c) The Traditional View
d) The Use-Case Driven View
5. The object-oriented view of software is characterized by:
a) Separating procedures from the data they manipulate.
b) Combining data and the methods that operate on that data
into single units.
c) A top-down, procedural approach to problem-solving.
d) Focusing exclusively on the database structure.
6. An "orthogonal view" of software implies that the two
perspectives being compared are:
a) Similar and dependent on each other.
b) Identical in practice but different in theory.
c) Independent and conceptually different.
d) Both outdated and no longer in use.
7. Which of the following is considered a primary benefit
of Object Orientation?
a) It guarantees that programs will run faster.
b) It promotes code reusability and makes systems easier to
maintain.
c) It eliminates the need for software testing.
d) It is simpler to learn than traditional programming.
8. The concept of a "seamless transition" in object-oriented
development refers to:
a) The software installing on a user's computer without errors.
b) The ability to easily switch between programming languages.
c) The use of a consistent object model throughout analysis,
design, and implementation.
d) The automatic conversion of old procedural code into object-
oriented code.
Topic 2: Object Basics - Classes, Objects, and Attributes
1. What is the relationship between a class and an object?
a) A class is an instance of an object.
b) An object is a blueprint for a class.
c) A class is a blueprint, and an object is an instance of that
class.
d) There is no difference between them.
2. In a university system, Professor Smith who teaches Computer
Science would be an example of a(n):
a) Class
b) Object
c) Method
d) Attribute
3. The color, model, and cost of a Car object are examples of its:
a) Methods
b) Attributes
c) Subclasses
d) Messages
4. The actions an object can perform, such as drive() or brake() for
a Car object, are called:
a) Attributes
b) Classes
c) Methods
d) Hierarchies
5. The question "What does this object know?" refers to its _____,
while "What can this object do?" refers to its _____.
a) methods, attributes
b) attributes, methods
c) class, object
d) object, class
6. When one object wants another object to perform an action, it
sends a:
a) Variable
b) Hierarchy
c) Message
d) Class
7. An object’s unique identifier that distinguishes it from all other
objects, even if their attributes are identical, is called its:
a) State
b) Identity
c) Behavior
d) Class name
Topic 3: The Four Pillars of OOP
1. The bundling of data and methods into a single unit and hiding
the internal details from the outside world is known as:
a) Inheritance
b) Polymorphism
c) Encapsulation
d) Association
2. The primary goal of information hiding is to:
a) Make the code harder for others to read.
b) Protect an object's internal state from unauthorized or
accidental modification.
c) Reduce the number of comments needed in the code.
d) Speed up the program's execution time.
3. In a class, an attribute declared as private can be accessed by:
a) Any other class in the program.
b) Only the subclasses of that class.
c) Only the methods within that same class.
d) Any function inside or outside the class.
4. Inheritance represents which type of relationship?
a) A "has-a" relationship
b) An "is-a" relationship
c) A "uses-a" relationship
d) A "part-of" relationship
5. A SavingsAccount class is derived from a more
general Account class. The SavingsAccount is the _____ and
the Account is the _____.
a) superclass, subclass
b) base class, derived class
c) subclass, superclass
d) object, class
6. The main benefit of using inheritance is:
a) Information hiding
b) Code reusability
c) Dynamic binding
d) Object persistence
7. Polymorphism allows:
a) An object to have multiple unique identities.
b) Different objects to respond to the same message in different
ways.
c) A class to inherit from multiple superclasses.
d) Data to be hidden from other parts of the program.
8. A superclass Shape has a method calculateArea(). The
subclasses Circle and Square each provide their own specific
implementation of this method. This is a classic example of:
a) Encapsulation
b) Inheritance
c) Polymorphism
d) Association
9. A Car object is composed of an Engine object and
four Wheel objects. This "has-a" or "part-of" relationship is
known as:
a) Inheritance
b) Polymorphism
c) Aggregation (or Composition)
d) Generalization
10. The ability of an object to exist even after the program
that created it has stopped running is called:
a) Object Identity
b) Persistence
c) Dynamic Binding
d) Metaclass
11. When the specific method to be called is determined at
runtime rather than at compile time, it is known as:
a) Static Binding
b) Dynamic Binding
c) Early Binding
d) Static Typing
Topic 4: System Development Life Cycle (SDLC)
1. Which SDLC model follows a rigid, sequential process where
each phase must be fully completed before the next begins?
a) Iterative Model
b) Agile Model
c) Waterfall Model
d) Spiral Model
2. What is the most significant disadvantage of the Waterfall
Model?
a) It is too flexible and lacks structure.
b) It is difficult to accommodate changes in requirements once
a phase is complete.
c) It requires too much user feedback throughout the process.
d) It is only suitable for object-oriented development.
3. The Object-Oriented Systems Development Life Cycle is best
described as:
a) Linear and sequential
b) Iterative and incremental
c) Random and unstructured
d) A single-phase process
4. The question "Am I building the product right?" (i.e., does it
meet its specifications?) relates to:
a) Validation
b) Verification
c) Prototyping
d) Maintenance
5. The question "Am I building the right product?" (i.e., does it
meet the customer's actual needs?) relates to:
a) Validation
b) Verification
c) Debugging
d) Implementation
6. What is the primary purpose of building a prototype during
development?
a) To create the final, fully functional version of the software.
b) To test the hardware before installing the software.
c) To provide an early version of the system for user feedback
and requirement clarification.
d) To replace the need for a design phase.
7. A prototype that shows the user interface and overall structure
of an application but has no back-end functionality is called a:
a) Vertical prototype
b) Functional prototype
c) Horizontal prototype
d) System prototype
8. A development approach that focuses on building applications
by assembling pre-built, reusable software modules is called:
a) Waterfall Development
b) Top-Down Development
c) Component-Based Development (CBD)
d) Procedural Development
9. The main goal of Rapid Application Development (RAD) is to:
a) Prioritize extensive documentation over speed.
b) Develop systems more quickly through iteration, prototyping,
and user involvement.
c) Follow a strict, non-adaptive plan.
d) Focus only on the coding phase of development.
Topic 5: The Unified Approach and Use-Case Modeling
1. The Unified Approach methodology was developed by
combining the methods of which three prominent figures?
a) Booch, Rumbaugh, and Jacobson
b) Yourdon, Coad, and Constantine
c) Gates, Jobs, and Wozniak
d) Dijkstra, Hoare, and Knuth
2. The Unified Approach is primarily driven by:
a) Data models
b) Use cases
c) Architectural patterns
d) Component diagrams
3. In a use-case diagram, a person or external system that
interacts with the software is called a(n):
a) Object
b) Class
c) Actor
d) Component
4. Which of the following would be the best example of a use
case for an ATM system?
a) Bank Customer
b) Check Account Balance
c) Database of Transactions
d) Enter PIN
5. The primary purpose of Object-Oriented Analysis (OOA) is to:
a) Write the final code for the system.
b) Design the database schema.
c) Understand the problem domain and identify the system's
requirements in terms of objects.
d) Test the completed software application.
6. During Object-Oriented Design (OOD), the focus shifts from
"what" the system does to:
a) "Who" will use the system.
b) "When" the system will be delivered.
c) "Why" the system is needed.
d) "How" the system will be implemented.
7. The standard modeling language used with the Unified
Approach, which provides various diagrams for visualizing a
system, is:
a) C++
b) UML (Unified Modeling Language)
c) HTML
d) SQL
8. Which phase of object-oriented development involves
translating the design into a working program?
a) Analysis
b) Design
c) Implementation
d) Prototyping
Topic 6: General Concepts and Justification
1. Which OOP principle is most responsible for
enabling modularity and making objects act like "black boxes"?
a) Inheritance
b) Encapsulation
c) Polymorphism
d) Abstraction
2. The ability to create a SportsCar class that builds upon an
existing Car class is a direct application of which OOP principle
for reusability?
a) Encapsulation
b) Polymorphism
c) Inheritance
d) Association
3. Which of the following is NOT a benefit of the Object-Oriented
approach compared to the Traditional approach?
a) Better management of complexity.
b) Higher degree of code reusability.
c) Closer mapping to real-world entities.
d) Simpler and faster for very small, linear tasks.
4. The "ripple effect" where a change in one place requires many
subsequent changes is a major problem in which paradigm?
a) The Object-Oriented paradigm
b) The Component-Based paradigm
c) The Traditional (Functional) paradigm
d) The Use-Case Driven paradigm
5. A software developer thinks about a problem by first identifying
all the "things" involved, like Customer, Product, and Order. This
developer is using which view?
a) Algorithmic view
b) Procedural view
c) Object-Oriented view
d) Top-down functional view
6. Why is a use-case driven approach considered critical
for validation?
a) Because it ensures the code has no bugs.
b) Because it focuses development on the user's goals, ensuring
the right product is built.
c) Because it allows developers to write code faster.
d) Because it creates more detailed technical documentation.
7. The fact that you can use a steering wheel to drive any car,
regardless of whether it has a gasoline or electric engine, is a
real-world analogy for:
a) Inheritance
b) Encapsulation (hiding internal complexity behind a public
interface)
c) Class Hierarchy
d) Static Binding