Quản lý chuỗi cung ứng là một tính năng cần thiết để tiến hành bất kỳ hoạt động kinh doanh nào. Hệ thống này quản lý một mạng lưới các công ty được kết nối với nhau chịu trách nhiệm cung cấp cho người dùng cuối các gói sản phẩm và dịch vụ. Nó bao gồm tất cả nguyên liệu thô, tồn kho trong quá trình sản xuất, và việc vận chuyển và lưu kho hàng hóa thành phẩm từ điểm xuất xứ đến điểm tiêu thụ. Nó chủ yếu dành cho ngành công nghiệp sản xuất và nó cung cấp kiến thức về việc phát hành sản phẩm cho khách hàng và nhà phân phối của công ty. Mời các bạn cùng tham khảo chi tiết nội dung bài viết!
Trang 1DEVELOP JAVA WEB APPLICATION FOR SUPPLY CHAIN
MANAGEMENT
SVTH: Nguyễn Thị Ngọc Anh, Nguyễn Thị Hoa, Hoàng Thanh Nga, Lê Minh Phương, Nguyễn Thu Trang
GVHD: ThS Trần Nguyễn Khánh
Tóm tắt – Quản lý chuỗi cung ứng là một tính năng cần thiết để tiến hành bất kỳ hoạt động kinh doanh nào Hệ thống này quản lý một mạng lưới các công ty được kết nối với nhau chịu trách nhiệm cung cấp cho người dùng cuối các gói sản phẩm và dịch vụ Nó bao gồm tất cả nguyên liệu thô, tồn kho trong quá trình sản xuất, và việc vận chuyển và lưu kho hàng hóa thành phẩm từ điểm xuất xứ đến điểm tiêu thụ Nó chủ yếu dành cho ngành công nghiệp sản xuất và nó cung cấp kiến thức về việc phát hành sản phẩm cho khách hàng và nhà phân phối của công ty
Abstract - Supply chain management is an essential feature of conducting any business operations This system manages a network of interconnected companies that are responsible for providing end users with product and service bundles It includes all raw material, work-in-process inventory, and finished goods movement and storage from point of origin to point of consumption It is primarily intended for the manufacturing industry, and it provides knowledge about product releases to the company's clients and distributors
Keywords: Java Servlet, Model-View-Controller, Web Applications
A INTRODUCTION
Ten years ago, the word “Supply chain” or “Supply chain management” rarely appeared in the work of managers They just use the terms “logistic” or “load” to describe the flow of goods However, in recent years, this term has become popular, even becoming a major that attracts many students from a myriad of Universities So, what is supply chain management? We can find various definitions in google but by common definition, Supply chain management is the coordination of production, inventory, location and transportation among departments in the supply chain to quickly and efficiently respond to the market need
To gain a specific understanding about the huge roles of supply chain management, our group decided to create a website “Supply chain management system” The system's primary goal is
to streamline contact between the organization's administrators, customers, and suppliers This project keeps track of details about the company's clients and distributors in relation to its product launch This will also keep track of sales and suppliers The website includes five main functions: Inventory management, Inventory management, Logistics and shipping status, Forecasting, Return management This report will provide the outline of the requirement, overview of the characteristics and constraints of the system
Trang 2B MAIN CONTENT
This application is designed to run on any computer Java software must be installed on the client side computer The person who registers for the application has the ability to apply his registration form and then determine the conditions based on his classification This document plays a vital role in businesses that are the priorities of the Supply Chain Management Tool As a result, it is anticipated that the firm will communicate specifically with each of its clients when it comes to product details It satisfies a variety of customer specifications The system's primary goal is to automate coordination between the organization's management (Admin), customers, and dealers
Figure 1 - SCM Structure
Pictorial View of the system:
Figure 2 - SCM View
Trang 3I DEVELOPMENT
1 Model View Controller ( MVC)
In the project, to build the website, we follow MVC design pattern, Model DAO resource, JSP (Java Server Pages) works as View and Servlet works as Controller Frontend
we use React, Backend is Servlet and MySql to design databases Additionally, we use Data
Transfer Object Pattern (Entity, DTO, DAO) to transfer data between Client and Server
2 Analysis
Database is absolutely an integral part of software systems To fully utilize ER Diagram
in database engineering guarantees you to produce high-quality database design to use in database creation, management, and maintenance An ER model also provides a means for communication
A description of the persistent data storage perspective of Supply Chain Management System
Figure 3 - SCM Entity-Relationship Diagram
3 Design
4.1 Database design & Design Pattern
Database design : Layered Architecture Style
In this setup, you have the presentation or GUI tier, the data layer, and the application logic tier
Trang 4● The application logic tier The application logic tier is where all of the "thinking" takes place, and it knows what the application allows and what it can do, as well as making other decisions This logic tier also writes and reads data to and from the data tier
● The data tier All of the data used in your application is stored in the data tier This tier allows you to safely store data, perform transactions, and even browse through massive amounts of data in a matter of seconds.In data tier, the database is MySQL database
● The presentation tier The user interface is the presentation tier This is the interface through which the app user communicates This is where they input the necessary data This tier also serves as a conduit between the data and the user, relaying the user's various behaviors to the logic tier The presentation tier is the Web application that you see It's shown in a Web browser on your computer, and it includes CSS, JavaScript, and HTML codes that help you understand the Web application The presentation tier will show you boxes for username, password, and a submit button if you need to log in All of this will be passed on to the logic tier after you fill out and apply the form
● The logic tier will have the JSP, Java Servlets The logic tier would be run on a Web server
Design Pattern: Mediator Design Pattern
Mediator is a behavioral design pattern that allows you to reduce the chaos of object dependencies The pattern prevents the objects from communicating directly with each other, forcing them to collaborate only via a mediator entity
This project follows the Agile model and each module is independent to avoid tons of code repeats In the code base, the database layer should be reusable, models should be reusable
According to the Mediator pattern, you can stop all direct contact between the components you want to be independent of one another Instead, these components must work together via a specific mediator object, which guides calls to the relevant components As a result, instead of being linked to hundreds of colleagues, the components are only reliant on a single mediator class I create an auto table link class in code that is supported by the model classes To get the data from the table I, all I have to do is define the model class when doing database interaction
4.2 Backend Design
JDBC is a set of specifications that defines how a program written in java can communicate and interact with a database It provides a vehicle for the exchange of SQL
Trang 5between java applications and databases Programs developed with Java and the JDBC are platform independent and vendor independent
Servlets and Java Server Pages are complementary APIs, both providing a means for generating dynamic Web content A servlet is a Java class implementing the javax.servlet.Servlet interface that runs within a Web or application server's servlet engine, servicing client requests forwarded to it through the server A Java Server Page is a slightly more complicated beast JSP pages contain a mixture of HTML, Java scripts (not to be confused with JavaScript), JSP elements, and JSP directives The elements in a Java Server Page will generally be compiled by the JSP engine into a servlet, but the JSP specification only requires that the JSP page execution entity follows the Servlet Protocol
Figure 4 - SCM Controller
4.3 Frontend Design and Customer Interface
The frontend server uses React for flexibility and maintenance due to its modular structure
JSP (Java Server Pages) technology allows designers to easily create Web content that has both static and dynamic components JSP technology projects all the dynamic capabilities
of Java Servlet technology but provides a more natural approach to creating static content CSS, HTML and Bootstrap libraries for responsive design were also used to improve user experience
JavaScript enables Web authors to write small scripts that execute on the users’ browsers rather than on the server An application that collects data from a form and then posts it to the server can validate the data for completeness and correctness, for example,
Trang 6before sending it to the server This can greatly improve the performance of the browsing session because users don’t have to send data to the server until it has been verified as correct
To access the web application, we access http://localhost:5000/ While the page is being
loaded, the presentation server makes requests to the application server by fetching localhost:8080 using the node-fetch library to get data from MySQL database
Figure 5 – Login Form for the system and error login (backend)
Figure 6 - Supply Chain Management System Homepage access the web application by http://localhost:5000/
It is the management of flow of products and services with other functions
Trang 7Figure 7 - Roles Management
Figure 8 - Add new Role
Figure 9 - Display error when update/add duplicate name
Figure 10 – Transporting Units Management
Trang 8Figure 11 – Labors Management
Figure 12 – Warehouse Management
Figure 13 – Order Management
In this view the administrator can: Add a new product, Update or delete existing products, manage data for inventories, manage data, and Automatically get latest data
Trang 9Figure 14 - Inventory Management
Some errors in product cause “FAILED” status The manager can change status from PENDING to SHIPPING so the order displayed in order management once upon
Figure 15 – Return Management
Trang 10
Figure 16 – Change Status in Return Management
5 Implementation
In this module Administrator can check the availability of the product, the new launched product information It also checks the delivery of product to the clients request and filters the products which are not being ordered by the clients
Whenever the Admin login into the system, it first checks the client requirements and then contacts the various dealers depending upon the requirements specified by the client
II Evaluation
1 Advantages
It will be easy for the user to become familiar with and competent in using the user interface on the first contact with because the website have friendly customer interface as well as view the web clearly Coupled with 5 main functions( Inventory management; order management, logistics and shopping status; forecasting; return management) , users will quickly achieve their objective through using the website
2 Limitations
Topic Supply chain management is a broad topic so we just focus on some main aspects Coupled with, this topic is hard to study, so it is time-consuming to plan, discuss, assign tasks and build this web
3 Future Improvement
Our project’s delivery dates and times are not stated, but they can be added as a future improvement We will complete this web for the manager in charge of all functions At any given time, only one report is produced We will make improvements to make it possible to generate more reports and maintain the daily schedule as part of the project's potential improvements Furthermore the authentications may also be obtained by the vendor during
Trang 11C Conclusion
We have created this site with great potential and it can be easily integrated in the future The website will help customers save time and travel expenses, customers can easily order at home with just a few clicks Furthermore, our project is created with the aim of meeting the needs of the general consumer to the greatest extent possible We hope that you will see all the features and benefits that this website has to offer
REFERENCE
[1] Oracle | Integrated Cloud Applications and Platform Services What is Supply Chain Management? Available at:
https://www.oracle.com/scm/what-is-supply-chain-management/
[2] IntechOpen - Open Science Open Minds | IntechOpen Using Web Technologies for Supply Chain Management Available at:
https://www.intechopen.com/books/supply-chain-management-pathways-for-research-and-practice/using-web-technologies-for-supply-chain-management
APPENDIX
[1] Project repository: our source code with the link attached in github below
https://github.com/phuongxinhgai8788/SE2_finalproject.git