Designing a Web-Based Inventory Application at General Steel Supplier Using Extreme Programming Method Perancangan Aplikasi Inventory Berbasis Web pada General Steel Supplier Menggunakan Metode Extreme Programming

The use of information technology has rapidly developed in various aspects of human life, and currently, an information technology system such as an inventory system is required, which has a significant influence on developing a company's business. General Steel Supplier is a company that faces a problem in managing stock data, which causes difficulty in predicting stock availability. The recording of incoming, outgoing, and returns goods is also unorganized, which affects the inventory recording. The report creation process takes a long time. This research aims to develop a web-based inventory application that can solve existing problems. The application was developed using the Extreme Programming method, which consists of Planning, Design, Coding, Testing, and Software Increment. The result of this research is a web-based inventory application that can organize the recording of stock, incoming, outgoing, and returns goods more systematically and create reports faster. The conclusion of this research is the design of a web-based inventory application that can assist all relevant parties in managing inventory data in the warehouse.


INTRODUCTION
n the current era of globalization, information technology is developing quickly and has a significant impact, such as giving many benefits in advancement in a variety of aspects of life [1], [2].Every innovation is created to provide many conveniences and various ways of carrying out activities.The usage of technology by people has become a need to complete tasks [3].Information system technology is used to achieve goals and missions in companies where its use can assist management decision making and providing appropriate data.Furthermore, it can to automated information access processes, reduce the occurrence of undesirable errors, and increase the speed, accuracy, and completeness of an integrated system [4].The information system technology itself is a collection of interconnected elements that function to process, collect, distribute, and store information that is useful as a support for decision-making as well as supervision within a managerial organization with an organization's strategic activities [5].
In this situation, the company truly requires an information technology system that has a big impact on how effectively it develops its business [6].One example is an inventory system that is used to manage and manage inventory data in a warehouse or inventory of goods [7], [8].A company whose main activity is selling things needs to have effective inventory management to succeed [9], [10].With the advancement of existing information technology, companies can receive assistance with information and product coordination.The implementation of a computerized system can save time, energy, and results in accurate data presentation [11], [12].Website-based systems are becoming more prevalent and widely used in this era of globalization.Many developing businesses use website-based applications to design energy resources and run their industries.The use of a website-based system to convey information is extremely beneficial for a business that takes little time and can be done anywhere.The information displayed will also be updated in real-time.Because of this convenience, website-based systems are very common among users nowadays [13].
General Steel Supplier is a metallurgical company that sells a variety of steel goods such as flanges, pipes, plates, elbows, drats and so on.Goods from General Steel Supplier are widely utilized by industries ranging from mining, oil and gas, food, and beverage, chemical, machinery manufacture, ship and marine building, and infrastructure.While running a business process in the field of selling steel, the company encounters certain issues, namely difficulties in managing stock data.The recording of stock is irregular, making it challenging to determine the availability of stock in the warehouse.The documentation of incoming goods, outgoing, and returns is also unorganized, which affects the inventory records.Additionally, report creation still relies on Microsoft Excel, resulting in a lengthy process.Problems related to inventory data collection in the warehouse are a problem that is quite often encountered in the business world.The function of inventory data gathering in the warehouse is an activity that includes incoming goods data, outgoing goods data, and warehouse stock [14], [15].
The process of the goods data collection system at the General Steel Supplier is currently considered not effective in the process of controlling and managing inventory in the warehouse because it can increase human error during the process of recording incoming and outgoing goods to checking the stock of goods [16].Therefore, the author proposes the design of a web-based inventory application for General Steel Supplier.This inventory application is designed using the Extreme Programming method because the nature of the developed application requires quick and flexible development.This means that during the system development, users can make additions or modifications so that the developed application can meet the user's requirements.The inventory application is built in the form of a web application to facilitate remote communication between the warehouse and the sales, addressing the time constraints faced by sales personnel who need quick and accurate information about stock to handle direct price quotations with customers.It is intended that the design of this application would increase the performance of inventory business processes, solve the problem of processing goods data, and make it easier to report accessible goods data [17].

RESEARCH METHODS
Data for this research was gathered by closely observing the General Steel Supplier and conducting interviews about the company's business processes.Extreme Programming (XP) will be used in the design of website-based inventory applications for the company.Extreme Programming (XP) is defined as a software development method that is part of the Agile Software Development approach that is effective, efficient, and flexible in the face of changes in plans that occur during system development.The process involves the following steps: planning, design, coding, and testing.This method is frequently referred to as "technical how-to", and it describes how a technical team may develop software efficiently, and effectively by employing practical development principles and techniques [18], [19].
Figure 1 Extreme Programming Method [20] The following are several stages in Figure 1 Extreme Programming Method that are used to develop software, including: A. Planning Phase This phase focuses on gathering requirements, which will allow the XP team's technical members to understand the business context for the software to be developed.Developing the inventory application at this stage starts with identifying problems that arise in the running system.Then analyze user needs for the system to be built [21].

