BE Computer Engineering (IOE, TU) Object Oriented Analysis and Design (IOE, CT 651) Question Paper 2079
This is the official BE Computer Engineering (IOE, TU) Object Oriented Analysis and Design (IOE, CT 651) question paper for 2079, as set in the regular annual examination. It carries 80 full marks and a time allowance of 180 minutes, across 13 questions. On Kekkei you can attempt this Object Oriented Analysis and Design (IOE, CT 651) past paper online with a timer, get instant AI feedback and step-by-step solutions, and track the topics where you lose marks — completely free. Whether you are revising for your BE Computer Engineering (IOE, TU) Object Oriented Analysis and Design (IOE, CT 651) exam or solving previous years' question papers, this 2079 paper is a great way to practise under real exam conditions.
Section A: Long Answer Questions
Attempt all / any as specified.
(a) Define object orientation and explain how it differs from the structured (procedural) approach to software development. (4)
(b) With suitable examples, explain the four fundamental principles of object orientation: abstraction, encapsulation, inheritance, and polymorphism. (8)
Consider a Library Management System in which members can search for books, borrow and return books, and reserve books that are currently issued. A librarian manages the catalogue and registers fines for overdue books.
(a) Draw a use case diagram for the system, clearly showing the actors, use cases, and the «include» and «extend» relationships where appropriate. (7)
(b) Identify the key domain classes, their attributes and operations, and draw a class diagram showing associations, multiplicities, and at least one aggregation/composition relationship. (7)
For an online ticket booking system, consider the use case "Book a ticket" in which a customer selects a show, the system checks seat availability, the customer makes a payment through a payment gateway, and a confirmed ticket is generated.
(a) Write the operation contract for the system operation makePayment(), clearly stating its pre-conditions and post-conditions. (4)
(b) Draw a sequence diagram for the "Book a ticket" scenario, showing the participating objects, messages, return values, and any loops or alternative fragments. (10)
(a) What is a design pattern? Explain the three categories of GoF design patterns (creational, structural, behavioural) with one example pattern from each category. (6)
(b) Explain the Observer pattern. Draw its class/structure diagram and describe a real-world scenario where it is the most appropriate design choice. (6)
Section B: Short Answer Questions
Attempt all / any as specified.
Differentiate between association, aggregation, and composition relationships in a class diagram. Illustrate each with a suitable example and the corresponding UML notation.
List the different categories of UML diagrams (structural and behavioural). Briefly explain the purpose of any three behavioural diagrams.
Distinguish between a state (statechart) diagram and an activity diagram. Draw a state diagram for an Order object that goes through the states: created, paid, shipped, delivered, and cancelled.
What is a collaboration (communication) diagram? How does it differ from a sequence diagram? Draw a collaboration diagram for a simple withdraw cash from ATM interaction.
State and explain any three of the SOLID principles of object-oriented design, giving a short example of a violation and its fix for each.
Define the terms actor, use case, scenario, and use case extension. Explain the difference between the «include» and «extend» relationships in use case modeling.
Draw an activity diagram for the process of user registration with email verification, in which the system validates input, sends a verification email, and activates the account only after the user clicks the verification link. Show the use of fork/join and decision nodes where appropriate.
Explain the Singleton design pattern. Why is it used, what problems can it cause, and write a code skeleton (in any OO language) that ensures only a single instance is created.
Write short notes on any two of the following:
(a) Coupling and cohesion
(b) Polymorphism and dynamic binding
(c) Stereotypes in UML