E-Commerce Order Management System Project using JAVA Swing

We have made a project on Order Management using Java AWT. Abstract Window Toolkit (AWT) is a set of application program interfaces ( API s) used by Java programmers to create graphical user interfaces ( GUI ) objects, such as buttons, scroll bars, and windows.  We have made our project by creating a store “E-Commerce Store”.

In our project we have to build a user interface where there is a login page where the user will be required to enter their email-id and password, after inserting, their details will be checked via JDBC with the information in the database if their information is incorrect an error message will be displayed, if the user does not have an account there is a button below which is create an account and after clicking that button the user will be taken to a different window where the user will be asked to input additional information and will be required to verify his email-id where the user will receive a onetime password (OTP), after entering that OTP the user will be required to set a password and other related information after successfully creating the account the user will receive a successful message.

After that, the user will be taken to the payment setup page where they have to enter a couple more information like Newark Id, Newark Pin, and Newark Password. Also, on the login page, if the user fails to remember their password, they can click on forget password and will be taken to another window where they will be required to enter their email-id and will receive an OTP after that they can change their password which in turn will be reflected in the database also.

After successful login the user will be taken to the store where there are some items to buy accompanied by a chat box and cart, the former takes you to the chat box where you can talk to our store and can directly go to the specific item purchase page as well you can also report a complaint regarding a specific item.

Talking about Cart, on that page you can see the items you have purchased and also delete the items that you have purchased but wish to keep no longer. For every item, there are specific specifications that you have to choose like memory, model color, etc., and below that there are three buttons cart, done and clear clicking on done will confirm your order and clear will clear the existing choices you have made there is also a button at the bottom which is back to store and it does what it reads.

On the cart page, once you have confirmed your order and wish to make no changes you can select on proceed to pay and after that, you will be taken to a new page where you can make your payment. To make a payment you will have to enter your Newark Id, Pin, and Password and then if you still wish to go back to the cart you can go before paying the amount. After paying the total amount of the items you purchased, the same amount will be deducted from the database as well and in case you have insufficient funds an error message will be displayed

The E-commerce system has massively replaced physical shopping, especially for electronic goods. Therefore, we have created our mini project to stimulate the initial aspects of an e-commerce engine starting with the user creating an account and ending with checkout and payment.

AIM

The first thing that comes to your mind when you think of an order management system is Amazon. Therefore, we decided to model our project on a mini version of Amazon, trying to incorporate some of its features including registration, purchasing items, placing orders, payment, etc.

Literature Review

To place an order on Amazon we need to create an account or if we have an account we just need to sign in.
We navigate to the product we want to buy.
We can then add the product to the cart.
We check the cart and remove the product that we don’t want.
We can then check out and proceed to pay.
We have to specify user details.
We also have Amazon Pay from Amazon their in-house UPI for quicker payment.

PROBLEM STATEMENT

To create a secure small-scale and affordable online store for small vendors for managing inventory and orders as an order management system.

BLOCK DIAGRAM

FEATURES

Account Handling:

Our program is able to create an account for both accessing the account and generating a house payment account, log in into an account by verifying necessary credentials like passwords and forgot passwords.
Our primary verification is done through email:
We use email for:
Verifying email during creating an account by sending an OTP through email.
Authenticate the user when there is forget password request for an account.

Cart system:

A simple easy-to-use GUI for users to select items to add to a shopping cart.
The user can even remove the item once they added it to the cart and simultaneous updating of the final price.

Chatbot:

A simple chatbot to respond to simple queries from the users.

Payment gateway:

We have created an in-house gateway where the user only needs to verify his bank credential once and then he can create an id and password that he can use during checkout making the process easier for the user every time he makes a purchase.

CONCLUSION & FUTURE SCOPE

We have successfully created an online shopping store that can be distributed to small vendors to employ for their use.

Our future endeavors include: Ordering more than 4 items of a particular product auto-updating inventory verifying phone number

We have successfully used the above features for the creation of the order management system using the code mentioned above using java. Our future endeavors in improving our project include connecting our payment gateway to a bank account id, verifying a phone number, and being able to order more than 4 numbers of a particular product.

Bus Ticket Reservation and Management System Project using Java and Swing

1. Introduction

1.1    Purpose

The purpose of this document is to describe the Software Requirement Specifications of a Bus Ticket Management System. It aims to lay down guidelines that have to be followed while developing the bus ticket management system. It also includes a description of the software and the IDEs used.

1.2    Intended Audience and Reading Suggestions

  • Section 2 of this document provides an overview of the domain that the proposed Bus Ticket Management System will support.
  • Section 3 includes screenshots of the actual developed Bus Ticket Management System.
  • Section 4 organizes the functional requirements for the major services provided by the Bus Ticket Management System.
  • Section 5 describes the nonfunctional requirements of the Bus Ticket Management System.

2.    Overall Description

