Kitchen Helper

You are asked to design a PC-based application called Kitchen Helper that will replace the index card system of recipes found in the average kitchen. You have a license agreement with SQLPlus, a database company, to bundle their database software with your product.

The Kitchen Helper comes with a database of recipes. Each recipe is of the following format:

But the Kitchen Helper is more than a database of recipes. The user can add recipes in the standard format. The user can delete recipes from the database. The user can search for recipes by name or type.

The user can sit down at a terminal, browse the database of recipes, and interactively create a series of menus for a single meal or for an extended period of time, say a week. A menu is a list of dishes (or recipes) for a meal. The user can store a menu for future use or select from a list of previously generated menus that have been stored. Menus are identified by a name.

The Kitchen Helper will automatically scale the recipes to any number of servings and will print out menus for the entire week, for a particular day, or for a particular meal. And it will print an integrated grocery list of all the the ingredients needed for the recipes for the entire period.

Use Case Analysis

You are required to do a use-case analysis of the system requirements that are presented to you in the above description. You will need to:

Sequence Diagram

For the use cases Create Menu and Print Grocery List identify the boundary, control, and entity class(es). Draw a sequence diagram that shows the sequence of steps in time from the moment the user starts the Kitchen Helper application to the printing of the Grocery List.