0% found this document useful (0 votes)
11 views13 pages

OOAD Assignment ONE

The document outlines an assignment for Object-Oriented Analysis and Design, requiring groups of up to five members to select and answer two questions from a provided list. Each question involves designing various systems, such as a Library Management System, Banking System, and more, with specific deliverables including class diagrams, use case diagrams, and descriptions of classes and methods. The submission date for the assignment is set for March 21, 2025.

Uploaded by

elistragis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views13 pages

OOAD Assignment ONE

The document outlines an assignment for Object-Oriented Analysis and Design, requiring groups of up to five members to select and answer two questions from a provided list. Each question involves designing various systems, such as a Library Management System, Banking System, and more, with specific deliverables including class diagrams, use case diagrams, and descriptions of classes and methods. The submission date for the assignment is set for March 21, 2025.

Uploaded by

elistragis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

OBJECT ORIENTED ANALYSIS AND DESIGN

ASSIGNMENT ONE

Assignment Instructions:

1) Assignment to be attempted in groups of not more than


five members.
2) Each group to attempt two questions
3) P101 to pick questions from number one to number 15
4) P100 to pick questions from number 16 to number 31
5) Submission Date 21st March 2025

1. Create a Class Diagram for a Library Management System

Design a system for managing a library, which includes managing books,


members, and staff.

 Identify the classes involved in the system.


 Define the relationships between these classes (e.g., associations,
generalizations, compositions).
 Provide attributes and methods for each class.
 Represent the UML Class Diagram for the system.

Deliverables:

 A clear class diagram.


 Descriptions of each class and its methods.

2. Object-Oriented Analysis for a Banking System

Analyze and design a simple banking system that allows customers to open
accounts, deposit money, withdraw money, and check account balances.

 Identify and list the main objects (e.g., Customer, Account,


Transaction).
 Define the relationships and attributes of these objects.
 Identify key behaviors of these objects (e.g., deposit, withdraw,
transfer funds).
 Create a Use Case Diagram for the system.

Deliverables:

 Use Case Diagram.


 Object Identification and Relationships.
 Class Diagram.
3. Design a Student Enrollment System

Designing a system for enrolling students in courses at a university.

 Identify the main entities involved (e.g., Student, Course, Instructor,


Enrollment).
 Define relationships between these entities (e.g., a student can enroll
in many courses, a course can have many students).
 Create a UML Class Diagram with appropriate classes, attributes, and
methods.
 Consider additional features such as course prerequisites, student
registration limits, etc.

Deliverables:

 Class Diagram with details.


 Descriptions for each class, including their attributes and methods.
 Interaction/Sequence Diagram for the enrollment process.

4. Design a Shopping Cart System for an E-commerce Website

Design a system that allows customers to add products to a shopping cart,


view the cart, and proceed to checkout.

 Identify and define the classes (e.g., Customer, Product, ShoppingCart,


Order).
 Define the interactions between the classes (e.g., a customer can add
products to a shopping cart, and an order can be placed).
 Model the behavior of the system, including adding/removing products,
viewing the cart, calculating the total price, and checking out.
 Create a UML Class Diagram and a Sequence Diagram for the checkout
process.

Deliverables:

 Class Diagram.
 Sequence Diagram for the checkout process.
 Detailed explanations of the methods and attributes for each class.

5. Design a Movie Ticket Booking System

Design a system that allows users to book movie tickets online.

 Identify and define the main objects (e.g., Movie, Ticket, User,
Theater).
 Define the relationships and behaviors of these objects (e.g., a user
can book a ticket, a movie can have multiple screenings, a ticket is
linked to a specific movie and theater).
 Design the class diagram, considering features like seat availability
and ticket pricing.
 Create a Sequence Diagram to illustrate the booking process.

Deliverables:

 Class Diagram.
 Sequence Diagram for the booking process.
 Descriptions of the behavior of each object.

6. Create an ATM System Using OOAD

