Implementation Android Based E-Commerce for Improving Business Process and Increasing Revenue

E-commerce is one of the solutions to make a business known by people and gaining new customers. E-commerce makes transaction between seller and customer convenient because people no longer need to come to the store if they want to buy something. Retail Businesses that still serve their customers using old method or only serve the customers who come to the store will lose with the competitors that use e-commerce because many people right now using e-commerce in their smartphone to find the products they wanted rather than to go to the store and it makes the business can’t get any new customers and can’t increase their revenue. Retail Businesses needs to change their old method to a new one by using android based e-commerce. Android based e-commerce is designed using Extreme Programming method. The old method that the business used will be replaced into a new one where the business will serve the customers online by using android based ecommerce and also serve the customers who came to the store. The changes from implementing android based e-commerce is expected to make the business process in retail business will be more efficient and effective to increase revenue and customer’s satisfaction.

implemented in retail businesses to change the old business method to a new one so they can improve their business process and increase their revenue.

Materials and methods
Extreme programming is an efficient, low-risk, flexible, predictable and specific methodology to develop a software and also it is distinguishable from any other methodology [11]. Extreme programming is different from all other methodologies in many ways because we can which quality attributes are important for extreme programming and we can make a new quality model specifically for the products that are developed using extreme programming approach [12]. Extreme programming helps provide program quickly with minimum risk and is suitable for small projects compared to waterfall which are better suited for large projects [13]. Extreme programming suitable for the development of the system that need to adapt to change the development of the application quickly [14]. Planning. Planning phase aimed to find what to build within due date that have some business value and what to do in the next iteration. User stories will be created to get what task to do and what requirements needed to build the system.

Design.
In extreme programming, the design needs to be simple because the simplicity of design is the key requirements in extreme programming. A simple design is made by working on something needed currently without trying to work on something that not asked for currently.
Coding. In coding phase, customers are considered to be one of the team members and the code is written based on previous tests that are developed before. Programmers develop the system in pairs to share ideas and work with collaboration to finish their task. The system development only focused on the functional requirements without any additional feature that are not yet needed.
Testing. In testing phase, the code is extensively tested and reviewed. The testing includes unit testing, system testing, integration testing on increments and acceptance testing. The increment may take single iteration to several iterations to finish which depends on the customer acceptance and changes requested for the same increment.
There are 12 practices in extreme programming [17]: Planning Game. Story cards or user stories are used to collect system requirements and further planning. During planning game, different team roles, team size, working hours, and overall schedule is defined. Planning game has two parts [18]: Release Planning. Release planning focused on finding what requirements are needed in near-term releases and when they should be delivered. Iteration Planning. Iteration planning focused on planning the activities and t asks of the developers. The requirements are defined in different task modules and will be assigned to programmers with variable timeboxing. It will be matched with the user story at the end of the result. Small Releases. Small releases focused to make the system open and available for evaluation by the customer. It helps to get customer's feedback immediately.
Metaphor. Metaphor is the architectural design of the system that describe how the system work and it is very important for the developer to understand the system.

Simple Design.
Simple design helps to design basic required functionality of the system and avoids unnecessary details which means it only focuses on currently needed features.
Continuous Testing. Continuous testing aims to provide quick feedback by using unit testing and acceptance testing continuously.

Refactoring.
Refactoring means improving quality and flexibility by restructuring the system without changing its behavior. The developers need to routinely make the code quality better.
Pair Programming. Pair programming is a feature that distinguish extreme programming from other development approaches. In extreme programming, coding is performed by two programmers at the same machine to develop high quality software at lower cost.
Collective Ownership. Collective ownership means any programmer can access the code any time to improve it where the code is reviewed by programmers and then enhance the quality of the software.

Continuous Integration.
Continuous Integration focused on integrating and testing the system after completing every task. It may happen many times but it can reduce integration problems and improves software quality.

40-Hour
Week. Extreme programming has a rule where programmers have to work 40 hours a week and not more than this. Unnecessary overtimes are avoided to prevent mistakes that done by the programmer because of tired and bored.
On-Site Customer. Customer's representative is a part of the team and remains on site all the time because the customer's representative usually a domain expert that can decide what desired features the customer wanted and can steer the development process. On-site presence helps to prevent communication gap between developers and customer.
Coding Standards. Code can be accessed or changed by any programmer but when sharing the code among programmers, it is necessary to follow some common coding standards.

Results and discussion
Planning. At this phase, the owner and the employee will be interviewed to analyze current business process so the solution or the new proposed business process can increase the business revenue. System requirements will also be gathered to help in designing a system that can help the business run effectively and efficiently. The requirements will be described in user stories that shown in Fig. 2.

