April 4, 2006
Assignment 1 – LCO
This paper describes the Inventory Management System sufficiently to determine the feasibility and usability of a finished system. The core concept is to track the sale of items from the cash registers with additional features for interpreting the data. It uses a client-server model with a connected database to allow multiple stores and warehouses to be connected. This allows for later expansion while still supporting the targeted small businesses. The core features and final framework should be completed within 2 weeks, leaving 5 weeks to implement additional features and testing.
1. Operational Concepts
The Inventory Management System is a real-time inventory database capable of connecting multiple stores. This can be used to track the inventory of a single store, or to manage the distribution of stock between several branches of a larger franchise. However, the system merely records sales and restocking data and provides notification of low stock at any location through email at a specified interval. The goal is to reduce the strain of tracking rather than to handle all store maintenance. Further features may include the ability to generate reports of sales, but again the interpretation is left to the management. In addition, since theft does occasionally occur, the system provides solutions for confirming the store inventory and for correcting stock quantities.
2. System Requirements
The Inventory Management System uses a web-based interface to display inventory data to the stock manager client. The product will use of open-source software primarily due to cost of implementation. A JSP (JavaServer Pages) servlet will be hosted by an Apache Tomcat web server (on top of any choice of operating system, although a flavor of Unix is recommend). The first feature of the Stock Manager Client web interface component allows the Stock Manager Client to view the current stock of products, along with the capabilities of searching and sorting the products. The second feature of the Stock Manager Client web interface will allow the user to modify application settings, such as the threshold for email notifications, frequency of inventory scans (daily at a particular hour, weekly, monthly, etc.), and security settings. The third feature of the Stock Manager Client web interface will allow the user to update the inventory during the restocking process. See Figure 1. Since a web interface will be used, a network that supports the HTTP/HTTPS protocol must exist, whether it is a private network for an isolated customer deployment or an Internet connection for a multi-site customer deployment. The bandwidth of the network depends on the frequency of transactions. A bandwidth of at least 10 Mbps is recommended (small commercial deployment). The database to store the inventory data will use a MySQL database.
Since the software and hardware resources of cash registers are not available due to the variation in software and cost, we will be developing an emulated Cash Register client to interface with actual cash registers. The Cash Register client will emulate purchases by having a simple graphical interface with fields for a barcode number and quantity and a button to make a purchase. See Figure 2. As these resources become available, the actual implementation for specific cash register models will be considered for future releases of the Inventory Management System. JavaPOS will be used as a reference for emulating cash registers, and could potentially be used to create the actual implementation of the future release.
Alternatively, commercially licensed products are available. In particular, the Microsoft ASP.NET (Active Server Pages) framework can be used. This requires...