Design an ATM system where users can check balances, withdraw money,
and transfer funds between accounts.

 Identify the primary objects (e.g., User, Account, ATM, Transaction).


 Define the relationships between these objects (e.g., a user has an
account, an ATM performs transactions).
 Model the actions of the system (e.g., withdrawing money, checking
balances).
 Create Use Case Diagrams and Class Diagrams for the system.

Deliverables:

 Use Case Diagram showing all interactions.


 Class Diagram for the system.
 Sequence Diagram showing the steps for a withdrawal transaction.

7. Design a Ticket Reservation System for an Airline

Design a ticket reservation system for an airline, where users can book
flights, view available seats, and cancel bookings.

 Identify and define the main classes (e.g., Flight, Booking, User, Seat,
Payment).
 Model the relationships between these objects (e.g., a booking is
associated with a user and a flight).
 Define the key operations for the system (e.g., booking a seat, viewing
available flights).
 Create a Class Diagram and Sequence Diagram for the booking
process.

Deliverables:

 Class Diagram with all relevant entities.


 Sequence Diagram illustrating the booking flow.
 Description of classes, attributes, and methods.

8. Design a Simple Online Forum System


Design an online forum system where users can post topics, reply to topics,
and view threads.

 Identify the classes (e.g., User, Post, Topic, Reply, Thread).


 Define the relationships between the classes (e.g., a user creates a
post, a topic can have multiple replies).
 Identify and define key behaviors (e.g., posting, replying, viewing
threads).
 Create Use Case and Class Diagrams for the system.

Deliverables:

 Use Case Diagram illustrating user actions.


 Class Diagram.
 Explanation of methods and attributes for each class.

9. Design a Hotel Reservation, Check-in and Check-out System

Design a hotel system that allows guests to check in, check out, and make
payments.

 Identify the main classes (e.g., Guest, Reservation, Room, Payment,


Billing).
 Define relationships (e.g., a guest makes a reservation, a room is
assigned to a guest).
 Model behaviors (e.g., checking in, checking out, processing
payments).
 Create a Class Diagram and a Sequence Diagram for the check-in
process.
 Identify the classes involved (e.g., Room, Reservation, Guest,
Payment).
 Define the relationships (e.g., a guest makes a reservation, a room is
booked for a reservation).
 Define operations for checking availability, making reservations, and
canceling bookings.
 Create a Class Diagram and Sequence Diagram for booking a room.

Deliverables:

 Class Diagram showing rooms, reservations, and guests.


 Sequence Diagram for the check-in process.
 Descriptions for class behaviors and attributes.
 Sequence Diagram illustrating room booking.
 Descriptions for the operations and behaviors of the system.

Design a hotel booking system where users can check room availability,
book rooms, and cancel reservations.

10. Design a Car Rental System


Design a system that allows customers to rent cars, return them, and
manage rental periods.

 Identify the primary objects (e.g., Car, Customer, Rental, Payment).


 Define the relationships between these objects (e.g., a customer rents
a car, a rental has a start and end date).
 Identify the key operations of the system (e.g., renting a car, checking
availability, returning a car).
 Create a Class Diagram and Sequence Diagram for renting a car.

Deliverables:

 Class Diagram with details.


 Sequence Diagram illustrating the car rental process.
 A brief explanation of the system's behaviors.

11. Design a Social Media Platform

Design a social media platform where users can create profiles, post content,
follow other users, and like/share posts.

 Identify and define the main entities (e.g., User, Profile, Post,
Comment, Like, Follower).
 Define the relationships between these entities (e.g., a user can follow
many users, a post can have many comments).
 Model key behaviors (e.g., posting content, liking posts,
following/unfollowing users).
 Create a UML Class Diagram, a Use Case Diagram, and a Sequence
Diagram for posting content.

Deliverables:

 Class Diagram illustrating the main entities.


 Use Case Diagram depicting user interactions.
 Sequence Diagram showing the process for posting content.

12. Design a Ride-Hailing Service (e.g., Uber)

Design a system for a ride-hailing service where passengers can book rides,
drivers can accept requests, and payments are processed.

 Identify the main classes (e.g., Passenger, Driver, Ride, Vehicle,


Payment).
 Define relationships between classes (e.g., a ride is associated with a
passenger and a driver).
 Model the interactions, including booking a ride, accepting a ride, and