Fig. 2. User Stories
The user stories shown in Fig. 2 describe the business requirement based on the customers, employee and owner stories. When the customers interviewed, there are two types of customer. First are the customers that far from the store, they want to buy the products from the store but they don't want to come the store because the distance from their house to the store is too far and they don't want to find another store because the quality of the product can't be guaranteed in other store they found. Second are the customers that close to the store, when they come to the store they need to wait longer to be served and get the products they wanted. They don't want to wait longer to be served. They have no problem waiting but when they need to wait longer, it makes them tired and usually they go home or find another store.
The employee from the store want to have a products report and sales report that automatically recorded because when they need to find the products from the inventory, they don't have a products report so they don't know if the products available or sold out and they need to find and check the products first. It takes times when they need to find and check the products to confirm if the products available or sold out and it makes the customers wait longer to be served. When the customers make transaction, the employee need to record the sales report manually and make the next customer need to wait the employee record the sales report first. Recording sales report manually it's not effective because the report can be lost if not stored properly.
The owner from the store want to have an application so they can sell their products online and gain new customers. E-commerce application can help the business to improve their business process and increase their revenue because the customers that far from the store can order from the application and make them comfortable and satisfied when make a transaction with the store. E-commerce application can also improve the business process because all the products recorded in the application and every transaction recorded automatically. It makes the customers no need to wait longer because the employee can find the products faster and serve the customers efficiently and effectively.
Design. At this phase, the system interface will be designed. All the functions in the system will be designed based on the system requirements that have been previously gathered at the planning phase. Class, responsibilities, and collaboration cards will be used to represent class in the system. The class, responsibilities, and collaboration cards can be seen in delete products, open sales report, and logout. The employee and the owner can input, edit, and delete their product the system so all the products recorded in the system and the customers can buy the products from the application. It also helps the employee to find a product if there is a customer come to the store to buy a product. The employee and the owner can see customer's order from the application and can open sales report that recorded automatically after a transaction is finished. They can also logout from the system. Profile class can edit profile, view profile details, and logout. Customers can edit their profile if they want to change their profile picture, email, phone number, address, name, and password. If the customers want to use another account, they can logout by pressing the logout button.
Purchase class can view order status and purchase history. The customers can see their order status so they know if the products are already delivered to them or not. They can see their purchase history from the system.
Order Product class can order products, choose shipping services, and view ordered products. The customers can check the products they want to buy before order the products to make sure the products in the list are the products they wanted to buy. The customers can choose shipping services they wanted from the shipping services list.
Product Details class can view product details and add the product to the cart. The customers can see the product details first and if they wanted to buy it, they can add it to the cart by pressing the add to cart button.
Cart class can edit product quantity in cart, delete the product in cart and add the product in cart to order product. The customers can add the quantity of the product they wanted to buy and can remove the product if they change their mind. If they want to order the products, they can order it by pressing the order button.
Input Product class can input products and upload image. The employee and the owner can upload image product and input the product details so the customers can see and order it if they want it.
Order class can input shipping fee, confirm order, confirm payment, confirm order is success. The employee and the owner can confirm order from the customers and they can input the shipping fee based on the distance from the address and the shipping services. They can also confirm payment before deliver it to the customers and can confirm the order is already delivered to the customers.
Sales report can view sales report and find sales report based on date. The owner can see all the transaction from online sales and offline sales. The owner can find the transaction based on date the owner wanted. The system will show all the transaction between the first and the last date the owner wanted.

Fig. 3. Class, Responsibilities, and Collaboration Cards
Coding. At this phase, the system will be developed based on the design from the previous phase. Android studio will be used to develop the system and the programming language is Java. The database used in the system is SQLite database.
Testing. At this phase, the system will be tested to find error and bugs also whether the developed system fits the system requirements or not. All the function in the system will be tested to ensure the system quality. The system will be tested using User Acceptance Testing.
The business process before implementing android based e-commerce can be seen in Fig. 4.
The old business process shown in Fig. 4 describe the process where the customers need to come to the store to buy their desired products. The employee needs to find the products first at the inventory and make the customers wait. That process uncomfortable for the customers because they need to wait longer if the products are hard to find. After the products found by the employee, it will be brought to the customers and the customers will check the product first. If the customers like the product then the customers will buy the product and then the employee will record the transaction manually. The process is time consuming because if there are two or more customers at the same time, the employee can only handle one customer at time. The other customers need to wait until the first customer served. If the customer doesn't like the product, all of the customers at the store need to wait again until the employee found the product in the inventory. It will make the customers uncomfortable and they are not satisfied if the business keeps serving the customer that way.
Android based e-commerce will be implemented in retail business to change the old business process to a new one where the new business process can improve the business process in retail business so customers can be satisfied because they no need to wait longer to be served and the business can improve its revenue by selling their products online. The android based e-commerce is developed using extreme programming method and the programming language is Java. The design of android based e-commerce based on the user stories and class, responsibility, and collaboration cards. Before the android based e-commerce implemented in retail business, the system will be tested using user acceptance testing to ensure there are no bugs and errors that can slow down the process. When there are no bugs and errors in the system, android based e-commerce will be implemented in retail business to change the old business process.

