THE MANAGEMENT PLAN


FEATURES OF THE SYSTEM


The CSO Inventory System contains the following major features:

A User-friendly environment will make it easy for an employee to learn the new system. With a window for each type of employee tasks such as ordering, selling and stocking inventory, or changing an employee record will become as easy as using a mouse.

The system ensures security by only granting access to an employee with a valid id and password. In case of a legal or an illegal entry a record is made in the archive, so that the store owner will know who and when someone accessed the system, and for how long. Furthermore, any changes in a product or employee record will also be archived, again for management control. Processed orders will be stored in the order database, from where they can be accessed for auditing reasons.

Orders can be made individually by the department manager. However, it would consume a lot of time if all products, in need of order, had to be ordered manually. Thus the system will run a batch process once a day where an order of all items needed is produced.

Modification of any record by the head manager or department manager will be easily accomplished through the windowed environment. This allows each supermarket to maintain their own databases.

Authorization level of employees are changeable by the head and department manager. This allows for flexibility within the supermarket, or individual departments.

Please refer to the commentary on system security


DATA STRUCTURES AND ALGORITHMS


In-store supply database
The in-store database is going to hold the current and ordered stock information. Cashiers will be able to decrease stock as items are sold and can increase stock in the case of returns. Stockers will be able to increase the amount of stock. Department managers will have full database editing functions for products within their departments. The head manager will be able to change any aspect of the database.

The stock order can be done once per day as a batch process. This process will check to see if an order quantity has been manually entered and if not check the current stock against the stock minimum. If an order is necessary it is added to the order report.

Whenever a record is changed in the database the audit file gets updated. This includes the old and new records that were changed and the the employee that made the changes.


The supply database will require the following fields:
	
	Product description			TEXT
	Bar code				NUMERIC
	In-store Item code			NUMERIC
	dept					TEXT
	dept #					NUMERIC
	item location
		aisle number 			NUMERIC
		section 			SINGLE CHARACTER
	Store price				NUMERIC
	Stock minimum ( Point of order )	NUMERIC
	Stock maximum				NUMERIC
	Order quantity 				NUMERIC
	Current Amount  			NUMERIC
	On order flag				BOOLEAN

Case size is also a factor that is crutial in ordering from the warehouse. This is simply a minor detail in the ordering algorithm. It comes down to the fact that if we want 3 bags of chips, for example, we can't get just 3, we have to order the whole case, which would be of 12 units. Cases can be 12, 24 or 36 units. Please refer to "assumptions" in the original specification.



Employee database
The employee database is going to be used for authorization functions on the in-store database. Cashiers and stockers will not have any access to this system. Department managers will only be able to edit records of employees that are within their department. The head manager will be able to change or delete any part of the database.

Whenever a record is changed in the database the audit file gets updated. This includes the old and new records that where changed and the the employee that made the changes.


The data in the employee database will have the following fields:
	employee #				NUMERIC
	Authorization level			NUMERIC
	First name, Last name			TEXT
	password				TEXT
	dept					TEXT
	dept #					NUMERIC
	position				TEXT

A future implementation might allow for an address and other relevant payroll information.


Audit File

The audit file will be a text file that will only be read or written to by the head manager. Any changes made to either database will be appended to this file. A future implementation might encrypt this file.

It is essential that NO ONE have access to edit this file. This is crutial, as not event the store manager can be trusted 100% of the time.

The audit file will also have a record appended whenever an improper access of one of the databases is made. This will be used in an attempt to discourage security violations.

We just wanted to reiterate how important it is that EVERY action done by the computer be recorded in the audit file, no matter how small. We require complete records all transactions for security considerations.


Each record of the audit file will contain:
	Time and date				TEXT
	employee #				NUMERIC
	authorization level 			NUMERIC
	dept #					NUMERIC
	position				TEXT

We assume that this record will also contain a short description of the transaction that was completed.


The audit record will also include the new and old records that were changed and a brief description of the changes. In the case of un-authorized access the attempted username name and password will be recorded.

Again, the audit file should not be editable by anyone. All transactions should be appended to the end of the audit file. All transactions should be recorded with no exceptions.


Order File

The order file contains all orders. A new order will be added to this database after the department manager or the batch process created it. The head manager may then access these new orders and approve or alter them. If the head manager decides not to look at them the orders can still be processed by the warehouse. The warehouse takes each order, prepares the shipment, and prints out a laiding form according to the order. Processed orders will be stored in the Order file for audit reasons.
Each order will contain the following fields:
	Order Number				NUMERIC
	Time and date				TEXT
	Manager Name				TEXT
	List of Items

Just that pesky case issue again. Please see first page of Management Plan for more details.



The List of Items will contain the following:
	In-Store Item Code			NUMERIC
	Product Description			TEXT
	Quantity Ordered			NUMERIC



Glossary

Boolean: a value representing TRUE or FALSE.


MAJOR CLASSES OF FUNCTIONS FOR THE SUPERMARKET SYSTEM


Please refer to other comments regarding security and functions contained in the functional specification of this system.


We have divided the functions into seven categories. The categories depend on the type of employee: head manager, assistant manager, stockers and cashiers, as well as internal processes, authorization, and warehouse functions. Each type of employee is allowed to perform a specific set of tasks within his/her authorization clearance, while internal processes, authorization and warehouse functions are more database specific.
The groups are listed below.