processing payment.
 Create a Class Diagram and a Sequence Diagram showing the ride
booking process.

Deliverables:

 Class Diagram with details.


 Sequence Diagram for booking and accepting a ride.
 Descriptions for the methods and attributes of each class.

13. Design a Food Delivery System

Design a system that allows customers to order food from various


restaurants and get it delivered.

 Identify the core objects (e.g., Customer, Restaurant, Menu, Order,


Delivery, Payment).
 Define relationships (e.g., a customer places an order, an order is
associated with a restaurant, a delivery is assigned to a driver).
 Model operations (e.g., placing an order, tracking delivery, processing
payment).
 Create a UML Class Diagram and a Sequence Diagram for the order
process.

Deliverables:

 Class Diagram showing relevant entities and their relationships.


 Sequence Diagram illustrating the order and delivery process.
 Explanations for each class, including key attributes and methods.

14. Design a Parking Management System

Design a system to manage a parking lot, allowing users to park their cars,
view available spaces, and check out when leaving.

 Identify and define the main classes (e.g., Car, ParkingSpace, Ticket,
Payment).
 Define the relationships (e.g., a car occupies a parking space, a ticket
is associated with a car).
 Model key behaviors (e.g., parking a car, issuing a ticket, processing
payment).
 Create a Class Diagram and a Sequence Diagram for parking a car and
checking out.

Deliverables:

 Class Diagram for the parking system.


 Sequence Diagram for the process of parking and checking out.
 Descriptions of the attributes and behaviors of the system.
15. Design a Healthcare Management System

Design a system for a healthcare facility where patients can schedule


appointments, see doctors, and view medical records.

 Identify the main objects (e.g., Patient, Doctor, Appointment,


MedicalRecord).
 Define relationships (e.g., a patient can have many appointments, a
doctor sees many patients).
 Model operations (e.g., scheduling an appointment, viewing medical
history).
 Create Use Case Diagrams and Class Diagrams.

Deliverables:

 Use Case Diagram showing interactions for booking an appointment


and viewing medical records.
 Class Diagram with relevant entities and their relationships.
 Detailed descriptions of the classes.

16. Design an Online Voting System

Design a secure system where users can register to vote, vote on a poll, and
view results.

 Identify the core objects (e.g., Voter, Poll, Candidate, Vote,


Administrator).
 Define relationships (e.g., a voter can cast a vote, a poll has multiple
candidates).
 Model key behaviors (e.g., casting a vote, tallying votes, viewing
results).
 Create a Class Diagram and a Sequence Diagram for the voting
process.

Deliverables:

 Class Diagram illustrating key entities and their interactions.


 Sequence Diagram for the vote casting and results retrieval process.
 Descriptions of key methods and attributes.

18. Design a Customer Support Ticketing System

Design a system that allows customers to submit support tickets and track
their resolution status.

 Identify the main entities (e.g., Customer, Ticket, SupportAgent,


Resolution).
 Define relationships (e.g., a customer creates a ticket, a support agent
resolves a ticket).
 Model operations (e.g., creating a ticket, updating ticket status,
assigning tickets to agents).
 Create Use Case Diagrams and Class Diagrams for the ticket
submission and resolution process.

Deliverables:

 Class Diagram for the support system.


 Use Case Diagram illustrating customer and support agent
interactions.
 Sequence Diagram for the ticket resolution process.

19. Design a Content Management System (CMS)

Design a system that allows users to create, edit, and publish content on a
website.

 Identify the core objects (e.g., User, Content, Article, Category, Media).
 Define relationships (e.g., a user creates content, an article belongs to
a category).
 Model behaviors (e.g., creating, editing, publishing articles).
 Create a Class Diagram and a Sequence Diagram for the article
creation process.

Deliverables:

 Class Diagram showing content and user-related entities.


 Sequence Diagram for content creation and publishing.
 Descriptions of the entities and their methods.

20. Design an Inventory Management System for a Warehouse

Design a system for tracking products in a warehouse, including stock levels,