Fig. 4. Business Process Before Implementing Android Based E-Commerce
The business process after implementing android based e-commerce can be seen in Fig. 5. The new business process method shown in Fig. 5 describe that the process is more effectively and efficiently. The customers can order their desired products from smartphone whenever and wherever they want. The employee can check customer's order and then prepare the product to delivered to the customer's house using courier. The employee no longer needs to check the products in inventory because all products are recorded in the system so it's faster to get the products. Sales reports are recorded automatically to the system after the customer confirm the product already received. The employee no longer needs to record all the sales report manually again. The difference between before and after implementing android based e-commerce based on Fig. 4 and Fig. 5 are the employee no longer need to manually record the sales report and can serve the customers faster because all the products report recorded in the system so customers no need to wait longer again. The business can gain new customers by selling their products online and can make the customers satisfied with the services because they can buy their desired product from their home.

Fig. 5. Business Process After Implementing Android Based E-Commerce
The comparison between the old business process and the new business process can be seen in Table 1. Old business process only serves people who came to the store New business process can serve both people who came to the store and people who buy online 2 Old business process doesn't have product report New business process has product report in the system and recorded automatically after the user input the products 3 Sales report recorded manually Sales report recorded automatically by the system 4 Customers unsatisfied with the services because they need to wait longer to be served Customers satisfied with the services because they can buy whenever and wherever they want and no need to wait longer to be served Android based e-commerce helps the business to have a business process that make the business runs effectively and efficiently. The process in the business is more efficient because before using the system the employee needs to record sales report manually and don't have a product report that makes it harder to find a product in the inventory when a customer wants to buy it. After implementing the system, the employee can check the products from the system so it's easier to find the product and also every sales report recorded automatically by the system which it really makes the business process more efficient. Before implementing the system, customers need to wait longer to be served because the employee needs to find the product and can only serve one people at time. After implementing the system, the employee can serve the customers effectively so they no need to wait longer. They also can buy their desired products from their home and it make them satisfied with the services provided by the business.
Android based e-commerce can also increase the business revenue because new customers who can't come to the store can buy the products by using the system. Revenue comparison between old business process and new business process can be seen in Table 2. Before using the system, the business only serves people who come to the store. The customers who come to the store usually about 35 customers per day. After the system implemented, the customers increase about 50 per day because the business serves the customers who buy the products from the application and the customers who come to the store. The customers who can't go to the store can buy the products anywhere from their home by using the application and no need to come to the store because the products will be delivered by the courier. The products sold per day also increased because when the business only sells the products offline, only the customers who near the store that can come to the store and buy the products but after using the application the products sold per day can increased about 75 products per day where before using the system the business only sold 50 products per day. This can help the business increase its revenue because new customers can find and buy their desired products by using the application. The android based e-commerce user interfaces can be seen in Fig. 6 and Fig. 7.

Fig. 6. Home Customer Interface
The Home Customer interface shown in Fig. 6 provide the customer's needs in the user stories. The customers that far from the store can buy their desired products in the application. They can find the products by typing the product name or by scrolling down the screen to find it one by one. The products will be delivered to the customer's house based on the customer's address after the payment confirmed. The customer that far from the store no longer need to come to the store and can buy the product they want from the store from their house.

Fig. 7. Home Admin Interface
The Home Admin interface shown in Fig. 7 provide customers, owner, and employee needs in the user stories. Based on the user stories the customers that close to the store don't want to wait longer to be served an get the products they wanted. The employee needs a products report and sales report that automatically recorded to find the products in the inventory faster so the customers no need to wait longer. The owner needs an application to gain a new customer and sell the products online also improve the business process to satisfied the customers. The customers no need to wait longer anymore because the employee have the products report in the application so the employee can find the products faster and serve the customers that come to the store effectively and efficiently. The employee no longer needs to record the sales report manually because the application records every transaction automatically after the transaction is finished. The owner can gain a new customer and improve the business process also increase the revenue because selling the products online can make new customers that don't know where to buy the products can find the products in the application. The android based e-commerce makes the customer satisfied because they can buy the products conveniently from their home and they no need to wait longer if they come to the store.

Conclusion
Android based e-commerce can helps retail business that still using old method serve the customers more effectively and efficiently. The system changes the old method into a new one that can improve the business process where all the reports recorded automatically so the employee can serve the customers more efficiently and effectively. The new business process makes the customer satisfied because they no need to wait longer to get their desired products. The business revenue also increased by using the system because new customers can find and buy the products online so the customers who can't go to the store can buy it from the application and the people who don't know about the business can find it in the internet and can buy the products they wanted in the system.

Future Scope
The next step of this study is to test the system when there are new features added to the system. The system can be tested using black box testing or white box testing. The business process also needs to be evaluated again, to see the difference between before the new features added to the system and after the new features added to the system. Different method to improve business process and increase revenue can be considered in the next study.