CyberFridge

[PDRQM;{1DE3828E-F0F1-4191-9C0B-E226E03A3421};REQ_0001]

Project Description of Target System

The CyberFridge project is to use Internet connectivity, vision and mechanical systems to create an intelligent and productive refrigerator.
Many of our daily tasks revolve around the refrigerator, and a CyberFridge would allow the automation of many of these routine tasks.  Our project is a specific subset of this area which will allow you to use a recipe system to determine what recipe you would like to fix, and let you know if the items to make it reside in your kitchen. Specifically known as C.A.R.A. ( Clifford Automated Recipe Agent) the recipe agent will primarily serve the purpose of electronically making a shopping list and telling to its user the items which are lacking for a certain recipe and those items which currently reside in the fridge. CARA will therefore cross index the current inventory of the fridge and a recipe database in order to suggest what meals to make and what ingredients are to be bought( i.e. our grocery list). The recipe database will essentially have recipes of specific types of dishes (ex. Chinese, Italian,  etc.) which the family living in the home would like to eat. The database will also record the more popular dishes selected previously, which are determined by the number of times a certain dish is  requested in relation to other dishes. Our database can also be updated to add new recipes at the user's discretion.

[/PDRQM]

[PDRQM;{39A198EC-B590-445E-8E77-F667B64491D0};REQ_0002]

Scenario Descriptions

Scenario 1: Ann has had a horrible day. On the way to work she got caught in traffic and her car overheated. That made her late for an important meeting with a new perspective client. This forced her to behind all day, and it seemed like she wouldn't have the time to complete some much needed shopping, or even plan a meal for that night. "Looks like it's KFC again..." she grumbled to herself. But wait! She had just purchased a new cyberfridge with the CARA program for just these types of situations. She logged into her kitchen over the web , and saw all her favorite recipes, and whether or not the items needed for these recipes were in her kitchen. Now she could prepare a shopping list and get the good food that would keep her healthy, instead of having to scarf down more of that yucky fast food. Thanks CARA, and cyberfridge!

Scenario 2: John, who is a member of a local charity organization, agreed to make five desserts for a fund raising event which was two days away. He knew there was no way he could pick the five desserts, figure out what ingredients he already had vs. those to buy, and cook them all. After talking with his friend, Jeff, they realized the option of using CARA, a recipe agent on Jeff's parents new cyberfridge. Utilizing CARA's inventory list of desserts, they picked out five good recipes. The recipe agent then listed the ingredients needed and those which they already had, and told them how long each would take to cook. They were able to work efficiently using the new recipe agent, CARA, on the cyberfridge to prepare all five desserts in time.

Scenario 3: Aunt Sue's sister was getting married and going to come by her home in North Carolina on the way to there honeymoon. Sue heard that Shervin, Sue's soon to be brother-in-law, was a vegetarian. Well, Sue wanted to fix something for them when they arrived because they would be tired and hungry, but she did not know any vegetarian meals or snacks to fix. Sue noticed that CARA, the recipe agent on her new cyberfridge, had categories of different types of food. After using CARA's user-friendly menu, she was able find a variety of vegetable plates. The recipe agent even listed the foods which needed to bought at the store, and directions for preparing the food.

[/PDRQM]

[PDRQM;{08616BD0-7992-47C1-80FA-ED13D8C7001E};REQ_0003]

Functional Requirements

Goto: Food Inventory, Recipe Database, Recipe Search, Remote Access  

[/PDRQM]

[PDRQM;{AD9FEBFD-7F8E-49E5-97E7-6AF80E3FF2A3};REQ_0004]

Food Inventory

CARA will keep track of what food items are currently in the kitchen, and will keep track of vital information about each item - how much is on hand, the expiration date, etc. In particular, CARA shall be able to perform the following actions:

[/PDRQM]

[PDRQM;{E583FC69-6FA4-4820-9D28-024A64D65039};REQ_0005]

User list

The CyberFridge shall give the user a list of all food items currently in its inventory. CARA shall order this list according to criteria set by the user. These criteria shall include, but will not be limited to: food categories, alphabetical list, and time remaining before the items should be removed from the inventory.

[/PDRQM]

[PDRQM;{89A7F310-1D2D-4C4E-AE20-1D4EE5E47823};REQ_0006]

Item requested from inventory