product shipments, and supplier management.

 Identify the key objects (e.g., Product, Supplier, Shipment, Inventory).


 Define relationships (e.g., a product belongs to an inventory, an
inventory receives shipments).
 Model key operations (e.g., adding products, updating stock levels,
processing shipments).
 Create Class and Sequence Diagrams for managing inventory and
receiving shipments.

Deliverables:

 Class Diagram for the inventory management system.


 Sequence Diagram illustrating the process of receiving and updating
stock.
 Descriptions of classes, methods, and attributes.

21. Design a Library Management System with Late Fees

Design a system where users can borrow books from a library and incur late
fees if they return the books after the due date.

 Identify the main objects (e.g., Book, Member, Loan, Payment).


 Define relationships (e.g., a member borrows a book, a loan tracks the
borrowed book).
 Model the system to calculate late fees based on the due date and
return date.
 Create a Class Diagram and Sequence Diagram for borrowing a book
and paying fees.

Deliverables:

 Class Diagram for managing books, members, loans, and payments.


 Sequence Diagram for the book borrowing and late fee calculation
process.
 Descriptions of the relevant classes and behaviors.

22. Design a Hospital Management System

Design a system for managing a hospital's operations, including patient


registration, appointment scheduling, doctor management, billing, and
medical records.

 Identify the main objects (e.g., Patient, Doctor, Appointment,


Medical Record, Department, Billing, Staff, Prescription).
 Define relationships between these objects (e.g., a patient has an
appointment, a doctor manages many patients, a department has
multiple doctors, a patient can have many prescriptions).
 Model the key behaviors (e.g., registering a patient, scheduling an
appointment, assigning a doctor, generating bills, managing medical
records).
 Consider features such as:
o Managing departments (e.g., Surgery, Cardiology, etc.)
o Handling patient treatment history
o Managing doctors' shifts
o Prescription management
o Billing and payments for treatments and consultations

Deliverables:

 Class Diagram showing all relevant entities (Patient, Doctor,


Appointment, etc.) and their relationships.
 Use Case Diagram representing the major functionalities (e.g.,
Registering a patient, Scheduling an appointment, Billing).
 Sequence Diagram for the process of scheduling an appointment and
generating a bill for a patient.
 Descriptions for each class, including key attributes (e.g., name,
contact info, diagnosis) and methods (e.g., bookAppointment(),
generateBill()).

23. Design an Online Learning Management System (LMS)

Design a system for an online learning platform where students can enroll in
courses, track progress, take quizzes, and receive grades.

 Identify the key objects (e.g., Student, Course, Instructor,


Enrollment, Quiz, Assignment, Grade).
 Define relationships (e.g., a student can enroll in many courses, an
instructor teaches multiple courses, a student takes quizzes and
assignments).
 Model behaviors (e.g., enrolling in a course, submitting assignments,
grading assignments).
 Consider additional features such as course materials, course progress
tracking, and certificates.

Deliverables:

 Class Diagram with all relevant entities and their relationships.


 Sequence Diagram for the process of submitting an assignment and
receiving a grade.
 Descriptions of each class and their methods.

24. Design a Conference Management System

Design a system for managing conferences, including handling registrations,


session scheduling, speaker management, and attendee tracking.

 Identify the core objects (e.g., Attendee, Speaker, Session,


Registration, Ticket, Event).
 Define relationships (e.g., an attendee registers for sessions, a
speaker is associated with multiple sessions, sessions have multiple
attendees).
 Model key behaviors (e.g., registering for a conference, scheduling a
session, issuing tickets).
 Consider additional features such as session feedback, ticket pricing,
and event reminders.

Deliverables:

 Class Diagram with entities and their relationships.


 Sequence Diagram showing the registration and ticketing process.
 Descriptive text explaining the classes, attributes, and behaviors.

25. Design an E-Library System


Design a system for an e-library where users can borrow e-books, rate them,
and search for books based on genres and categories.

 Identify key objects (e.g., User, EBook, BorrowingRecord, Genre,


Author, Review).
 Define relationships (e.g., a user borrows many books, a book can
have multiple reviews).
 Model behaviors (e.g., borrowing books, submitting reviews,
searching books).
 Consider features like digital rights management (DRM) for the books,