head manager:
edit any employee record
edit any product record
edit any new order record
assistant manager:
edit employee records within his/her department
edit product records within his/her department

By assistant manager, we assume you mean department manager.

stocker:
increase stock amount
cashier:
decrease stock amount
increase stock amount
internal processes:
produce order
record changes in product database, employee
database, and authorization in archive
various database maintenance functions
authorization:
login and clearance of an employee into the system
warehouse:
print laiding form
print invoice

The process of editing any employee record includes the following sub-processes or functions:

Adding a new employee to the database. Here the head manager creates a new record for a recently hired person. Name, employee number, department and department number, position, authorization level and a preliminary password are immediately entered and stored in the database. The new employee should change the password at first login.

Deleting an employee. The complete record is removed from the database.

Changing the authorization level. The head manager can increase or decrease the authorization level of any employee.

Changing department and/or position. The head manager can move an employee to a different department and/or give the employee a different position by changing the employee record.


The process of editing any product record includes the following sub-processes or functions:

Adding a new product to the database. A new record is created and the head manager enters all vital information about the product.

Deleting a product from the database.

Change the product record. The head manager may change the complete record or any parts. For example: he/she can increase stock minimum, change price, change location, etc.

Change a new order record. The head manager may change or void a new order record.


The department manager may perform any of the following functions in regard to the employee database:

Change authorization level of an employee within the department.

Change position of an employee within the department.


The assistant manager may perform any of the following functions in regard to the product database:

Add a new product that belongs in his/her department.

Delete a product from his/her department.

Place an order of products for departmental needs. The assistant manager enters the required number of a specific product in the order quantity field and sets the on-order flag for as many products as are needed. This generates an order that can be viewed by the head manager within a preset time frame. If not viewed by the head manager within the given time the order is send to the warehouse. Should the manager decide to look at the order he can alter it, void it, or approve it. The name of the manager will be printed on the order along with an order number, supermarket ID, address, department, date, and the list of items ordered. Note: This does not change the Stock Minimum.

Change the price of a product. The manager enters a new price in the store price field.

Change the product description.

Change the item location.

Change stock minimum and stock maximum.

Enter any data in relation to a received order.

Note: Any changes to products can only be done within the department of the department manager.


The stocker may perform any of the following functions:

Increase the current stock after new stock is being unloaded.


The cashier may perform any of the following functions:

Decrease Stock through selling of products. The cashiers can only do this with either a bar code machine or manually in the designated screen.

Increase Stock in case of product return or refund.


The internal processes include the following functions:

Produce an Order. This will be a batch process that is run once a day at a set time. The complete product database is accessed by the process and each item is scanned to check whether it should be ordered or not. If an item must be ordered, then the stock maximum minus the stock minimum will be entered into the quantity ordered field, and the on-order flag will be set. The order is printed out and send to the warehouse. The order will only contain those items that have been ordered in the batch process.

Update the archive database with any changes to the employee database and product database. A record of before and after the change, as well as the date and who changed the record is placed in the archive. Furthermore, any login to the system whether successful or unsuccessful will be noted in the archive.

Various Database functions will be performed during the maintenance. These functions include searching the database, sorting the database, filtering (eg. the manager of the meat department can only have access to his/her products), subsetting, etc.


The authorization process is one function that asks for login id and password. If either or both login id and password are incorrect a message is printed to the terminal and access is denied. Otherwise, the employee is granted access within the limits of his/her authorization level.


The warehouse holds the database that stores all orders received and processed. With this database the warehouse can perform the following functions:

Print the laiding form that corresponds with an order. The laiding form will display the name of the manager who ordered (in a batch order the name will be that of the head manager), the date, a laiding number, and a list of the items that are shipped out (which should correspond with the order).

Print the invoice corresponding to a received shipment. If several orders were combined, then the invoice will contain several lists of items, one for each order. The invoice will total the purchase, and give a total price at the end. The invoice is then sent to the supermarket.


DATA FLOW DIAGRAM OF THE CSO INVENTORY SYSTEM

[DFD]


EMPLOYEE HIERARCHY

[Security Picture.]


THE MINIMAL SYSTEM


For the end of February, we will deliver a system that reliably performs the main functions of inventory management. The main functions that will be provided are automatic daily order, special order requests, generating a laiding form and invoice at the warehouse, recieving an order at the store, and real-time inventory update at point of sale.

The neccesary interfaces are receiving an order, point of sale, order verification, requesting an order, database modification, viewing laiding forms generated, and loggin into the system. This covers the core functionality of the requested system.


SUMMARY


The CSO Inventory System is a software package which we believe will dramatically reduce the workload required by supermarket chains and their supply warehouses. Everyday functions which can be tedious and time- consuming can now be performed automatically. Changes to inventory are done accurately and instantaneously. Along with high-efficiency, our system also delivers high-security. With pyramid-levels of authorization and clearance, computer-controlled inventory levels, and user identification, only the head manager has access to all functions. By keeping track of several databases used to assist management, keeping track of inventory, shipments, record keeping, and simplifing the load of the user, the CSO Inventory System will help reduce everyday expenses associated with the supermarket business.