2.1    Product Perspective

The Bus Ticket Management System that is to be developed is a new self-contained product that will contain information about a set of buses and passengers traveling on that particular bus. The perspective of the product is to replace the travel books used by travel agents and replace them with a well-maintained, reliable soft copy of the travel details.

Figure 2.1: Logic Diagram of the Software

2.2    Product Functions

A software system needs to be developed to maintain a Bus-Ticket Management System.

The software includes functionalities for 

1. User

2. Administrator                           

The user can book/cancel tickets.

  • To Book a ticket He / She selects the SOURCE Station & DESTINATION Station (for a given Date), upon which a list of buses plying on the chosen route is displayed. The user selects a bus, which results in the displaying of the Seat Matrix of the bus showing the available seats and booked seats.

            The user selects a seat and enters details like

            1. Name

            2. Address

            3. Contact No. 

            4. E-Mail

            after which the ticket describing all the travel details is generated.

  • To cancel a ticket He / She enters the Bus Number, Seat Number, and Date of Journey.

The ticket is canceled and the canceled seat is shown to be available in the seat matrix.

The administrator of the Bus-Ticket-Management system has to verify his/her identity by entering the password, which will give him/her administrative privileges.

The administrator can 

  1. Modify routes of buses
  2. Alter schedules of buses
  3. Modify the Prices of the tickets
  4. Add or remove buses

The changes made by the administrator are updated and the user sees the latest updated information.   

2.3    User Classes and Characteristics

It identifies the various use classes that will use the system. The system will be used in a Travel agency. The administrators, front-desk staff, and passengers will be the main users.

Assumptions: They are responsible for checking seat availability and reserving it for the appropriate passengers.

2.4    Operating Environment

The Bus Ticket Management System is developed on the Netbeans IDE and compiled as a Java Project. The source code files are put together in an src folder and included under one package.

This can be run on Operating Systems which have the Java Development Kit along with the Java Run Time Environment installed on it. 

3. External Interface Requirements

3.1 User Interfaces

The Bus Ticket Management System will not be a web-based application.  As can be seen above, the main interface includes a Book ticket button which will resume only after the source and destination of the user are inserted with the date. It also includes a button for canceling tickets if the user changes their mind. The third button is for the Admin to log in, once pressed it will ask for their username and password and the system retrieves the admin menu.   

The Admin Menu Page contains 4 fields which are labeled as ‘Add a bus’, ‘Modify a bus’, ‘Book a Ticket’ and ‘Remove a bus’. The admin can enter values to these required fields by clicking on the respective button.

There shall be other pages that have functionality related to customer operations and admin tool operations. The example figures are added.

The bus list is a table containing the Company name along with the details of the bus:

  • Amenities: gives all extra features present in that particular bus
  • Route number: to differentiate between buses of the same company
  • Type: tells the user whether the bus is a sleeper/nonsleeper and if It has A/c.
  • Price: Amount to be paid
  • Date: date of departure
  • Start and End time: The time of departure and arrival

At the bottom, the user has to enter the route number and choose the seat position from the seat matrix given. Once finished choosing the user can use the confirm button.

The cancel page is also present to remove a reservation placed on a seat on any specific bus.

Enter the details of the bus: the date, the route number, and your seat number.

 3.2 Software Interfaces

Both the client and server computers do not need an internet browser to work online.

The Bus Ticket Management System is developed on the Netbeans IDE and compiled as a Java Project. The source code files are put together in an src folder and included under one package.

This can be run on Operating Systems which have the Java Development Kit along with the Java Run Time Environment installed on it.

3.3 Communications Interfaces

This software can only be used on a local computer and thus communication functions like e-mail, web browsers, and network servers are not included. Any changes made are reflected immediately and the user who uses the system next will see the latest updated information.

Use Case Diagram for the Bus Ticket Management

4. System Features

4.1 Functional Requirements

Book Ticket:

  • Check Availability: The passenger must be allowed to see all available options for a journey and see if a particular seat is available or not. He should be able to view all the buses plying on a given route on a specific day and be able to check seat availability on all the buses.
  • Book Ticket: Then if the ticket is available then the seat should be booked, by entering the passenger details like Name, Contact No., E-mail id, and Age.

Report Generation:

  • Bus List: The Bus Ticket Management System should contain files that contain the list of buses traveling on a particular route.
  • Passenger List: The Bus Ticket Management System should contain files that contain the list of passengers traveling on a particular bus.
  • Seat Availability: The Bus Reservation System should generate reports on seat availability.       
  • Passenger-related Information: Each passenger should have the following mandatory information: first name, last name, phone number, and Bus details.
  • Bus-related Information: Each bus should have the following information: bus number, no of seats, bus type: normal, AC, Sleeper, Source, and Destination.
  • Update Bus Information: The Bus Reservation System shall allow the Administrator to update any of the bus information like type, source, destination, and ticket price.