Object Oriented Approach in Software Development
Part I
Requirement
An online retail store aims to develop a system to manage its sales, inventory, and delivery process efficiently. Currently, the store handles customer orders manually, leading to delays and errors in processing. The management has requested a solution to streamline the workflow and provide real-time data on inventory levels, order status, and delivery tracking.
The proposed system will involve the following:
- Customers can browse available products and place orders.
- The inventory system automatically updates stock levels when an order is placed.
- Payment is processed online, and a receipt is issued to the customer.
- A delivery tracking system allows customers to monitor the status of their orders.
As a software developer, your task is to:
(a) List all functional and non-functional requirements for the system.
(b) Draw a class diagram with at least FIVE classes with appropriate attributes and methods.
(c) Include at least TWO inheritance relationships and TWO associations in the diagram.
(50 marks)
Part II
Online Class Participation (10%)
Discuss the following topic(s) in the forum and submit proof of your participation in the online discussions:
- What are the challenges in implementing inheritance in object-oriented design, and how can these challenges be addressed?
Bincangkan topik berkenaan di dalam forum dan hantar bukti penglibatan forum dalam perbincangan dalam talian.
- Apakah cabaran dalam melaksanakan pewarisan dalam reka bentuk berorientasikan objek, dan bagaimana cabaran ini dapat diselesaikan?
Experts Answer on Above Questions on Software Development
Functional requirements
The online retail system should be able to provide specific functions like product browsing, order placement, updating inventory, online payment, order status management, tracking delivery, customer account management, order history, inventory management, delivery management and notifications. Along with these functional requirements, the non functional requirements include the performance like product searches and order processing, availability, security, reliability, scalability, usability, maintainability, data integrity, compatibility and auditability.
UML class diagrams
There are seven classes for an appropriate design which includes user, customer, staff, product, order, payment in delivery. The main attributes include user id, name, email and password for user, customer ID and delivery address for customer, staff ID and role for staff, product ID, name, price, stock quantity for product, order ID, order date, status and total amount for order, payment ID, amount, payment date and status for payment, and delivery ID, status and estimated Date for delivery.
Relationships
Inheritance relationships include customer inherits from user, and staff inherits from user. The associations are customer places the order, the order comprises product, order has payment and order has delivery. The UML structure would therefore be:

This clearly satisfies the requirement for five classes with two inheritance relationships and two associations.
Challenges in implementing inheritance in object oriented design?
The major challenges are the incorrect use of inheritance, tight coupling, deep inheritance hierarchies, method overriding problems, multiple inheritance conflicts etc.
| The above model answer is reviewed by Joseph, P. PhD Graduate, having expertise in data science and deep learning. Disclaimer: This answer is a model for study and reference purposes only. Please do not submit it as your own work. |
Want Detailed Answers with References?
The analysis of the functional and nonfunctional requirements for an online retail system including the UML class diagram and inheritance challenges above revealed important findings that could be utilised in improving the overall retail system. Without programming assignment helpers in Malaysia, you can get a similar kind of assistance with your programming task. Simply visit our assignment help page in Malaysia to get a professional programming expert for your assignment. You can also explore the solved assignment answers from OUM to analyse the quality of writing of our experts.
Why Students Choose Us
Need Help With Similar Object Oriented Programming Assignment?
Get a programming assignment helper in Malaysia for all your programming assignment needs including object oriented programming including functional analysis, class diagrams and more.
- Programming Assignment Helpers
- Applies Relevant Class Diagrams
- Professional Coders and Debuggers
- Case Study & Report Writing