CARA shall return information about any item requested by the user. This information shall include, but will not be limited to: whether the item is currently on hand, the quantity remaining, and time remaining before the item should be removed from the inventory.

[/PDRQM]

[PDRQM;{5F2DA299-78D0-48ED-951C-3B19E2C56B17};REQ_0007]

Addition to Inventory

CARA shall track additions to the current inventory. This may be accomplished via a bar code scanner or by other means. Any food added to the kitchen stores shall be added to the inventory maintained by the CyberFridge.

[/PDRQM]

[PDRQM;{B8288C8F-024B-4607-9303-399B6C5C2474};REQ_0008]

Remove from inventory

CARA shall track removals from the current inventory. This may be accomplished via a bar code scanner or by other means. The quantity of food used or removed shall be tracked as well. Any quantity of food removed from the kitchen stores shall be removed from the inventory maintained by the CyberFridge.

[/PDRQM]

[PDRQM;{785AA777-705F-49AF-90E9-4A58F543B6C7};REQ_0009]

Recipe Database

CARA will keep a database of all recipes which the user wishes to use. In particular, the CyberFridge shall be able to perform the following actions:

[/PDRQM]

[PDRQM;{1B17BB68-5C21-4710-B6D4-CB92A568392B};REQ_0010]

Recipe viewer

CARA shall allow the user to view recipes by categories defined by the user.

[/PDRQM]

[PDRQM;{DA0B1A89-60F6-41FB-895D-E15160140CD4};REQ_0011]

Category management

CARA shall allow the user to create new categories or to modify existing categories. This shall include the ability to modify the list of recipes belonging to each category.

[/PDRQM]

[PDRQM;{917A87C4-E614-4239-9F42-B3C384718A96};REQ_0012]

New recipe

CARA shall allow the user to add new recipes to the database, and to place new recipes into existing categories.

[/PDRQM]

[PDRQM;{BE97DD49-A05E-470F-87BC-ADA8A5574782};REQ_0013]

Change recipe

CARA shall allow the user to modify or delete recipes from the database.

[/PDRQM]

[PDRQM;{B448E63A-E44A-4465-A068-3E60E30543C7};REQ_0014]

Dowload recipe

CARA shall allow the user to download recipes remotely from outside servers connected through the Internet.


[/PDRQM]

[PDRQM;{46B0D6D7-0B40-4AA7-99E2-3AC070722CBD};REQ_0015]

Recipe Search

CARA will use the recipe database to recommend recipes to the user and to recommend food items for the user to purchase. In particular, the CyberFridge shall be able to perform the following actions:

[/PDRQM]

[PDRQM;{6772B38F-89C5-43FA-ACE3-18124960566E};REQ_0016]

Possible recipe

CARA shall be able to give to the user a list of recipes which can be prepared using the food currently in inventory.

[/PDRQM]

[PDRQM;{7CBED216-798C-4722-9F79-BAED752F6AC3};REQ_0017]

Prepare purchase

CARA shall be able to give to the user a list of food items which need to be purchased in order to prepare a particular recipe or group of recipes.

[/PDRQM]

[PDRQM;{A499F8ED-3345-4BC8-A3E0-31D39E039F88};REQ_0018]

Frequently used recipes

CARA shall keep track of recipes which are frequently prepared by the user, in order that these recipes may be suggested to the user again at future times.


[/PDRQM]

[PDRQM;{5FECA4EE-E6FA-4B3F-BDE8-DBEBEEADE1E6};REQ_0019]

Suggestion

CARA shall give to the user a list of suggested recipes according to criteria set by the user. These criteria shall include, but will not be limited to: recipes for special occasions, recipes using or not using certain food items or groups of items, and recipes which utilize food which will otherwise need to be disposed of in the near future. In addition, these recipes shall be ordered according to criteria set by the user. These criteria shall include, but will not be limited to: favorite recipes, recipes which have not been used recently, or recipes ordered by preparation time.

[/PDRQM]

[PDRQM;{F56CCAAE-CEF4-4C92-9584-21F6E4AE4A1B};REQ_0020]

Remote Access

CARA will allow the user to access its abilities from outside of the kitchen through the use of the Internet. In particular, CARA shall be able to perform the following actions:

[/PDRQM]

[PDRQM;{55F48EE7-5B07-4E29-B134-178B1F0E00AE};REQ_0021]

Internet access

