The Grocery Grabber
Problem: When it comes to grocery shopping, many people find it hard to keep track of the different prices of groceries at stores, and never seem to know if they are getting a good value. It can also be frustrating to attempt locating products in stores as they comprised of so many aisles. People end up wandering around and backtracking to get different items, as well as constantly asking different employees for item locations. Traditional aisle signs only help vaguely when looking for items, but some categories are misleading and specialized items such as foreign foods are much more difficult to find as they could be in various aisles.
Users: After considering our target audience, we found that users, the app developers smartphone designers, and grocery stores are all stakeholders. Our user personas are as follows:
Suzie Q
• Northeastern Student
• Junior Studying Criminal Justice
• Alice has a budget to shop from the money she makes working.
• Alice also has a lot of work in her classes this semester, so she has little time.
• She loves food.
Linda
• Mother
• 35 years old, stays at home
• Mom has to pick up the kids from school, take them to practice.
• She is a big coupon shopper.
• Her kids are picky about what they buy.
• She has a hard time keeping track of her papers, so she loses her shopping list.
Fred
• Dad
• 40 years old, works
• Wants to get in and get out of the store
• Wants to go to the most convenient store
• Needs a list from his wife
• Doesn’t know what fruit actually looks like
Jess - Event Planner
• 45, female
• Needs the cheapest prices for her business
• Wants to save as much money as possible for her client
• Needs to be able to share her ideas easily
Steve
• 50 year old
• Is a big business CEO
• Single, so he only shops for himself
• Likes to not have to go far to shop
• Buys whatever he actually wants
Task Scenarios:
Rating System
Suzie Q is a Northeastern Junior who has a tight budget when it comes to her groceries, but she also has a weakness for delicious food...
She has been very responsible by staying under budget, but she often finds that the cheapest items and generic brands sometimes taste horrible. As she has a little more money than she currently spent on all her lowest priced groceries, she wondered if items that were slightly more expensive would taste significantly better and began to purchase them.
After trying various foods at different price levels that still let her remain within her budget, Suzie noticed that there was no direct correlation between price and food when it came to brands that were less popular. Suzie then considers that it would be great if she could utilize a mobile application that would allow her to see these items rated by fellow shoppers to achieve the best quality for the price.
Add/Delete
Linda is a 35 year old homemaker. Every Thursday she has to take her kids to soccer practice, and she likes to do her errands before coming back to pick them up. There is a grocery store right near the soccer field but it doesn’t always have good prices. She doesn’t have much time, and is on a budget. So she uses her Grocery Grabber app to tell her what things to buy there, and what things to buy at another store she frequents.
Grocery Grabber also helps her keep track of her grocery list. When she runs out of something at home, she just scans the barcode and it gets added to her list. Then at the store, Grocery Grabber tells her which items on her list have good prices. Sometimes she knows she wants a fruit or vegetable, but doesn’t have an example with a PLU in front of her. In that case she can search for it in the database Grocery Grabber keeps, and add it to her shopping list.
While she is shopping she she check items off her list, and they get transferred to a past items list so they can be easily transferred back to her shopping list.
Finding Items and Routes
Linda is a stay at home mom who is constantly on the move and does not have a lot of time to spare. Not only is she concerned with getting the best deals on her groceries, but she also wants to make her actual shopping trip as quick as possible.
She often goes to different supermarkets depending on where she is at the time because she is often running all over town. She often mixes up the organization of the stores and spends more time looking for specific items than she needs to.
Linda wishes there were a better way for her to just know where items should be in the store, so she does not have to waste time going up and down the aisles of the store looking for one thing.
Sharing Shopping Lists / Pictures
Fred is Linda’s husband. He works long hours and is usually pretty tired by the end of the day. He just wants to get home to put his feet up and relax but sometimes, his wife needs him to pick up extra food at the store for dinner.
Fred does not pay a lot of attention to different fruits and vegetables because they are not really his favorite food groups. So when Linda tells him to get kale and spinach and raspberries at the store, he needs a visual aid in order to know exactly what he is looking for.
Linda often texts him pictures of the fruits and vegetables that she is looking for, but finding the pictures is tedious and they both wish there were an easier way.
Finding the Cheapest Prices
Jess the Event Planner's job rests on her capability to quickly and cheaply coordinate basic catering tasks; whether this means buying food herself or providing lists to workers or clients, she has to be able to easily locate the lowest prices on food and supplies, among both competing stores and brands.
She wants to be able to make a list of the things she needs and have it be automatically sorted into sublists for a set of local stores, where each item on a sublist is the cheapest at the store it's been sorted to. Most items can be of any brand, but sometimes she'll have to specify a particular one. She also wants to be able to look at the total amount she'd have to spend if the list were split that way, and compare it to amounts from splitting it between more or less stores; if she can save $50 by including one more store, she'll add it in, and the opposite holds if she'd only lose $2 by dropping another store.
Finding Local Stores and their Information
Steve the CEO has just shifted his company's headquarters to a new city to take advantage of state tax loopholes. He doesn't know his way around town yet, but also doesn't want to keep living on take-out dinners.
He wants to be able to quickly view and compare grocery stores near his new home, based on both their distance and their average prices; he's more interested in convenience than savings, but would still like to know if he's being ripped off. He'd also like to see the hours of operation for each store so he can plan his shopping accordingly.
Task Descriptions:
Rating System
A user wants to check the rating system comparing groceries of the same item type. The Grocery grabber application must be installed on the user's phone, and the user must then enter the item into the search bar, or click on the item from the grocery list. After pressing the search button or clicking on the grocery list item, the various brands available will be displayed along with their ratings. Additionally, the user may give their own rating on an item by selecting a number of stars from the same menu. As a limitation, the user may only give one review per item, and must have a user ID to be able to contribute to ratings.
Add/Delete
Goal: add (and delete) items from a shopping list
Preconditions: have grocery grabber, and know what she wants to add(delete) an item from it
Subtasks:
add:
open grocery grabber,
find(or enter) specific item,
add to (remove from) specific list,
save changes
remove:
open grocery grabber
find list with item in it
remove item
save changes
Exceptions: The user can’t find the item they want to add or remove
The user accidently add or removes the wrong item, and needs to undo it
The bar code scanner can’t read the barcode
This task should be easy and fast since it will be done often. It should be doable with one hand while the other hand is holding items. There probably should be multiple lists for different kinds of groceries, or for different contexts (personal vs for events).
Finding Items and Routes
The goal of this task of finding specific items within a store and mapping out the best route to take in that store in order to minimize the time spent shopping. A sub-task / precondition for this task is making the shopping list itself. The user must add his/her items to the list first because without that there is no way to determine which route to take through the store. Then, the app would use an algorithm to determine the quickest route to take through the store in order to spend the least a mount of time walking around, and it will indicate where on the route each item can be found. It could also rely on GPS to provide a turn-by-turn direction experience. This feature would require individual supermarkets to supply their floor plans and how everything is laid out in their specific locations. This additionally means that any stores they change their layout, the data in the app would need to be updated. Otherwise, it may be incorrect.
Sharing Shopping Lists / Pictures
The goal of this task would be to have a sharing option so that multiple people can access the same shopping list, as well as include pictures of the items that they are shopping for. A precondition (or sub-task), again, is making the shopping list to begin with. Then, the list could be shared to one person or to many other people. The sharing feature would also automatically include a photo of each item, which the user could then choose to turn off if they do not need it. This would allow easy communication between families. There would also be a feature that would allow a user to check off when they have purchased something and it would alert the other people who have access to that list. There could potentially be inconsistent data if one person checks off an item and it does not sync properly.
Finding the Cheapest Prices
Provided with a list of grocery items and local stores, divide up the items among stores so as to minimize the overall cost (find the cheapest price for each item).
Preconditions: The user must first build a shopping list and provide a location (automatically via GPS/Network positioning or via manual entry).
Sub-tasks: Select the shopping list to divide. Select the stores among which you want to split the list, or a radius within which to select all stores. Include/remove stores based on how their inclusion/removal affects total cost.
Finalize/save the divided lists.
Exceptions: If an item on the list is not available at the selected stores, the user should be notified before being shown the list breakdown, and that item should be sorted to a 'Other Store' list.
This task will be performed often, especially by college students and families with tight budgets. As such, it should be kept as streamlined as possible; using saved lists and store selections should make the price sorting quick and painless. An option could be included to perform a 'quick edit' on a saved list, removing anything you don't need more of or adding a one-off item or two.
Finding Local Stores and their Information
Given a location, provide map and list views of nearby grocery stores, as well as their hours and price levels (in comparison to other stores).
Preconditions: The phone should have a source of location data (GPS, network, WiFi, etc.). If it does not, prompt the user to enable one of the sources or enter their address manually.
Sub-tasks: Set the radius within which you're searching for stores (default to 5 miles). Switch between the map and list views. Sort the list view by distance or by store name. Select a store to see detailed information about it.
Exceptions: If there are no stores within the selected (or default) radius, inform the user and prompt them to change it rather than displaying an empty list/map.
This task is mainly useful for users new to an area, or who wish to know more about their shopping options. It will not be used as often as the list/pricing/mapping sections of the app. When looking at a store's detail page, users can get directions to that store if they wish.
Team Roles and Tasks:
Carly will generally be interested in holding the role of designer.
Jonathan will be the software engineer.
Liam will also be a software engineer and/or a test engineer.
Arash will be business analyst/project manager as well contributing to Testing.
Matt will contribute heavily to identifying and implementing the design process.
We decided upon these roles through reviewing our strengths and experience at past Co-Ops, and believe that this division of roles and strengths will help us be successful.
For this project:
Carly, Jonathan, Liam, and Arash contributed to defining the Task Scenarios and Descriptions, while Matt created the Roles for all the personas. The rest we did collectively.
Problem: When it comes to grocery shopping, many people find it hard to keep track of the different prices of groceries at stores, and never seem to know if they are getting a good value. It can also be frustrating to attempt locating products in stores as they comprised of so many aisles. People end up wandering around and backtracking to get different items, as well as constantly asking different employees for item locations. Traditional aisle signs only help vaguely when looking for items, but some categories are misleading and specialized items such as foreign foods are much more difficult to find as they could be in various aisles.
Users: After considering our target audience, we found that users, the app developers smartphone designers, and grocery stores are all stakeholders. Our user personas are as follows:
Suzie Q
• Northeastern Student
• Junior Studying Criminal Justice
• Alice has a budget to shop from the money she makes working.
• Alice also has a lot of work in her classes this semester, so she has little time.
• She loves food.
Linda
• Mother
• 35 years old, stays at home
• Mom has to pick up the kids from school, take them to practice.
• She is a big coupon shopper.
• Her kids are picky about what they buy.
• She has a hard time keeping track of her papers, so she loses her shopping list.
Fred
• Dad
• 40 years old, works
• Wants to get in and get out of the store
• Wants to go to the most convenient store
• Needs a list from his wife
• Doesn’t know what fruit actually looks like
Jess - Event Planner
• 45, female
• Needs the cheapest prices for her business
• Wants to save as much money as possible for her client
• Needs to be able to share her ideas easily
Steve
• 50 year old
• Is a big business CEO
• Single, so he only shops for himself
• Likes to not have to go far to shop
• Buys whatever he actually wants
Task Scenarios:
Rating System
Suzie Q is a Northeastern Junior who has a tight budget when it comes to her groceries, but she also has a weakness for delicious food...
She has been very responsible by staying under budget, but she often finds that the cheapest items and generic brands sometimes taste horrible. As she has a little more money than she currently spent on all her lowest priced groceries, she wondered if items that were slightly more expensive would taste significantly better and began to purchase them.
After trying various foods at different price levels that still let her remain within her budget, Suzie noticed that there was no direct correlation between price and food when it came to brands that were less popular. Suzie then considers that it would be great if she could utilize a mobile application that would allow her to see these items rated by fellow shoppers to achieve the best quality for the price.
Add/Delete
Linda is a 35 year old homemaker. Every Thursday she has to take her kids to soccer practice, and she likes to do her errands before coming back to pick them up. There is a grocery store right near the soccer field but it doesn’t always have good prices. She doesn’t have much time, and is on a budget. So she uses her Grocery Grabber app to tell her what things to buy there, and what things to buy at another store she frequents.
Grocery Grabber also helps her keep track of her grocery list. When she runs out of something at home, she just scans the barcode and it gets added to her list. Then at the store, Grocery Grabber tells her which items on her list have good prices. Sometimes she knows she wants a fruit or vegetable, but doesn’t have an example with a PLU in front of her. In that case she can search for it in the database Grocery Grabber keeps, and add it to her shopping list.
While she is shopping she she check items off her list, and they get transferred to a past items list so they can be easily transferred back to her shopping list.
Finding Items and Routes
Linda is a stay at home mom who is constantly on the move and does not have a lot of time to spare. Not only is she concerned with getting the best deals on her groceries, but she also wants to make her actual shopping trip as quick as possible.
She often goes to different supermarkets depending on where she is at the time because she is often running all over town. She often mixes up the organization of the stores and spends more time looking for specific items than she needs to.
Linda wishes there were a better way for her to just know where items should be in the store, so she does not have to waste time going up and down the aisles of the store looking for one thing.
Sharing Shopping Lists / Pictures
Fred is Linda’s husband. He works long hours and is usually pretty tired by the end of the day. He just wants to get home to put his feet up and relax but sometimes, his wife needs him to pick up extra food at the store for dinner.
Fred does not pay a lot of attention to different fruits and vegetables because they are not really his favorite food groups. So when Linda tells him to get kale and spinach and raspberries at the store, he needs a visual aid in order to know exactly what he is looking for.
Linda often texts him pictures of the fruits and vegetables that she is looking for, but finding the pictures is tedious and they both wish there were an easier way.
Finding the Cheapest Prices
Jess the Event Planner's job rests on her capability to quickly and cheaply coordinate basic catering tasks; whether this means buying food herself or providing lists to workers or clients, she has to be able to easily locate the lowest prices on food and supplies, among both competing stores and brands.
She wants to be able to make a list of the things she needs and have it be automatically sorted into sublists for a set of local stores, where each item on a sublist is the cheapest at the store it's been sorted to. Most items can be of any brand, but sometimes she'll have to specify a particular one. She also wants to be able to look at the total amount she'd have to spend if the list were split that way, and compare it to amounts from splitting it between more or less stores; if she can save $50 by including one more store, she'll add it in, and the opposite holds if she'd only lose $2 by dropping another store.
Finding Local Stores and their Information
Steve the CEO has just shifted his company's headquarters to a new city to take advantage of state tax loopholes. He doesn't know his way around town yet, but also doesn't want to keep living on take-out dinners.
He wants to be able to quickly view and compare grocery stores near his new home, based on both their distance and their average prices; he's more interested in convenience than savings, but would still like to know if he's being ripped off. He'd also like to see the hours of operation for each store so he can plan his shopping accordingly.
Task Descriptions:
Rating System
A user wants to check the rating system comparing groceries of the same item type. The Grocery grabber application must be installed on the user's phone, and the user must then enter the item into the search bar, or click on the item from the grocery list. After pressing the search button or clicking on the grocery list item, the various brands available will be displayed along with their ratings. Additionally, the user may give their own rating on an item by selecting a number of stars from the same menu. As a limitation, the user may only give one review per item, and must have a user ID to be able to contribute to ratings.
Add/Delete
Goal: add (and delete) items from a shopping list
Preconditions: have grocery grabber, and know what she wants to add(delete) an item from it
Subtasks:
add:
open grocery grabber,
find(or enter) specific item,
add to (remove from) specific list,
save changes
remove:
open grocery grabber
find list with item in it
remove item
save changes
Exceptions: The user can’t find the item they want to add or remove
The user accidently add or removes the wrong item, and needs to undo it
The bar code scanner can’t read the barcode
This task should be easy and fast since it will be done often. It should be doable with one hand while the other hand is holding items. There probably should be multiple lists for different kinds of groceries, or for different contexts (personal vs for events).
Finding Items and Routes
The goal of this task of finding specific items within a store and mapping out the best route to take in that store in order to minimize the time spent shopping. A sub-task / precondition for this task is making the shopping list itself. The user must add his/her items to the list first because without that there is no way to determine which route to take through the store. Then, the app would use an algorithm to determine the quickest route to take through the store in order to spend the least a mount of time walking around, and it will indicate where on the route each item can be found. It could also rely on GPS to provide a turn-by-turn direction experience. This feature would require individual supermarkets to supply their floor plans and how everything is laid out in their specific locations. This additionally means that any stores they change their layout, the data in the app would need to be updated. Otherwise, it may be incorrect.
Sharing Shopping Lists / Pictures
The goal of this task would be to have a sharing option so that multiple people can access the same shopping list, as well as include pictures of the items that they are shopping for. A precondition (or sub-task), again, is making the shopping list to begin with. Then, the list could be shared to one person or to many other people. The sharing feature would also automatically include a photo of each item, which the user could then choose to turn off if they do not need it. This would allow easy communication between families. There would also be a feature that would allow a user to check off when they have purchased something and it would alert the other people who have access to that list. There could potentially be inconsistent data if one person checks off an item and it does not sync properly.
Finding the Cheapest Prices
Provided with a list of grocery items and local stores, divide up the items among stores so as to minimize the overall cost (find the cheapest price for each item).
Preconditions: The user must first build a shopping list and provide a location (automatically via GPS/Network positioning or via manual entry).
Sub-tasks: Select the shopping list to divide. Select the stores among which you want to split the list, or a radius within which to select all stores. Include/remove stores based on how their inclusion/removal affects total cost.
Finalize/save the divided lists.
Exceptions: If an item on the list is not available at the selected stores, the user should be notified before being shown the list breakdown, and that item should be sorted to a 'Other Store' list.
This task will be performed often, especially by college students and families with tight budgets. As such, it should be kept as streamlined as possible; using saved lists and store selections should make the price sorting quick and painless. An option could be included to perform a 'quick edit' on a saved list, removing anything you don't need more of or adding a one-off item or two.
Finding Local Stores and their Information
Given a location, provide map and list views of nearby grocery stores, as well as their hours and price levels (in comparison to other stores).
Preconditions: The phone should have a source of location data (GPS, network, WiFi, etc.). If it does not, prompt the user to enable one of the sources or enter their address manually.
Sub-tasks: Set the radius within which you're searching for stores (default to 5 miles). Switch between the map and list views. Sort the list view by distance or by store name. Select a store to see detailed information about it.
Exceptions: If there are no stores within the selected (or default) radius, inform the user and prompt them to change it rather than displaying an empty list/map.
This task is mainly useful for users new to an area, or who wish to know more about their shopping options. It will not be used as often as the list/pricing/mapping sections of the app. When looking at a store's detail page, users can get directions to that store if they wish.
Team Roles and Tasks:
Carly will generally be interested in holding the role of designer.
Jonathan will be the software engineer.
Liam will also be a software engineer and/or a test engineer.
Arash will be business analyst/project manager as well contributing to Testing.
Matt will contribute heavily to identifying and implementing the design process.
We decided upon these roles through reviewing our strengths and experience at past Co-Ops, and believe that this division of roles and strengths will help us be successful.
For this project:
Carly, Jonathan, Liam, and Arash contributed to defining the Task Scenarios and Descriptions, while Matt created the Roles for all the personas. The rest we did collectively.