======================
USER DOCUMENTATION
======================
	
DESCRIPTION
Cooking Special is a web-based recipe and ingredient database accessible 
to the general public. It seeks to provide the user with a single portal 
to access a suite of user-provided low-budget recipes as well as a 
method by which the user can cross-reference the ingredients of those 
recipes with the websites of well-known food suppliers, allowing the 
user to acquire those ingredients as cheaply as possible. Moreover, it 
allows the user to search for price data on specific ingredients and 
then to reference recipes that have those ingredients, allowing the user 
to utilize the items he or she may already own. 



WHAT IS UNIQUE ABOUT COOKING SPECIAL?
Thus this product eliminates a question encountered by shoppers 
everywhere: "If I buy this, will I use it?" Food is no good if it won't 
be used. Most frequently a customer discovers that a given item is on 
sale by seeing it on the shelf, and thus doesn't have the ability to 
look up recipes containing the item. The customer thus runs the risk of 
purchasing something that will not be used. However if they had used 
Cooking Special to search for recipes before going out shopping, the 
user would have known (1) what they wanted to make, and (2) where to get 
it at a good price. This eliminates the problem of buying potentially 
low-performing foods. 

 

MOTIVATION FOR USE
As with most applications of technology there are less efficient means 
to the same end. A customer could go through the sales sheet of each of 
his or her favorite stores and look for good deals, then look up recipes 
in his or her own cookbooks that use those ingredients. However, this 
process is tedious and error prone. A user is limited to his or her own 
cookbooks and must attempt to remember which books have which recipes. 
Moreover, a user has to also check the prices of each of the other 
ingredients of a recipe in order to determine whether the entire recipe 
can be made cheaply. This is in itself another search through the sales 
sheets. This entire ordeal wastes the user's time. 



OBTAINING THE SOFTWARE
The sotware can be accessed from our website at: 
http://cubist.cs.washington.edu/projects/09sp/cse403/cookingspecial/

The page should contain links for 
- accessing it from our web server 
- installing it on your own computer 

The latter part is complicated and requires technical understanding. For 
more information on this, try downloading the latest stable release, 
untarr-ing (unzipping, using 7-zip or other favorite zip utility) and 
following the README.txt in it. 


RUNNING THE SOFWARE
Since this is a web based software, running it is the same as opening 
your favorite web browser and pointing it to the website at: 

http://cubist.cs.washington.edu/projects/09sp/cse403/cookingspecial
and then clicking on the "Latest Stable" link.


HIGHER LEVEL DESCRIPTION OF THE SOFTWARE:

Using our software a user will be able to:
- search for a food or term in the recipe database, and be able to see 
results that match that query. This result page will list the recipe 
name and ingredients. Each ingredient in each recipe will have a link 
which is equivalent to a corresponding sale query (see below) 
- search for an ingredient or term in the sale database, which will 
return a list of all ingredients which match that query. Each entry will 
have any sales information found in the database, as well as a link to 
search for that ingredient in the recipe database.  
- log in and create a saved profile (see other features) 
- keep a list of commonly used foods which has equivalent links to a 
recipe, allowing the user to easily search for commonly used foods. This 
page also includes a 'search all' function, which searches for deals on 
every item in the list. 



The website itself two main methods for finding food specials: 
-  Finding recipe(s) based on a query. 
-  Looking at the results of a recipe search, and browsing information on 
the specials associated with each of the recipes' ingredients. 
-  Searching the Specials database directly for a desired food or ingredient. 
The User should do to carry out their desired task in our website. For instance: 
# User should expect the recipe search box be accompanied by a label 
such as: 'Search for Recipe by Name or Ingredient'. 
# User should expect each recipe result be accompanied by an arrow and 
the text: '4 Specials for this recipe', which can be clicked in order to 
see more information on specials. Thus, it will be clear to the user how 
to get information on Specials for each recipe. 
# User should expect the the specials search box be accompanied by a 
label such as: 'Search for Specials by Food/Ingredient'.
# User should expect each specials result to contain information on how 
to take advantage of the special, and the information will be complete 
enough to be self-explanatory. 
# On the home page, user should expect a 'Get Started' section which 
indicates that the user can search for specials, or search for recipes. 
In other words, it must be visually clear that the user should initially 
progress through the site flow by searching for specials or recipes 
using a textual query. 

Additionally, the section below will provide you guidelines into using
our website. The goal is to includes a walk-through of a sample usage 
of the site, including searching for deals on the ingredients of a 
given recipe. 


USING OUR WEBSITE
To search for a recipe:
1. Please navigate to the website home page.
2. Then types in a recipe name or ingredient (i.e. 'query') into 
the recipe search box and press enter or click on submit next to 
the recipe search box.
3. You will be presented with a list of recipes which match the 
query.
4. Clicking on any single result expands information on the recipe 
directions, ingredients, and associated specials.

To search for a special:
1. Please navigate to the website home page.
2. Then type in an ingredient name (i.e. 'query') into the specials 
text box and zip code (in the zipcode text box), and press enter or 
click on submit next to the special search box.
3. You will be presented with a list of all specials that match the
 query.
4. Clicking on any single result expands information on recipes that 
include the ingredient mentioned in the special.

To Login to the website:
1. Please navigate to the website home page.
2. Please type your username and password in the respective boxes on 
the right hand pange and press enter. 
3. You will be presented with a welcome as well as saved food list, 
favorite recipe list, and favorite specials list.

To add special or a recipe to favorite's list:
1. Please follow the above instructions to search for a recipe or 
an ingredient.
2. Also make sure you are logged in to the website.
3. Make sure that recipe/special to be added is expanded
4. Click on "Add to Favorites" at the end of the recipe/special 
information to add it to the favorites.
5. The favorites are not updated until the user refreshes the page. 


REPORTING A BUG

If you come across a bug while using the CookingSpecial website, please 
submit an anonymous bug report at our bug tracking website. This can be 
found at the following url: 

http://cubist.cs.washington.edu/projects/09sp/cse403/cookingspecial/bug/index.php?do=newtask&project=3

Also please make sure that the bug is not a duplicate by checking or 
searching bugs under All projects.

Your bug will not be visible to other users; just to the CookingSpecial 
developers. When reporting a bug, please give us the following 
information: 

Enter a short (60 characters please) sentence that describes the bug in 
the Summary box. 

In the Details box, enter the following information: 

- In the "Assigned To" column, please choose JP (jps88). 
- Please choose the options in the drop down boxes to the fullest of 
your knowledge 
- If your bug is just a general comment or complaint, write it as simply 
and clearly as possible and ignore the rest of the points. Otherwise, 
read on. 
- The URL of the web page where the bug occurred. 
- What happened that you consider the result to be in error. 
- Starting from the web site home page, the mouse clicks and other 
information needed in order to reproduce the bug. Include instructions 
that anyone could follow. 
- What did you expect the outcome to be (if possible)? 

Moreover, you can file in a request for a new feature (if that's the 
case) using the same system mentioned in the bug filing section. However, 
this time please select the "Task Type" to be "Feature" (instead of the 
default "Bug Report". 

For more in-depth information on our bug tracking system, please refer 
to docs/dev/Bug Tracking.doc