notifications for due dates, and book recommendations.

Deliverables:

 Class Diagram illustrating the system's structure.


 Sequence Diagram showing the process of borrowing and reviewing
a book.
 Descriptions for each class, its attributes, and its methods.

26. Design a Real-Estate Property Management System

Design a system for managing property listings, client details, and rental
transactions for a real estate business.

 Identify the core objects (e.g., Property, Client, Lease, Payment,


Agent, PropertyType).
 Define relationships (e.g., a client leases a property, a property can
have multiple payment records).
 Model behaviors (e.g., adding a property, processing a lease,
tracking payment history).
 Consider additional features such as lease expiration alerts, property
availability checks, and agent commissions.

Deliverables:

 Class Diagram for properties, clients, leases, and payments.


 Sequence Diagram for processing a lease agreement.
 Explanations of class attributes and methods.

27. Design a Sports League Management System

Design a system to manage a sports league, including teams, players,


games, and results.

 Identify the main objects (e.g., Team, Player, Match, Result, Coach,
League).
 Define relationships (e.g., a team has many players, a match
involves two teams, a coach manages a team).
 Model key behaviors (e.g., scheduling a match, updating scores,
generating rankings).
 Consider additional features such as player statistics, team rankings,
and match scheduling conflicts.

Deliverables:

 Class Diagram for managing teams, matches, players, and coaches.


 Sequence Diagram for scheduling a match and updating results.
 Descriptive explanation for each class and method.

28. Design a Fitness Tracking System

Design a system to track users' fitness activities, goals, and progress,


including integration with wearable devices.

 Identify key objects (e.g., User, Activity, Goal, Device, Progress,


Workout).
 Define relationships (e.g., a user performs many activities, a goal is
linked to a user’s progress).
 Model behaviors (e.g., logging an activity, setting a goal, tracking
progress).
 Consider integration with wearable devices, syncing data, and offering
fitness reports.

Deliverables:

 Class Diagram showing the entities and their relationships.


 Sequence Diagram for logging an activity and tracking progress.
 Description for each class, including attributes and methods.

29. Design a Recipe and Meal Planning System

Design a system where users can find recipes, plan meals, and create
shopping lists.

 Identify the main objects (e.g., Recipe, Ingredient, MealPlan, User,


ShoppingList).
 Define relationships (e.g., a recipe has many ingredients, a user can
create multiple meal plans).
 Model behaviors (e.g., searching for recipes, adding recipes to a
meal plan, generating a shopping list).
 Consider features like meal planning for the week, nutrition tracking,
and recipe ratings.

Deliverables:

 Class Diagram with the key objects and relationships.


 Sequence Diagram for planning a meal and generating a shopping
list.
 Descriptions of each class, its attributes, and behaviors.

30. Design a Subscription-Based Video Streaming System

Design a system for a video streaming platform where users can subscribe,
watch videos, and create playlists.

 Identify key objects (e.g., User, Video, Playlist, Subscription,


Payment, Genre).
 Define relationships (e.g., a user subscribes to a plan, a video
belongs to a genre, a user can create multiple playlists).
 Model behaviors (e.g., subscribing to a service, watching a video,
adding a video to a playlist).
 Consider features like content recommendations, subscription
management, and billing.

Deliverables:

 Class Diagram for managing users, subscriptions, videos, and


playlists.
 Sequence Diagram for subscribing and watching a video.
 Descriptive text explaining each class and method.

31. Design a Document Management System (DMS)

Design a system for managing documents in an organization, including


uploading, searching, versioning, and sharing documents.

 Identify key objects (e.g., Document, User, Folder, Version,


Permission).
 Define relationships (e.g., a user has permissions to access
documents, a document has multiple versions).
 Model behaviors (e.g., uploading a document, creating a folder,
sharing documents).
 Consider additional features like version history, document approval
workflows, and search functionality.

Deliverables:

 Class Diagram for documents, users, folders, and versions.


 Sequence Diagram for uploading a document and sharing it.
 Descriptive text for class attributes and methods.

You might also like