Inventory Management System Thesis
Inventory Management System Thesis
A Thesis
Submitted in the partial fulfilment of the
requirements for the award of the degree of
BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE & ENGINEERING
BY
K. ANJALI 21281A0552
K. KAVYA SRI 21281A0504
MD. FAYAAZ SAMAD 21281A0508
G. VARUN REDDY 21281A0503
PROJECT GUIDE
Mr. PRASHANTH KUMAR DEVARAKONDA
(Assistant Professor)
BY
K. ANJALI 21281A0552
K. KAVYA SRI 21281A0504
MD. FAYAAZ SAMAD 21281A0508
G. VARUN REDDY 21281A0503
PROJECT GUIDE
Mr. PRASHANTH KUMAR DEVARAKONDA
(Assistant Professor)
CERTIFICATE
The success of any course depends mainly on the teachers who teach us. Only good teaching
can interpret the syllabus and procedure desirable changes and competent citizens. This project
was a team effort and many people whose names do not appear on the cover also deserve
credit. First, we thank God almighty for his manifold mercies in carrying out our project
successfully.
We heart fully thank our Director [Link] and our Principal Dr. K. ESWARAIAH
and management for providing all the facilities required for completing this project work.
We sincerely thank our Head of the Department, and Professor of Computer Science &
Engineering, Dr. Major. RAVINDRA BABU KALLAM, for supporting us throughout the
completion of the project work.
We would like to thank our project coordinator Mr. J. PAVAN KUMAR, Assistant Professor
in CSE for his valuable guidance and constant encouragement at each stage of this project.
We thank all other teaching and non-teaching staff of Kamala Institute of Technology &
Science For supporting us in every stage of our Industrial Oriented Mini Project, entitled
as “INVENTORY MANAGEMENT SYSTEM”.
We thank our Parents and Friends for their moral support throughout the project work that
helped to our will.
[Link] 21281A0552
K. KAVYASRI 21281A0504
i
ABSTRACT
The IMS is developed using HTML, CSS, and JavaScript for the frontend, which provides a
responsive and interactive user interface, enabling smooth navigation and a seamless user
experience. The backend is powered by Java, using frameworks such as JSP/Servlets, which
handle business logic, server-side operations, and communication with the database through
RESTful APIs. The application uses MySQL as the database to securely store and retrieve data
such as product details, stock information, supplier records, and user credentials. This
combination of technologies ensures the system is scalable, robust, and secure.
The system includes three key modules: the Admin module, the Supplier module, and the User
module. The Admin module provides full control over the system, allowing the admin users to
manage products, monitor stock levels, update inventory, and oversee supplier details. Admin
users can also generate reports to analyze inventory performance and make data-driven
decisions. The Supplier module allows suppliers to view product requirements, manage supply
orders, and update delivery statuses, ensuring a smooth flow of stock to the business. The User
module allows regular users, such as employees or customers, to interact with the system in a
limited capacity. These users can view product information, check stock availability, and place
orders, but with restricted access to more sensitive features like inventory management or report
generation. By facilitating effective communication between Admins, Suppliers, and Users, the
system ensures inventory is well-maintained, orders are fulfilled accurately, and operational
disruptions are minimized.
The Inventory Management System provides businesses with a powerful solution to optimize
their inventory processes, reduce human errors, and improve operational efficiency. Leveraging
Java Full Stack technologies and MySQL, the system ensures real-time data management and
offers a reliable, scalable platform for businesses to manage their inventory seamlessly.
ii
LIST OF FIGURES
TITLE PAGE NO
6.4 The login has failed because of the invalid credentials entered 46
iv
7.1 Screenshot of User Registration Page 48
v
LIST OF TABLES
TITLE PAGE NO
vi
CHAPTER 1
INTRODUCTION
The project Inventory Management System is a complete web based application. An inventory
management system is the combination of technology (hardware and software) and processes
and procedures that oversee the monitoring and maintenance of stocked products, whether those
products are company assets, raw materials and supplies, or finished products ready to be sent to
vendors or end consumers. Inventory Management System plays an important role because it reduces
the stress, monitoring of products, making balance sheets and many more which was done manually.
Simply Inventory Management System overtook the manual things and also it optimizes the cost and
time constraint. This application is based on web application and develop with procedural php,
MySQL database, jquery, datatables plugins, and bootstrap. This application provides the users to
manage brands, category, product, orders, and report.
• The system doesn’t have strong security features like two-factor authentication,
making it easier for hackers to access.
• Manual data entry for products and inventory can lead to mistakes.
• Inventory updates are not real-time, causing delays and problems like running out
of stock or overstocking.
1
• There’s no way to track how reliable suppliers are, which can lead to delays or
poor-quality supplies.
• Purchase order approvals are slow because they’re not automated, wasting time
and effort.
• Different parts of the system, like sales and inventory, don’t work well together,
causing confusion.
• Reports are basic, don’t update in real time, and can’t be customized for specific
needs.
• The system sends too many irrelevant alerts, making it easy to miss important
ones.
This website provides the facility of storing the data and changing it if necessary. Data can be
retrived easily. This reduces the manual paperwork, and also reduces sharing and distributing time.
FEATURES
• Users, including admins and suppliers, will have a secure registration and login process with
features like two-factor authentication and role-based access control.
• Product management will include tools to automatically update and optimize product details,
reducing errors and improving efficiency.
• Inventory tracking will work in real time, showing exact stock levels and movements instantly
to avoid running out or overstocking items.
• Supplier management will include performance tracking, helping businesses evaluate supplier
reliability, delivery speed, and quality.
• Purchase order management will automate creating, approving, and tracking orders, making
the process faster and more accurate.
• Sales management will integrate with inventory to ensure accurate order fulfillment, support
multiple payment options, and track customer preferences.
• Reporting will generate real-time, customizable reports with visual dashboards for better
understanding of sales, stock levels, and trends.
2
• Smart alerts will notify users instantly about critical updates like low stock, order status, or
expirations while reducing irrelevant notifications.
• The system will integrate all modules, ensuring smooth communication between sales,
inventory, and supplier functions to avoid data mismatches.
• Scalability will ensure the system can grow with the business, handling more products,
customers, and suppliers seamlessly.
3
CHAPTER 2
LITERATURE SURVEY
An inventory management system (IMS) is a vital tool for businesses to manage stock levels, supplier
relationships, and sales operations. Over time, these systems have advanced, incorporating new
technologies to enhance efficiency and minimize errors. This survey explores existing IMS features,
their shortcomings, and the improvements proposed for modern solutions.
Most IMS applications offer standard features, including user management, product tracking, supplier
coordination, sales integration, reporting, and alert mechanisms. The user management feature allows
employees, admins, and suppliers to register, log in, and access specific functionalities based on
assigned roles. These roles ensure that sensitive information is accessible only to authorized users.
Product management involves organizing and updating product details, while inventory tracking
monitors stock levels and movements, a crucial aspect for avoiding shortages or overstocking.
Supplier management focuses on building strong relationships with suppliers, ensuring timely
deliveries, and tracking agreements. Advanced systems also evaluate supplier performance to
enhance supply chain efficiency.
Purchase order management simplifies the procurement process by automating the creation, approval,
and tracking of orders. Sales management integrates customer orders with inventory data to
streamline order fulfillment and payment processing. Reporting tools generate insights into key
metrics such as sales trends, inventory levels, and supplier performance, while alerts notify users
about critical updates like low stock levels, delayed shipments, or product expirations.
Despite these features, many existing systems face significant limitations. Security remains a concern,
with many lacking advanced measures like two-factor authentication or encryption, leaving them
vulnerable to breaches. Role-based access is often inadequate, allowing unauthorized users to access
sensitive areas of the system. Manual data entry in product and inventory management introduces
errors, which can disrupt workflows and impact accuracy. Real-time inventory updates are missing
in some systems, causing delays that lead to inefficient decision-making and potential stock issues.
Supplier management tools often fail to measure supplier reliability or provide performance insights,
limiting their ability to support strategic decisions. Purchase order workflows are not always
automated, resulting in unnecessary delays and inefficiencies. Sales and inventory modules may not
be fully integrated, leading to mismatched data or order errors. Reporting tools are frequently static
and lack customization, making it difficult for businesses to extract actionable insights tailored to
4
their needs. Alert systems can overwhelm users with irrelevant notifications, causing important
updates to be missed.
To address these shortcomings, modern IMS solutions focus on adopting advanced technologies.
Enhanced security features, such as two-factor authentication and encryption, safeguard user data and
ensure system integrity. Role-based access controls are clearly defined to prevent unauthorized
access. Automation tools, such as barcode scanners and RFID integration, reduce manual input errors
in product and inventory management. Real-time inventory tracking ensures instant updates on stock
levels, allowing businesses to make informed decisions quickly.
Supplier management now includes performance evaluation tools to assess reliability, delivery
timeliness, and product quality, helping businesses optimize their supply chain. Automated workflows
for purchase order management improve efficiency by streamlining the approval and tracking
process. Integrated modules ensure seamless communication between sales, inventory, and supplier
functions, eliminating data inconsistencies. Reporting tools provide real-time, customizable insights
with visual dashboards, making decision-making more effective. Smart alerts prioritize important
notifications, minimizing distractions and ensuring critical updates are addressed promptly.
Several researchers have explored the development and implementation of inventory management
systems. Deshmukh and Tak [1] designed a CRUD-based system for tracking inventory transactions
efficiently. Munyaka and Yadavalli [2] provided a systematic review of inventory management
models highlighting the importance of aligning strategies with demand characteristics.
5
CHAPTER 3
ANALYSIS
The goal of the system analysis is to determine where the problem is and attempt to fix it. This step
involves breaking down the system into different pieces to analyse the situation. Analysing project
goals and attempts to engage users are carried out so that definite requirements can be defined.
Hardware Requirements: The following are the requirements which we have used in our project.
Software Requirements: The following are software requirements. Technology are specified by the
client.
Functional Requirements
Functional Requirements are associated with specific functions, tasks or behaviours of the system.
The functional requirements address the quality characteristic of functionality while the other quality
characteristics are concerned with various kinds of non-functional requirements. A task-based
functional requirements statement is a useful skeleton upon which to construct a complete
requirements statement.
6
The following are the fuctional requirements of our project:
• The system must allow users, admins, and suppliers to register, log in, and manage their
profiles securely using authentication features.
• Role-based access control must ensure that users can only access the parts of the system
relevant to their roles (e.g., admin, supplier, or staff).
• The system must provide tools for managing products, including adding, updating, and
categorizing products in the inventory.
• The system must integrate all modules, ensuring smooth data flow between inventory, sales,
supplier management, and reporting to avoid data inconsistencies.
• A user-friendly interface must make it simple for users to navigate, perform tasks, and
understand the system’s functionalities without extensive training.
• Scalability must be supported, allowing the system to handle a growing number of products,
users, and suppliers as the business expands.
Non-Funtional Requirements
Non-functional requirements are requirements that specify criteria that can be used to judge the
operation of a system, rather than specific behaviours. This should be contrasted with functional
requirements that specify specific behaviour or functions.
• Consistency: The website provides consistent user interface design to users. The design of
the screen are standardised and consistent that makes the user feel comfortable to use it.
• Availability: The content is available to all the users who visit the webiste. Any one can
access the website to know the events taking place in the location.
• Security: Administrators can only perform administrative tasks on pages they are priviliged
to access. Users will not be allowed to access the administrative pages. This site provides
password access control to avoid unauthorized admins to login.
• Reliability: The website provides an effective method to maintain the back-end to store all
the details securely. All details are managed by this website efficiently.
• Size: The performance of the project depends on the size of the project. We put lots of effort
in reducing lines of the code. In this project the storage space is utilized efficiently.
7
• Scalability: Scalable software can remain stable while adapting to changes, upgrades,
overhauls and resource reduction. Scalability is an attribute of a tool or a system to increase
its capacity and functionalities based on user’s demand.
• User Management
This module helps users like admins, staff, and suppliers to log in, register, and manage their
profiles. It ensures only authorized users can access specific parts of the system, keeping it
secure.
• Product Management
This module is used to add, update, or delete product details like names, categories, prices,
and quantities. It helps in organizing products so that they are easy to find and manage.
• Inventory Tracking
This module monitors stock levels in real-time. It shows how much stock is available, alerts
users when stock is low, and tracks when and where products are moved or used.
• Supplier Management
This module keeps a record of supplier information, such as contact details and delivery
schedules. It helps evaluate suppliers’ reliability and ensures that orders are delivered on time.
• Purchase Order Management
This module handles creating, approving, and tracking purchase orders. It makes it easier to
buy stock when needed and keeps records of all orders placed.
• Sales Management
This module tracks customer orders, processes payments, and updates inventory after a sale.
It ensures that orders are fulfilled quickly and accurately.
• Reporting
This module generates reports about sales trends, inventory levels, and supplier performance.
It helps businesses understand what’s happening and make better decisions.
8
CHAPTER 4
DESIGN
The block diagram is typically used for a higher level, less detailed description aimed more at
understanding the overall concepts and less at understanding the detilas of implementation. Admin
can maintain the events. The user can view the events based on their intrest. The following figure
represents the block diagram.
A data flow diagram is graphical tool used to describe and analyze movement of data through
a system. These are the central tool and the basis from which the other components are developed. The
transformation of data from input to output, through processed, may be described logically and
9
independently of physical components associated with the system. This is known as the logical data
flow diagrams.
The physical data flow diagrams show the actual implements and movement of data between
people, departments and workstations. Each component in a DFD is labeled with a descriptive name.
Process is further identified with a number that will be used for identification purpose. Each process
in lower-level diagrams can be broken down into a more detailed DFD in the next level. The top-
level diagram is often called a “context diagram”.
Constructing A DFD:
• Process should be named and numbered for an easy interface. Each name should be
representative of the process.
• The direction of flow is from top to bottom and from left to right. Data traditionally flow from
source to the destination although they may flow back to the source. One way to indicate this is
10
to draw long flow line back to a source.
• An alternative way is to repeat the source symbol as a destination. Since it is used more thanonce
in the DFD it is marked with a short diagonal.
• The names of data stores and destinations are written in capital letters. Process and dataflow
names have the first letter of each work capitalized.
A Context level Data flow diagram created using select structured systems analysis and design
method (SSADM). This level shows the overall context of the system and its operating environment
and shows the whole system as just one process. It does not usually show data stores, unless they
are owned by external systems, e.g. are accessed by but not maintained by this system, however,
these are often shown as external entities. The Context level DFD is shown in fig.4.2.1
The Context Level Data Flow Diagram show the data flow from the website to the database and to
the system.
A data flow diagram is that which can be used to indicate the clear progress of a business venture. In
the process of coming up with a data flow diagram, the level one provides an overview of the major
functional areas of the undertaking. After presenting the values for most important fields of
discussion, it gives room for level two to be drawn.
11
Figure [Link] Top level Data Flow Diagram(DFD) for Admin
12
Figure 4.2.3 Top level Data Flow Diagram(DFD) for User
4.3 ER Diagram
An Entity-Relationship Diagram (ER diagram or ERD) is a visual representation used to model the
data and relationships within a database or information system. ER diagrams are widely used in
database design and serve as a blueprint for database developers and administrators to create and
maintain databases[4]. They help in understanding the structure of the data and how different entities
(things or objects) are related to each other. By visualizing entities, attributes, and relationships, ER
diagrams simplify complex database structures, making them easier to design and analyze. They also
play a critical role in ensuring data consistency and integrity throughout the database life cycle.
Elements in ER diagram:
• Entity
• Attribute
• Relationship
There are more elements which are based on the main elements. They are weak entities, multi valued
attributes, derived attributes, weak relationships and recursive relationships Cardinality is one of the
notations used in ER diagrams.
Entity: An entity can be a person, place, event or object that is relevant to a given system. They are
represented by a rectangle and named using nouns.
13
Weak Entity: A weak entity is an entity that depends on the existence of another entity. It can
bedefined as an entity that cannot be identified by its own attributes.
Multi value Attribute: If an attribute can have more than one value it is called a multi valued
Attribute.
Cardinality: Cardinality specifies how many instances of an entity relate to one instance of another
entity. Cardinality specifies the maximum number of relationships.
14
The above diagram outlines a database structure for a sales system. It showcases how various
elements within the system, such as administrators, customers, products, orders, and suppliers, are
interconnected. For instance, the diagram reveals that administrators oversee users, users place orders,
and suppliers furnish products.
The Unified Modelling Language (UML) is a standard language for specifying, visualising.
constructing and documenting the software system and its components. The UML focuses on the
conceptual and physical representation of the system. It captures the decisions and understandings
about the systems that must be constructed. Structural models represent the framework for the system
and this framework is the place where all other components exist. So the class diagram, component
diagram and deployment diagrams are the part of structural modelling.
They all represent the elements and the mechanism to assemble them. But the structural model never
describes the dynamic behaviour of the system. A Behavioural model describes the interaction in the
system. It represents the interaction among the structural diagrams. Behavioural modelling shows the
dynamic nature of the system. Architectural model represents the overall framework of the system. It
contains both structural and behavioural elements of the system. Architectural model can be defined
as the blueprint of the entire system. Package diagram comes under architectural modelling
Use case diagrams are one of the five diagrams in the UML for modelling the dynamic aspects of the
systems (activity diagrams, sequence diagram, state chart diagram, collaboration diagram are the four
other kinds of diagrams in the UML for modelling the dynamic aspects of systems). Use case
diagrams are central to modelling the behaviour of the system, a sub-system, or a class. Each one
shows a set of use cases and actors and relations.
15
The key points are:
• The main purpose is to show the interaction between the use cases and the actor
• To represent the system requirement from the user's perspective
• Use cases are the functions that are to be performed in the module
The above fig [Link] illustrates the various functionalities accessible to an administrator within a
system. These functions encompass user management, sales management, inventory management,
purchase order management, report viewing, alert management, feedback viewing, and login/logout
capabilities.
16
The fig [Link] depicts the various functionalities available to a supplier within a system. These
include profile management, product updates, order confirmation, alert notifications, report viewing,
feedback reviews, and login/logout capabilities.
The fig [Link] illustrates the functionalities available to a user within a system. These include profile
management, product viewing, order placement and tracking, order history viewing, notification
viewing, feedback providing, and login/logout capabilities.
A "Class Diagram" shows a set of classes, interfaces and collaborations and their relationships. These
diagrams are the most common diagrams in modelling object-oriented systems. The class diagram is
a static diagram. It represents the static view of an application. Class diagram is not only used for
visualising, describing and documenting different aspects of a system but also for constructing
executable code of the software application. The class diagram describes the attributes and operations
of a class and also the constraints imposed on the system. The class diagrams are widely used in the
modelling of object-oriented systems because they are the only UML diagrams which can be mapped
directly with object-oriented languages.
17
Figure 4.4.2 Class Diagram
The class diagram illustrates the entities (Admin, Supplier, User, Product, Order, Feedback, Database)
and their relationships in a sales management system. Entities have functionalities like managing
users, placing orders, viewing products, and providing feedback, while the database stores and
manages all data.
Sequence diagram is an interaction diagram which focuses on the time ordering of messages. It shows
a set of objects and messages exchanged between these objects. This diagram illustrates the dynamic
view of the system.
1. The main purpose is to represent the logical flow of data with respect to a process
2. A sequence diagram displays the objects and not the class
18
Figure [Link] Sequence Diagram for admin
The sequence diagram models the interactions between an Admin, Website, and Database. The Admin
triggers actions such as login, managing entities (suppliers, users, products), viewing inventory and
orders, and accessing reports. The Website validates data and provides confirmations. The Database
stores and retrieves data as requested by the Admin through the Website.
19
Figure [Link] Sequence Diagram for Supplier
The sequence diagram illustrates the interactions between a Supplier, Website, and Database. The
Supplier initiates actions like login, viewing/updating profile, managing product details,
viewing/confirming orders, viewing reports, and viewing feedback. The Website validates data and
sends confirmations, while the Database stores and retrieves data.
20
Figure [Link] Sequence Diagram for User
The sequence diagram models the interactions between a User, Website, and Database. The User
initiates actions like registration, login, viewing profile, viewing products, placing orders, tracking
orders, viewing order history, giving feedback, and logging out. The Website validates data and sends
confirmations, while the Database stores and retrieves data.
A collaboration diagram is an interaction diagram that emphasises the structural organisation of the
objects that send and receive messages. It is also called a communication diagram. Collaboration
diagrams are isomorphic, meaning that you can take one and transform it into the other. Collaboration
diagrams convey the same information as sequence diagrams, but they focus on object roles instead
of times that messages are sent. In the sequence diagram, objectroles are the vertices and messages
are the connecting links. The object-role rectangles are labelled with either class or object names (or
both).
21
Figure: [Link] Collaboration Diagram for Admin
The sequence diagram models the interactions between an Admin, Website, and Database. The Admin
initiates actions like login, managing users, suppliers, products, viewing sales, viewing inventory,
view orders/reports/feedbacks and logging out. The Website validates data and sends confirmations,
while the Database stores and retrieves data.
The collaboration diagram models the interactions between a Supplier, Website, and Database. The
Supplier initiates actions like login, viewing/updating profile, managing product details,
viewing/confirming orders, viewing reports, and viewing feedback. The Website validates data and
sends confirmations, while the Database stores and retrieves data.
22
Figure: [Link] Collaboration Diagram for User
The collaboration diagram models the interactions between a User, Website, and Database. The User
initiates actions like registration, login, viewing/updating profiles, viewing/ordering products,
tracking orders, viewing order history, and logging out. The Website validates data and sends
confirmations, while the Database stores and retrieves data.
An activity diagram shows the flow from activity to activity within a system; it emphasises the flow
of control among objects.
23
The activity diagram depicts the workflow of an admin within a system. It starts with login, checks
for successful authentication, and then allows access to various management functions like user
management, supplier management, inventory management, sales management, order management,
viewing reports and feedbacks, and finally logging out.
The activity diagram illustrates the workflow for a supplier within a system. It begins with login and
verifies success. Upon successful login, the supplier can access various functionalities such as
viewing/updating profile, adding/updating product details, confirming purchased orders, viewing
reports, viewing notifications, and viewing feedback. The process concludes with logout.
24
The activity diagram depicts the workflow for a user within a system. It begins with registration
followed by login. Upon successful login, the user can access various functionalities such as
viewing/updating profile, viewing/ordering products, tracking orders, viewing order history, viewing
notifications, and giving feedback. The process concludes with logout.
● A piece of middle ware that extends or supplants the native data dictionary of a DBMS.
The terms data dictionary and data repository indicate a more general software utility than a
catalogue[2]. A catalogue is closely coupled with the DBMS software. It provides the information
stored in it to the user and the DBA, but it is mainly accessed by the various software modules of the
DBMS itself, such as DDL and DML compilers, the query optimizer, the transaction processor, report
generators, and the constraint enforcer. On the other hand, a data dictionary is a data structure that
stores metadata, i.e., (structured) data about information.
If a data dictionary system is used only by the designers, users, and administrators and not by
the DBMS Software, it is called a passive data dictionary. Otherwise, it is called an active data
dictionary or data dictionary. When a passive data dictionary is updated, it is done so manually and
independently from any changes to a DBMS (database) structure. With an active data dictionary, the
dictionary is updated first and changes occur in the DBMS automatically as a result.
25
Table Name: supplier
26
Table 4.5.5 Orders Table
27
Table Name: wishlist
28
CHAPTER 5
IMPLEMENTATION
5.1.1 HTML
L (HyperText Markup Language) is the standard markup language used to create and structure
content on the web. It forms the backbone of all websites by organizing text, images, links, and other
elements into a readable and navigable format for web browsers. HTML uses a series of tags enclosed
in angle brackets (e.g., <html>, <head>, <body>, <p>) to define different parts of a webpage. These
tags tell the browser how to display content, such as headings, paragraphs, lists, tables, and forms.
HTML works in conjunction with other web technologies like CSS (Cascading Style Sheets)
for styling and JavaScript for interactivity. It is designed to be simple and readable, making it
beginner-friendly for those learning web development. Over time, HTML has evolved through
versions, with HTML5 being the latest standard, offering new features like audio and video
embedding, semantic elements (like <article> and <section>), and improved support for modern
devices and applications. Overall, HTML is essential for building the structure and content of any
website or web application.
Features of HTML:
✓ It is a very easy and simple language. It can be easily understood and modified.
✓ It is very easy to make an effective presentation with HTML because it has a lot of formatting
tags.
✓ It is a markup language, so it provides a flexible way to design web pages along with the text[1].
It facilitates programmers to add a link on the web pages (by html anchor tag), so it enhances
the interest of browsing of the user.
✓ It is platform-independent because it can be displayed on any platform like Windows, Linux,and
Macintosh, etc.
✓ It facilitates the programmer to add Graphics, Videos, and Sound to the web pages which makes
it more attractive and interactive.
Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to
simplify the process of making web pages [Link] Style Sheets, fondly referred to as
29
CSS, is a simply designed language intended to simplify the process of making web pages
presentable[1]. CSS allows you to apply styles to web pages. More importantly, CSS enables you to
do this independent of the HTML that makes up each web page.
It describes how a web page should look: it prescribes colors, fonts, spacing, and much [Link]
short, you can make your website look however you [Link] lets developers and designers define
how it behaves, including how elements are positioned in the [Link] html uses tags, CSS uses
rulesets. CSS is easy to learn and understand, but it providespowerful control over the presentation of
an HTML document.
5.5.3 JavaScript:
JavaScript is considered to be one of the most famous scripting languages of all time.
JavaScript, by definition, is a Scripting Language of the World Wide Web[1]. The main usage of
JavaScript is to add various Web functionalities, Web form validations, browser detections, creation
of cookies, and so on. JavaScript is one of the most popular scripting languages and that is why it is
supported by almost all web browsers available today like Firefox.
We used the browser Opera or Internet Explorer. It is considered to be one of the most
powerful scripting languages in use today. It is often used for the development of client-side web
development. It is used to make web pages more interactive and dynamic. It is a lightweight
programming language and it is embedded directly into the HTML code.
Advantages:
✓ An interpreted language.
✓ Embedded within HTML.
✓ The minimal syntax is easy to learn.
✓ Performance sign for simple, small programs.
5.1.4 Java
Java follows the principles of object-oriented programming, including concepts like classes,
objects, inheritance, and polymorphism. It has a rich standard library and supports multithreading,
30
networking, and security features, making it suitable for complex and secure applications. Thanks to
its platform independence, strong community support, and powerful development tools (like Eclipse
and IntelliJ IDEA), Java remains one of the most popular and reliable programming languages in the
world.
Features of Java:
• Platform Independent: Java code is compiled into byte code, which can be run on any device
that has a Java Virtual Machine (JVM), making it platform-independent.
• Secure: Java has built-in security features like byte code verification, sandboxing, and a robust
security API, which help create virus-free and tamper-free systems.
• Robust: Java emphasizes early error checking, exception handling, and memory management
(with automatic garbage collection), making it reliable and less prone to crashes.
• Multithreaded: Java supports multithreading, allowing developers to write programs that can
perform multiple tasks simultaneously, which improves performance in certain applications.
• Distributed: Java has networking features built-in, making it easy to work with distributed
computing environments and develop applications that can communicate over a network.
• Dynamic and Extensible: Java programs can dynamically load classes, libraries, and methods
at runtime, allowing more flexible and modular programming.
• Rich API and Tools: Java provides a vast standard library and a wide range of tools (e.g.,
Eclipse, IntelliJ IDEA, NetBeans) to support application development and debugging.
5.5.5 MYSQL
31
(Linux, Apache, MySQL, PHP/Perl/Python), making it a popular choice for web developers and
enterprises alike.
✓ Web Applications: Store and manage user profiles, content, and transactions (e.g., e-commerce
sites).
✓ Content Management Systems: Powers platforms like WordPress to manage posts, pages, and
user data.
✓ Customer Relationship Management (CRM): Keeps track of customer information and
interactions.
✓ Data Warehousing: Stores large volumes of data for analysis and reporting.
✓ Logging Systems: Records logs and events for monitoring and debugging applications.
The Figure 5.2.1 represents the registration page. This page is for the new user who wants to
use the website. They have to first register with their details and on clicking the register button the
person enters into login page.
32
5.2.2 User Registration Failed Pop-up Message
The Figure 5.2.2 represents the user registration failed pop-up message when user attempts
to register with duplicate [Link] clicking "OK", register page is displayed to retry.
The Figure 5.2.3 represents the user registration successful page. This message appears after
a user has successfully entered their details into the registration form. Upon clicking "OK", the user
will be redirected to the login page.
33
5.2.4 User Login Page
The Figure 5.2.4 represents the user login page. Here the user enters his/her login credentials.
On clicking the login button user will enter into the visitor home page.
The Figure 5.2.5 represents the user login successful pop-up message. Upon entering the
correct credentials, the user receives this "User Login successful!" message, and clicking "OK" will
redirect them to the visitor home page.
34
5.2.6 User Home Page
The Figure 5.2.6 is a home page of an inventory management website where users can view
different products, place new orders, view their past orders, and manage their profile. The site also
highlights exclusive offers like flash sales and features popular items.
The Figure 5.2.7 represents the manager login page. Here the supplier enters his/her login
credentials. On clicking the login button user will enter into the supplier dashboard.
35
5.2.8 Supplier Login Successful Pop-up Message
The Figure 5.2.8 represents the supplier login successful pop-up message. Upon entering the
correct credentials, the manager receives this "Supplier Login successful!" message, and clicking
"OK" will redirect them to the Supplier dashboard page.
The Figure 5.2.9 represents the manager dashboard page. Each Supplier can manage orders
which includes updating booking status to users, view orders, add products, view products and view
feedback's from the users.
The Figure 5.2.10 represents the admin login page. Here the admin enters his/her login
credentials. On clicking the login button user will enter into the admin home page.
The Figure 5.2.11 represents the admin login successful pop-up message. Upon entering the
correct credentials, the admin receives this "Admin Login successful!" message, and clicking "OK"
will redirect them to the admin home page.
37
5.2.12 Admin Home Page
The Figure 5.2.12 represents the admin home page. Admin can log in, add/delete managers,
view reports & analytics and view feedbacks.
38
CHAPTER 6
TESTING
Introduction:
It is the process of testing the functionality and it is the process of executing a program with the intent
of finding an error. A good test case is one that has a high probability of finding an undiscovered
error[3]. Software testing is the process of testing the functionality and correctness of software by
running it. A successful test is one that uncovers an undiscovered error. Software testing is usually
performed for one of two reasons.
• Defect Detection.
• Reliability Estimation.
Verification: Verification is the process to make sure that product satisfies the conditions imposed at
the tester of the development phase. In other words, to make sure the product behaves the way we
want it to.
Validation: Validation is the process to make sure the product satisfies the specified requirements at
the end of the development phase. In other words, to make sure the product is built as per customer
requirements.
6.1 Testing
The Figure 6.1.1 shows attempting registration form by leaving username and other fields
empty. The expected output is to show “Please fill out this filed”.
The Figure 6.1.3 shows attempting registration form by entering username, email and leaving
other fields empty. The expected output is to show “Please fill out this filed”.
The Figure 6.1.4 shows attempting registration form by entering username, email, phone
number and leaving other fields empty. The expected output is to show “Please fill out this filed”.
40
Figure 6.1.4 Showing to enter password field
The Figure 6.1.5 shows attempting registration form by entering username, email, phone
number, password and leaving role field empty. The expected output is to show “Please select an item
in the list”.
The Figure 6.1.6 shows attempting registration form by entering all fields. The expected
output is to show pop-up message as “Registration Successfull! You can now log in”.
41
Figure 6.1.6 Pop-up message showing Registration Successful
1 All fields are empty Please fill out Please fill out Pass
this filed this filed
2 Entering username and Please fill out Please fill out Pass
leaving other fields empty this filed this filed
3 Entering username, email Please fill out Please fill out Pass
and leaving other fields this filed this filed
empty
4 Entering username, email , Please fill out Please fill out Pass
phone number and leaving this filed this filed
other fields empty
42
6.2 Test Strategy
Test Objectives:
1. All field entries must work properly.
2. Pages must be activated from the identified link.
3. The entry screen, messages and responses must not be delayed.
Features to be tested:
The base of the black box testing strategy lies in the selection of appropriate data as per
functionality and testing it against the functional specifications in order to check for normal and
abnormal behavior of the system[3]. This method is typically used for functional testing, including
testing interfaces, user interactions, and overall system behavior.
Now a days, it is becoming to route the testing work to a third party as the developer of the
system knows too much of the internal logic and coding of the system which makes it unfit to rest
application by the developer.
43
Disadvantages of Black Box Testing
44
6.4 White Box Testing
White box testing requires access to the source code. Though it can be performed any time in
the life cycle after the code is developed, it is a good practice to perform white box testing during the
unit testing phase[3]. This method involves scrutinizing the internal structure and design of a system.
Testers use their knowledge of the internal workings to design test cases that verify internal logic,
data flow, and control flow paths within the code. In the context of database design, this includes
testing the flow of specific inputs through the code, the expected output, and the functionality of
conditional loops.
A crucial aspect of white box testing is its ability to identify hidden errors, dead code, and
security vulnerabilities that might be missed by black box testing. Techniques like statement
coverage, branch coverage, and path coverage are employed to ensure that all parts of the code are
exercised, leading to more robust and reliable software. This meticulous examination at the code level
is vital for building a strong foundation for the entire software system.
• Executed all loops at their boundaries and within their operational bounds.
45
Figure 6.4 The login has failed because of the invalid credentials entered
This test involves testing whether the values entered through the form gets stored and
saved in the database correctly or not.
The below Figure 6.5.1 shows that Order details are stored correctly in the database.
46
6.6 Performance Testing
The performance of the application can be tested through this test. Since the number of codes is
less, performance is good. The Figure 6.6 shows the performance testing of the code.
Test cases are done on every page on this website. All the test cases are passed successfully.
No defects were encountered.
47
CHAPTER 7
RESULTS
The results screenshots are as follows:
User Registration Page:
The below Figure 7.1 represents the user registration form which is to be filled by the users
to get login credentials if they don’t have any.
The Figure 7.3 represents the visitor home page. Users can view and update their personal
profiles, different products, place new orders, view their past orders. The site also highlights exclusive
offers like flash sales and features popular items.
Wishlist Page:
The Figure 7.4 represents the wishlist page where users can add the products to wishlist and
view product details by clicking the view product.
49
Cart Page:
The Figure 7.5 represents the Cart page where user can view the products added to the cart
and they can proceed to checkout.
Profile Page:
The Figure 7.6 represents the Profile page where the users can view their details and edit their
profile. Users can update this information by clicking the "Edit Profile" button.
50
Payment Page:
The Figure 7.7 represents the payment page, displaying a QR code for UPI payment along with
booking details. The user is prompted to scan the QR code using a UPI app or click "Pay Now" to
complete the transaction.
51
Orders Page:
The Figure 7.9 represents orders page, displaying all bookings of a user. Each booking shows
details like order id, placed on and status of the order.
Feedback Page:
The Figure 7.10 represents feedback page. It allows users to submit their feedback about the
[Link] can then detail their feedback in a description box .
52
Update Profile Page:
The Figure 7.11 represents update profile page, allowing users to modify their personal
information such as Name, Email, Mobile, Address. Users can either update their details using the
"Update" button or discard changes by clicking "Cancel" to retain their existing profile information.
53
Supplier Dashboard Page:
The Figure 7.13 represents the manager dashboard page. Each Supplier can manage orders
which includes updating booking status to users, view orders, add products, view products and
viewfeedback's from the users.
54
Manage Orders Page:
The Figure 7.15 represents the manage orders page where the supplier can update the order
status of the user orders.
55
View Products Page:
The Figure 7.17 represents the view products page where supplier can view already existing
products and can increase the quantity of the products by clicking edit.
56
Admin Home Page:
The Figure 7.19 represents the admin home page. Admin can log in, delete supplier view
reports & analytics and review feedbacks.
57
Sales And Report Page:
The Figure 7.21 represents report & analytics page. It provides admins with a comprehensive
overview of system performance through various reports. It shows the orders of different suppliers.
The page also includes a detailed supplier report with total number of orders and pending
status and also number of orders of a supplier and it also shows total revenue generated in the system
overall.
The Figure 7.22 represents the admin feedbacks page where admin can review all the user
submitted feedbacks. The page helps admins quickly view user experience about the products.
58
CHAPTER 8
CONCLUSION
The Inventory Management System is a useful tool that helps businesses keep track of their products,
suppliers, and orders in an easy and organized way. It makes sure that stock levels are correct, supplier
information is up to date, and orders are managed well. This helps reduce mistakes that can happen
when managing inventory by hand.
The system has important features like supplier login, sorting products into categories, tracking
orders, and showing sales reports. These features give users full control over their inventory. It also
shows real-time information about stock and order status, helping businesses avoid running out of
products or having too many. It can send alerts when stock is low, so businesses know when to order
more.
The reports and charts help managers understand sales patterns, how suppliers are performing, and
how orders are being handled. This information helps them make better decisions to improve buying
and managing products.
The system keeps business data safe with secure login and limited access. It is easy to use, so people
do not need much training to start using it. The design is flexible, so new features like barcode
scanning or mobile access can be added later.
In short, the Inventory Management System makes work easier and faster, reduces mistakes, and
helps businesses work better with their suppliers. It saves time and money, keeps customers happy by
making sure products are always available, and helps businesses stay competitive.
59
CHAPTER 9
FUTURE SCOPE AND ENCHANCEMENTS
The Inventory Management System we have developed is helpful and efficient, but there are many
ways it can be improved and expanded in the future. Here are some ideas for future scope and
enhancements:
• Barcode and QR Code Integration: Adding barcode or QR code scanning will speed up
the process of adding, updating, and checking products in the inventory. It will reduce errors
and save time during stock management.
• Cloud-Based System: Moving the system to the cloud will allow multiple users to access it
from different locations. It will also improve data security and make backups easier.
• AI and Machine Learning: Using AI can help predict future inventory needs based on past
data and market trends, which will reduce waste and improve stock availability.
• Third-party API Integration: Enable integration with third-party services such as Google
Calendar, Maps, or CRM systems for better scheduling and analytics.
• Chatbot for Support: Integrate an AI-based chatbot to assist visitors with bookings, location
details, and general FAQs. This will offer instant support, reduce manual workload, and
enhance user experience with real-time assistance.
60
BIBILOGRAPHY
JOURNALS:
[1] Deshmukh, S., & Tak, S. (2022). Inventory Management System. International Journal of
Scientific Research & Engineering Trends, 8(1), 150–153. Retrieved from
[Link]
[2] Munyaka, J. B., & Yadavalli, V. S. S. (2022). Inventory Management Concepts and
Implementations: A Systematic Review. South African Journal of Industrial Engineering,
33(3), 15–28. [Link]
TEXT BOOKS:
[1] Robbins, J. N. (2018). Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript,
and Web Graphics. 5th Edition. O'Reilly Media. ISBN-10: 1491960205, ISBN13: 978-
1491960202.
[2] Jacobson, I., Rumbaugh, J., & Booch, G. (2005). Unified Modelling Language. 2nd Edition.
Addison-Wesley. ISBN-10: 032171895X, ISBN-13: 978-0321267979.
[3] Teorey, T. J., Lightstone, S. S., & Nadeau, T. (2010). Database Modelling and Design. 5th
Edition. Morgan Kaufmann. ISBN-10: 0123820200, ISBN-13: 978-0123820204.
[4] Larman, C. (2004). Applying UML and Patterns: An Introduction to Object-Oriented Analysis
and Design. 3rd Edition. Prentice Hall. ISBN-10: 0131489062, ISBN-13: 9780131489066.
[5] Database Design using Entity-Relationship Diagrams, by Richard Earp; Second Edition,
April 16, 2007; Auerbach Publications; ISBN-10: 1439861765.
[6] Pusuluri, N. (2008). Software Testing Concepts and Tools. 2nd Edition. Dreamtech Press.
ISBN-10: 8177227122, ISBN-13: 978-8177227123.
[7] Schildt, H. (2014). Java: The Complete Reference. 9th Edition. McGraw-Hill Education.
ISBN-10: 0071808558, ISBN-13: 978-0071808552.
[8] Schwartz, B., Zaitsev, P., Tkachenko, V., Botros, S., & Tinley, J. (2021). High Performance
MySQL. 4th Edition. O'Reilly Media. ISBN-10: 1492080516, ISBN-13: 9781492080510.
61