External Exam Download Resources Web Applications Games Recycle Bin

Fast Food

A new drive-thru fast-food restaurant is opening in your suburb, and they are seeking a demonstration of a prototype digital solution in a console environment that can manage core aspects of their business (and possibly some additional tasks). As such, you are a prototyping an application that illustrates the functionality a data-driven solution can provide.

food_data.db

For this challenge, you can use this food_data.db database or develop your own. It is recommended you maintain strict naming conventions for files, fields and tables (e.g. no spaces or special characters). Additionally, use mandatory, uniqueness, auto-increment and primary key rules where possible to help ensure data integrity.

context level DFD | level 1 DFD unfinished

As far as core programming functionality, it is expected that core tasks will include:

  1. Ability to create an order that is saved to a database table (i.e. from a drive-thru cashier terminal or register)
  2. Ability to view created orders via an overhead monitor that is viewable from the employee food assembly area:

Note: the order register in the above diagram would ideally be located at the pay window. However, to make this diagram easier to read, the order register was moved to avoid 'clutter' with the other objects.

How you display all data on-screen is at your discretion, however, please limit yourself to the console / shell interface for this challenge (so no need for desktop GUI's or web interface). Here are some sample implementations:

fast food v1 | fast food v2

Additional functionality may include:

You do not need to repeat coding skills by adding large menus of food (or other 'content fillers'). The award for your system will be based on functionality and user experience, not size.

Speed and responsiveness are critical success factors in fast food. Ensure any system you produce meets these criteria. Operation of your system must be swift.

Any further functionality you wish to include is fine provided relevance to the challenge is obvious. You are looking to 'show off' your level of coding proficiency.

However you approach this challenge, ensure that your coding is kept: