Project Objective: The purpose of this project is to enable the students to demonstrate their understanding of object or
Posted: Sat May 14, 2022 4:05 pm
Project Objective: The purpose of this project is to enable the students to demonstrate their understanding of object oriented concepts in building a simulation of E-Store Management System. You will be able to combine your knowledge of encapsulation, abstraction and inheritance along with different techniques such as working with files and building graphical user interfaces that you have learned throughout the semester to develop this system. The application has two types of users: • Administrator • Customer Project Requirements: Phase 1: Designing the structural part of your application (1) Create a UML class diagram that models at least four classes (you can add more classes as you see necessary) as follows: An abstract class called Item with itemID, itemName, price, and an abstract method called orderSummary that takes a parameter called "quantity" of type integer and then it will show the purchase summer to the customer (will be used when the customer buy a specific item). • A class called User with userID, firstName, lastName, username (for login), password, email, and userType (either "admin" or "customer") • Two subclasses of class Item that are called Electronics and Clothes. Class Electronics contains brand, model, and year • Class Clothes contains color, department, and size (2) Create a project called E-Store Management System (EMS) and implement the aforementioned classes, (3) Declare some overloaded constructors with parameters for each class, along with appropriate methods as you see fit, and declare all the datafields to be private, (4) The items in both categories will be stored in two separate text files (electronics.txt and clothes.txt).
itemid, itemName, brand, model year.price 1001, Mobil Phone, Apple, iphone, 2018, 1500 1002. Laptop Dell XPS, 2020, 1856 1003, TV, LG,OLED, 2019, 2000 itemID, itemName.color department,size.price 2001, shirt,blue, men, L. 12 2002. Dress, green, women, XL, 500 2003. Pants, yellow, kids.M. 31 When either users (Admin or Customer) log-in into their respective account, the items from both files will be displayed on the console window (as shown below). Items from electronics.txt: tento, tentame, brand, model, year.price 1001. Mobil Phone, Apple, iphone, 2018, 1500 1002. Laptop Dell XP3, 2020,1850 1003, TV, LG,OLED, 2019.2000 Items from clothes.txt: itemt, itemtiame.color.department,size price 2001, Shirt, blue, men, L. 12 2002. Dress, green, women, XL, 500 2003, Pants, yellow, kids,,31 Phase 2: Designing the user interfaces of the application (5) Regarding the graphical interfaces of the application, it's required to design at least 7 GUIs (use the interfaces designs below as a reference to help you understand what operations and options should be provided in each interface): 1. The main interface (the login screen) enable the user to login to the application. Note, there are two types of users: Admin, and Customer. In this project, you can hard-code the credentials of the Admin and the Customer and one account of each type of users will be enough. E-Store Management System (EMS) Username Pasword shop Login
2. The second interface is the Admin main menu where he can perform the following tasks: a. Showing the list of items from each file in the console window right after the admin has logged in. b. Adding a new item to either electronics.txt or clothes.txt files. c. Deleting an existing item from either electronics.txt or clothes.txt files (design both interfaces in b and c as you see fit). d. When pressing the "Exit" button, the system will terminate the application. Admin Menu Add a New Item Delete an Item Exit 3. The customer interface will show the following tasks: a Showing the list of items from each file in the console window right after the custom stomer has logged in. b. The options "Electronics" and "Clothes" mean that the customer wants to buy an item from either these categories, where it will take the user to the "Item Purchase Form" (a demonstration for the interface is shown below). Note that the fields "itemID" and "itemName" are required in order to complete the purchase transaction. Also, the customer can specify the quantity for the item that he wants to purchase, and when the purchase transaction is complete, the order summary will be displayed at the bottom of the window (shown in red). The purchase summery will be displayed using the method "orderSummary" c. When pressing the "Exit" button, the system will terminate the application. Customer Main Menu Electronic Item Purchase Form Electronics item": itemName" Brand: Model: Quantity: Clothes Exit Exit Buy Push TV-
itemid, itemName, brand, model year.price 1001, Mobil Phone, Apple, iphone, 2018, 1500 1002. Laptop Dell XPS, 2020, 1856 1003, TV, LG,OLED, 2019, 2000 itemID, itemName.color department,size.price 2001, shirt,blue, men, L. 12 2002. Dress, green, women, XL, 500 2003. Pants, yellow, kids.M. 31 When either users (Admin or Customer) log-in into their respective account, the items from both files will be displayed on the console window (as shown below). Items from electronics.txt: tento, tentame, brand, model, year.price 1001. Mobil Phone, Apple, iphone, 2018, 1500 1002. Laptop Dell XP3, 2020,1850 1003, TV, LG,OLED, 2019.2000 Items from clothes.txt: itemt, itemtiame.color.department,size price 2001, Shirt, blue, men, L. 12 2002. Dress, green, women, XL, 500 2003, Pants, yellow, kids,,31 Phase 2: Designing the user interfaces of the application (5) Regarding the graphical interfaces of the application, it's required to design at least 7 GUIs (use the interfaces designs below as a reference to help you understand what operations and options should be provided in each interface): 1. The main interface (the login screen) enable the user to login to the application. Note, there are two types of users: Admin, and Customer. In this project, you can hard-code the credentials of the Admin and the Customer and one account of each type of users will be enough. E-Store Management System (EMS) Username Pasword shop Login
2. The second interface is the Admin main menu where he can perform the following tasks: a. Showing the list of items from each file in the console window right after the admin has logged in. b. Adding a new item to either electronics.txt or clothes.txt files. c. Deleting an existing item from either electronics.txt or clothes.txt files (design both interfaces in b and c as you see fit). d. When pressing the "Exit" button, the system will terminate the application. Admin Menu Add a New Item Delete an Item Exit 3. The customer interface will show the following tasks: a Showing the list of items from each file in the console window right after the custom stomer has logged in. b. The options "Electronics" and "Clothes" mean that the customer wants to buy an item from either these categories, where it will take the user to the "Item Purchase Form" (a demonstration for the interface is shown below). Note that the fields "itemID" and "itemName" are required in order to complete the purchase transaction. Also, the customer can specify the quantity for the item that he wants to purchase, and when the purchase transaction is complete, the order summary will be displayed at the bottom of the window (shown in red). The purchase summery will be displayed using the method "orderSummary" c. When pressing the "Exit" button, the system will terminate the application. Customer Main Menu Electronic Item Purchase Form Electronics item": itemName" Brand: Model: Quantity: Clothes Exit Exit Buy Push TV-