CARA shall allow the user to perform all recipe database actions and recipe search actions using an Internet-accessible interface. This interface will allow the user to access the capabilities of the CyberFridge through the World Wide Web.

[/PDRQM]

[PDRQM;{253BAD26-5E9E-4967-A07E-7C892B249D57};REQ_0022]

Non-Functional Requirements

[/PDRQM]

[PDRQM;{CEEE3932-5935-4629-AB02-02EEC9F23D28};REQ_0023]

  1. "User friendly" Interface

The interface should be intuitive and easy to understand so anyone can use it. To check this we will pick 3 management or other non-CS majors and have them attempt to find a specific recipe, "their favorite" recipe and to add a new recipe to the database.

[/PDRQM]

[PDRQM;{CE0835EF-0E34-4FC6-9987-F3DFB9235592};REQ_0024]

Speed

We will be building the system to run on Netscape 3.x running on P133 under Windows 95. Due to the nature of the web and Java, we will deem the system to have sufficient speed if it loads in under 2 minutes on Netscape 3.x on a T3 connection.

[/PDRQM]

[PDRQM;{7D71CCC1-C544-4FAE-BF11-946C5DA1DA3D};REQ_0025]

Starting Recipes

The system's database will come with 13 recipes divided into 3 categories which we will pick from cookbooks or off the web as needed.

[/PDRQM]

[PDRQM;{A3EF0F98-EA47-4BD9-8A18-F1F7EB5D9CC5};REQ_0026]

Development and Target Platforms

A TCP/IP connection to access the Internet needs to be present.

Since much of the project will be written in Java and since it it is platform-independent, the code developed on our platform should run on most any target platform without modification, but specifically it will be modeled to run on the Windows 95 platform and tested there.

There are two vehicle platforms that CARA will be developed on. It will be developed on Sun Sparcstations running Solaris equipped with the Java Development Kit 1.0 and the JDK for Windows 95.

A Pentium class windows 95 running netscape 2.xx or higher.

Hard-disk for minimal storage of operating system and Navigator

Any user of the CARA agent of CyberFridge must have a password to be allowed access to the recipe-agent system, for example.

[/PDRQM]

[PDRQM;{0588D2B1-45E4-497F-91D7-5A1E6DA5BE9E};REQ_0027]

Risk Analysis

Loss of Personnel  Due to the small size of our team, the loss of one of our members would be very detrimental. If the Architect dropped the course or became very ill, the project should still be able to function. However, it would result in some problems. To handle them, the Architect and all other group members will update the entire group on a weekly basis to ensure good continuity for completing the project in the alloted time by all remaining members. Good communication is therefore is essential. As a precautionary measure, each member in our group will learn other roles as well as the one to which he is designated with by actively participating throughout the entire software life cycle. This would considerably minimize the training overhead which would be incurred at any point in time when a replacement is necessary.

Applet/Internet Security Restrictions  Due to the security restrictions and concerns in Netscape, a client side refresh will have to be used to trigger any database accesses or display events.

Vehicle Platform Crash  In order to keep intact all completed versions, multiple copies of all necessary data and code are being saved. We are currently using the CoC machines to do most of our development for the CyberFridge. The vehicle machines have all the necessary tools to do the programming and is accessible to each member of the group. Losing access to these tools could make the software development process much slower. Further, other potential platforms don't make access as easy -- workstations are individualized, and ACME has ownership restrictions to get around.

Learning of the Programming Language/Environment  If the programmers and architects do not efficiently train in terms of time and effort to learn Java, the design and implementation of the CyberFridge may be delayed. If this occurs than the programmers have to overlap their training time with the actual construction of our design.




[/PDRQM]


Special thanks to Dr Gregory Abowd and his team who designed the CyberFridge project.

Jeffrey Corn (Manager)

Travis Works (Architect)

John Garrard (Programmer)

Kesniel Acton (Technical Writer)

Dinesh Krishna (Quality Assurance)


Copyright 2004

Georgia Tech Research Corporation

Atlanta, Georgia 30332-0415

All Rights Reserved


Wyszukiwarka

Podobne podstrony:
Fudge Cyberfudge
Między cyberfeministycznym imaginarium a emancypacją społeczną, Sznufek, multimedia
Fuzion Cyberfuzion Netrunner
APC CyberFort 400 550 700 Podręcznik użytkownika PL
Cyberfeminism with a difference