B. Design Phase
This phase focuses on creating system modeling based on the outcomes of the needs analysis.Data Flow Diagrams consisting of Function Decomposition, Context Diagrams, Overview Diagrams, and Detailed Diagrams were utilized for system modeling [22].

C. Coding Phase
This phase focuses on implementing the system modeling design that was created in the preceding design phase and incorporating it into the programming code that creates a software prototype.This inventory application was designed using the PHP programming language, and the Visual Studio Code application.Meanwhile, database management uses phpMyAdmin to manage MySQL databases [21].

D. Testing Phase
This phase focuses on testing applications that have been designed using Black-box testing.An acceptance test will be carried out, during which system users will evaluate the system's overall features, and functionality [23].

E. Software Increment
This phase focuses on developing a system that has been designed in phases and is carried out after the system is implemented in the company by adding features or content that improves the system's functionality [24].

Planning Phase
In this phase, the author gathers information about the business by conducting interviews with the General Steel Supplier's owner.The obtained information is then presented in the form of a Business Process Model and Notation (BPMN) to obtain a more detailed problem identification is obtained as shown in Figure 2 Business Process Model and Notation.planning for carrying out the activities of this development can be seen in Table 1 Schedule of Research Activities According to Figure 2, Business Process Model and Notation (BPMN) explains the process of selling goods to customers, which begins with the customer requesting a price estimate from the sales and continues with the sales providing a list of price offers.If the customers agree on the price, the customers can give the order list to the sales, who will then forward it to the head of the warehouse and warehouse staff, who will prepare the order.The head of the warehouse creates travel permit and sends them to the warehouse staff, then send orders to the customers.The customers receive the order and make a payment to the director after the goods are received where they can pay in cash or giro.If customers want to pay with cash, the director can immediately receive payment.Meanwhile, If want to pay with a giro, the customer can send a giro payment document to the director.The director receives the document.

Design Phase
In this phase, the authors propose designing an inventory application that is described in system modeling such as DFD (Data Flow Diagram) and ERD (Entity Relationship Diagram).The design of the system modeling can be seen below.

DFD (Data Flow Diagram)
The authors present the function decomposition, context diagram, and overview diagram in this DFD modeling, which may define how the proposed inventory application's input-processoutput works.The form of the DFD description is shown below.

A. Function Decomposition
Function decomposition is a diagram used to explain the decomposition of a system or a hierarchical chart that demonstrates top-down functional decomposition and system structure.This diagram is used to plan more elaborate process models and this diagram describes that the inventory application has nine main processes in its implementation, and each of these main processes has multiple sub-processes that are all interrelated.

B. Context Diagram
A Context Diagram is a diagram that contains a process and describes the scope of a system.This diagram is the highest level (Top Level) of DFD and describes all system inputs and outputs, providing an overview of the entire system.This diagram provides an overview of the entire system and utilizes three symbols: a symbol to represent external entities, a symbol to represent data flows, and a symbol to represent processes.In this diagram, there are four users involved, namely the Director, Head of the Warehouse, Sales, and Warehouse Staff that perform different interactions/activities depending on the type of account they have in the inventory application.C. Overview Diagram The director will register account data and have access to all CRUD processes in the inventory application, and the results of the registration data will be sent directly to the user's data store.The director is the main administrator in charge of managing the entire process.For stock checking purposes, Sales can access the process of goods data, suppliers' data, customers data, incoming goods, outgoing goods, returned goods.The head of the warehouse has access to all processes except the data user due to the menu is only accessible to the main administrator (director) and the results of the data input will be sent to each data store, as shown in the diagram.Warehouse staff has access to the goods data, supplier data, customer data, incoming goods, incoming goods returns, and outgoing goods.

