Question: E - bookstore Management System Problem Statement: The Great E - books Store requires a software application to enhance the customer experience and streamline internal
Ebookstore Management System
Problem Statement:
The Great Ebooks Store requires a software application to enhance the customer experience and streamline internal operations. The critical requirements for the software application are as follows:
Ebook Management: The system should maintain a comprehensive catalog of the store's available ebooks. Each ebook should have detailed information such as titles author, publication date genre, and price.
Customer Management: The system should facilitate customer information management, including personal details like name and contact information Customers can browse ebooks online, create an account, and purchase ebooks. Upon purchase, they should receive an invoice with details of the order, ebook prices, and any applicable discounts or promotions.
Shopping Cart and Orders: The system should allow customers to add ebooks to their cart, remove items, or update quantities. Orders should reflect the number of ebooks and order date. Ebooks are delivered instantly upon purchase completion.
Discounts and Pricing: The system should support flexible pricing and discount options. The ebook store's loyalty program members receive a discount on all purchases, and bulk purchases or more ebooks in a single order receive a discount.
Payment and Invoicing: Each order should generate an invoice detailing the itemized price, applicable discounts, and the final total. Valueadded Taxes VaT at a fixed rate of are applied to all purchases.
Requirements:
Design UML Class Diagram Design UML class diagram representing the concepts and relationships in the scenario. Ensure to use inheritance or association aggregation and composition relationships. You may make assumptions about attributes with proper access specified and concepts not explicitly mentioned in the problem statement. A clear description of the relationships, modularity, and assumptions must be included. All classes to meet the requirements must be identified a minimum number of required classes is six text and students are expected to demonstrate knowledge of different types of relationships.
Write Python Code to Implement Your UML Class Diagram Implement the Python classes based on your UML diagram. Make sure to:
Group the classes into different files for good modularity.
Use docstring, privateprotected attributes, getter and setter methods r and a str method for all classes.
Include comments and documentation to ensure good readability.
The submitted code must be errorfree and have wellformatted output. Each student's work will be unique in terms of the code and output.
Define Test Cases Write test cases in a separate file to demonstrate all the program's features. Ensure to test all features. Some examples of test cases are not limited to:
AddModifyRemove a new ebook to the ebookstore's catalog.
AddModifyRemove customer account.
The addition of ebooks to the shopping cart.
Applying discounts for loyalty program members or bulk purchases.
The generation of an invoice showing relevant discounts and required payments.
Submission Details:
Submit a report single PDF file that has the following sections:
UML Class Diagram and Description
Python classes copypaste the code, NOT an image of the code The code must be well documented and follow good coding standards.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
