This paper will assess the component information systems needed for an effective restaurant information system. It will identify the objects and the classes that are required in a given system. In general, the information system for a restaurant requires a patrons order be placed, prepared, served, billed and inventory updated. This process involves several stages from when the customer first walks through the door, is seated and a waiter is assigned to when the accountant processes the year end data. While having a meal in a restaurant is a simple, familiar process to us as customers, it actually involves sophisticated software systems to process.
It requires data tracking to alert the host as to which tables and waiters are available. The waiter assignment should interface with that individuals employment file. The next stage, ordering food, sends instructions to the bar and the kitchen and alerts the waiter when the order is prepared. Many restaurant systems will also interface to delete the order’s ingredients from the inventory. This not only is beneficial for future ordering, it keeps the staff aware if a popular dish is not available on a particular evening. When the patrons are done, the waiter processes the bill and receives payment. In the context of restaurant systems designs, this involves another set of functions as the bill is processed, tips are allocated, and discounts are applied. Another system uses the customer’s credit card information to process the payment and credit and debit the appropriate accounts. A successful restaurant system does not stop there. It must have to capacity to produce reports for management and financial review. These reports would include periodic inventory, employment and profitability reports. They would also include custom reports on discounts and specials.
The nouns, and their attributes, used to achieve these objectives is as follows:
Bar-The place where drinks are prepared, not relevant for the system files
Bill – this is a class
Completion indication – this is an attribute of Order
Dessert – this could be a standalone item or an attribute of a meal
Diner – this is a class
Discount – this is a class and an inheritance with bill
Drinks - this is a class and can be a standalone item or an attribute of a meal.
Kitchen – The place where food is prepared, not relevant for the system files
Kitchen staff – this is a role and a system user
Meal – this is a class and could be an inheritance with order
Main course- this is an attribute and could be an inheritance with meal
Management –this is role and a system user
Money – this is an attribute and could be an inheritance with payment
Order - this is a class
Orders – Redundant – this is the same as the order
Payment – this is a class
Restaurant – this is too general to be regarded as relevant.
Screen – is out of system as it is an operation
Specials – Attribute – can be taken to be an inheritance with meal
Starters attribute – this is taken to be an inheritance with the meal
Statistics – this is an output of the system and it is an operation
System – this is regarded to be general as we are trying to model the classes of the system
Table – this is a class
Tables – Redundant - the same case with table
Terminal – Redundant - is the same as the screen
Waiter – this is a role and a system user.
Waiters – Redundant – this is regarded to be the same as the waiter.
Object description and their attributes
Waiter – A waiter, for the purposes of system design, is the object that is takes orders placed by the client. They use the system to check the availability of given dishes, place orders with the kitchen and bar staff and check status of the food to determine when it is ready to be served to the diners. After the diners have finished eating, the waiter will also use the system to print the bill and process the payment.
1) The attributes of the waiter object include: name, employment ID, address, job title, age, PIN.
Kitchen staff – The kitchen staff are objects who use the system to view the orders and any additional preparation details. Then they use the same system to inform the waiter that the meal is ready to be served.
2) The attributes of each member of the kitchen staff includes name, employment ID, address, job title, age, PIN.
Bar staff - The bar staff are objects who use the system to view the orders and inform the waiter when order is ready to be served.
3) The attributes include name, employment ID, address, job title, age, PIN.
Management – Management the senior-object who uses the system to process standard reports, statistics, and related data functions and prints the results.
4) The attributes include the job title, name, employment ID, address, age, PIN.
Diner – The diner, as an is object does not use the system and is seen to be outside the organization.
The various components of a successful restaurant information system should have a smooth interface so that the various data entry phases are completed with the least potential error. Staff assignments should be available where appropriate by pull down menus. Inventory should not only update on the preparation side, it should also produce a report so that inventory levels can be periodically confirmed by a physical inventory. Standard reports should be scheduled, however the potential for custom management reports is a necessity as well. A great deal of planning goes into a system that expedites a common everyday meal in a restaurant.
Dines, B 2006, Software engineering 3: Domains, requirements, and software design, Birkhäuser, Basel.
Leffingwell, D & Widrig, D 2003, Managing software requirements: A use case approach, Addison-Wesley Professional, London.
Vugt, S 2007, 'Pro to software engineering', Computerworld, vol 4, no. 2, p. 54.