Coding Phase
In this phase, the authors design a system in programming code that generates a proposed inventory application.The author used the PHP programming language, which is helped by the Visual Studio Code application, as well as phpMyAdmin for database management.6 Page of Stock Data shows the Page of Stock Data that is used by users to input goods information.This page contains information related to the code, name, type, stock, unit price, total price, and actions: edit and delete.On this page, users can perform CRUD (Create, Read, Update, Delete) operations.In the incoming, outgoing, and return goods menus, the data from this page will be displayed directly in the table.Regarding the management of goods inventory, when users perform CRUD operations in the incoming, outgoing, and return goods menus, the stock column in the goods data menu will undergo changes according to the specific CRUD management performed in each respective menu.
If management is conducted in the incoming goods menu, the stock with a specific goods code will increase as goods are received (purchased) into the warehouse.If management is conducted in the outgoing goods menu, the stock with a specific goods code will decrease as goods are sold from the warehouse.And if management is conducted in the return goods menu (purchase returns), the stock with a specific goods code will increase as goods are returned to the warehouse.
Stock management like this will make it easier for users in handling stock and help prevent input errors related to stock management due to incoming and outgoing goods.This page also provides notifications for users regarding low stock items.Whenever there is a goods with a stock less than 10, a notification will appear indicating that a specific item with a certain code is running low on stock.In addition, if users want to delete specific goods data, click the delete button in the action column corresponding to the targeted goods data, and the data will be immediately deleted.
Figure 6 Page of Stock Data Figure 7 The Add and Edit Features shows the add and edit features, where clicking the add button on the page of stock data will display a form created within a modal to add goods data.Similarly, clicking the edit button in the action column will bring up a form to edit goods data if there are any changes to be made.The figure on the left represents the form view, where users can fill in all the provided fields and click the add button to save the data into the stock data table.The image on the right represents the form view, where users can modify certain data in the form and click the edit button to save the changes into the table accordingly.
Figure 7 The Add and Edit Features

Testing Phase
In this phase, the author tests the proposed inventory application to figure out the possibility of an error occurring in the application so that it may be resolved before it is implemented This test is carried out by checking each option to ensure that the application being tested works as expected.

Software Increment
The focus in this phase is on system development, such as application maintenance in steps and training for users to adapt to the application, and it is carried out after it has been established by the company.However, because the proposed inventory application has not yet been released or implemented in the company, this phase could not be completed in this research.

CONCLUSION
The conclusion that can be drawn from the results of this research are the design of a web-based inventory application can assist General Steel Supplier in managing the recording of stock data, incoming goods, outgoing goods, and returns.The design of a web-based inventory application can help in addressing issues related to difficulties in organizing and checking stock data due to irregular recording.This application also focused on stock data management, where the addition and reduction of stock in the goods data menu are integrated with the incoming, outgoing, and return goods menu.There are also several notifications related to stock availability, where notifications will appear if stock is running low, and the quantity of outgoing goods cannot exceed the available stock in the goods data.Additionally, the design of a web-based inventory application can aid General Steel Supplier in generating faster and more accurate reports on stock data, incoming goods, outgoing goods, and returns.The inventory application's functions are only related to General Steel Supplier, which focuses on inventory management.

SUGGESTION
Based on the research findings, the author suggests that addition of other features to the web-based inventory application for General Steel Supplier to enhance its functionality, gradual introduction of the web-based inventory application to all relevant parties at General Steel Supplier to ensure smooth and effective utilization, considering that this developed application is still in its early stages and has potential for further enhancement in the future.Meanwhile, to compensate for the author's imperfections, can develop a more complex and appealing web-based inventory application for General Steel Supplier.The author hopes that the results of this research can be used as a reference and used as well as possible by the parties involved for better research in the future.BIBLIOGRAPHY

Figure 2
Figure 2 Business Process Model and Notation (BPMN)

Figure 3
Figure 3 Overview Diagram Figure 3 Overview Diagram is a descendant diagram of a context diagram that describes the nine main processes in the function decomposition.According to the diagram below, each user (Director, Sales, Head of Warehouse, and Warehouse Staff) will supply different inputs.The director will register account data and have access to all CRUD processes in the inventory application, and the results of the registration data will be sent directly to the user's data store.The director is the main administrator in charge of managing the entire process.For stock checking purposes, Sales can access the process of goods data, suppliers' data, customers data, incoming goods, outgoing goods, returned goods.The head of the warehouse has access to all

Figure 4
Figure 4 ERD (Entity Relationship Diagram) 3. Wireframe Design Figure 5 Wireframe Design shows a wireframe display of the goods data page, which has a CRUD (Create, Read, Update, Delete) capability that users can use to manage item data that has been input into the inventory application.

Figure 5
Figure 5 Wireframe Design 3.3 Coding PhaseIn this phase, the authors design a system in programming code that generates a proposed inventory application.The author used the PHP programming language, which is helped by the Visual Studio Code application, as well as phpMyAdmin for database management.

Table 1
Schedule of Research Activities

Table 2
Results of Black-box Testing

Table 2
Results of Black-box Testing show that the login, CRUD process for each menu until logout succeeded to work properly with the results of a "success" test status for all test cases that were carried out so that it can be concluded that this application complies with predetermined standards.