-
Notifications
You must be signed in to change notification settings - Fork 1
Requirements
This project aims to serve people to learn more about what they eat in terms of micro and macro nutrients.
The main purpose of this application is presenting foods with exclusive information about the ingredients considering personal preferences and reliability standards with a wide interconnection availability between consumer and provider sides with all its openness to social media. This application will enable food servers to create a profile and description of the food they serve as well as individual users being able to create a profile and interact with the servers and the other users by all means. The nutritional properties for the food served will be determined from nutritional information given recipes. There will be basically two types of users: regular users and visitors. Visitors have access only to explore the website whereas regular users (including servers and institutionals) have also access to follow other users, comment and tag on foods and servers, post media or any other information in their comments, advanced search and filter etc. There will be also user-specific profiles that contains preferences, daily consumptions, history of previous meals and so on..
Registered User: Is a person who has an account with privileges such as searching/filtering based on some criterias and is able to comment/tag/share/post his opinions and follow other profiles.
Visitor: Is a person who uses the website to explore restaurants and foods.
Server: Restaurants, cafeterias, canteens.
Comment: Allows both the user and the server to interact with each other.
Rating: Restaurants are rated by their speed, hygiene, taste and service quality.
Notification: User is notified when a restaurant he follows has a special offer or a new restaurant of his preference is open nearby. Servers are also notified by emails about positive and negative feedbacks the users give.
Image: Servers include images for food descriptions and users are able to post images in comments.
User Profile: Each registered user has a user profile that contains personal preferences, history of orders, favourite foods.
Stats: Servers take scheduled statistical reports of how many times of clicking, commenting, sharing occurred.
Popularity: Based on periodically consumption of foods.
Semantic Tag: Used for grouping restaurants and foods on different factors. (i.e. For restaurants, cuisine,diet information. For foods, allergen, diet, organic information.)
Filter: Could be either on restaurants or foods. Restauants could be filtered by location and labels. Foods could be filtered by ingredients, cuisine type, regimes, organic or allergenic types.
Sorting: Restaurants on alphabetical ordering, popularity and ratings, foods on total calorie amount and which cuisine they belong to.
Payment: Payment options such as credit/debit card, cash, ticket..
Working hours: When the restaurants are open.
Micronutrients: Nutrients that humans consume in small quantities throughout life such as vitamins.
Macronutrients: Chemical elements that humans consume in the largest quantities. Three primary macronutrients are carbohydrate, fat and protein.
Restaurant Profile: Restaurants have their own profile including a section at the top of food list which contains quantitatively most consumed foods, contact info, location, ratings.
Recommendations: Main page of registered users include a section which provides recommendations based on their consumption history
History: Keeps track of what the user has ordered, what he searched for,what he has consumed.
Location: Restaurants have detailed location information on their public pages.
Menu: Restaurants have to provide their menus on their profiles.
Privacy: Personal information is visible to users who follow each other.
Label: Restaurants and foods are labeled such that if a restaurant is open it has an open label and if some food is organic it has organic label.
Favourites: User profile has this favourite food/place section which he can share with others.
Sharing: In accordance with other social networks such as Facebook, Twitter, Instagram.
-
1.1. Unregistered Users
- 1.1.1. Visitors shall be able to register to the website through mobile app or website.
- 1.1.1.1. Visitors shall be able to register either as a user or a Server.
- 1.1.1.2. Visitor shall provide a valid email for their registration.
- 1.1.2. Visitors shall be able to search for foods, registered users, servers.
- 1.1.2.1. Visitors shall be able to use semantic tags in their search.
- 1.1.3. Visitors shall be able to search using semantic tags and filtering.
- 1.1.1. Visitors shall be able to register to the website through mobile app or website.
-
1.2. Registered Users
-
1.2.1. Users
- 1.2.1.1. Search
- 1.2.1.1.1 Search shall include filtering option for diet preferences.
- 1.2.1.1.2 Search shall include filtering option for campus delivery.
- 1.2.1.1.3 Search shall include filtering option for servers which deliver to location of the user.
- 1.2.1.1.4 Search shall include filtering option for cuisine types.
- 1.2.1.1.5 Search shall include filtering option for allergenic ingredients.
- 1.2.1.1.6 Search shall include sorting option according to restaurant ratings.
- 1.2.1.1.7 Search shall include sorting option according to alphabetical order.
- 1.2.1.1.8 Search shall include filtering option for payment options.
- 1.2.1.1.9 Search shall include filtering option for working hours.
- 1.2.1.2 Social Interaction
- 1.2.1.2.1 Users shall be able to rate on restaurants about tasted foods.
- 1.2.1.2.1.1. Food taste shall be included into the rating system.
- 1.2.1.2.1.2. Restaurant hygiene shall be included into the rating system.
- 1.2.1.2.1.3. Service quality shall be included into the rating system.
- 1.2.1.2.1.4. Service speed shall be included into the rating system.
- 1.2.1.2.1.5. Atmosphere of the restaurant shall be included into the rating system.
- 1.2.1.2.2 Users shall be able to share certain content to social media.
- 1.2.1.2.2.1. User shall be able to share her profile.
- 1.2.1.2.2.2. User shall be able to share the restaurant page.
- 1.2.1.2.2.3. User shall be able to share the food page.
- 1.2.1.2.2.4. User shall be able to share her comments.
- 1.2.1.2.2.5. User shall be able to share her lists.
- 1.2.1.2.3. Users shall be able to upload images to their comments.
- 1.2.1.2.3.1. Image size shall be less than 3 MB.
- 1.2.1.2.3.2. Image format shall be JPG or PNG.
- 1.2.1.2.4. Registered users shall be able to follow other users and restaurants.
- 1.2.1.2.5. Users shall be able to get notification about newly opened restaurants.
- 1.2.1.2.1 Users shall be able to rate on restaurants about tasted foods.
- 1.2.1.3. Profile
- 1.2.1.3.1. Profile of a user shall include a section about her daily calorie consumption.
- 1.2.1.3.1.1 Calorie consumption shall be calculated through the macronutrients of the consumed foods.
- 1.2.1.3.2 Main page of registered users shall include a section which provides recommendations based on their consumption history.
- 1.2.1.3.3. Profile page of signed in users shall have a section for history.
- 1.2.1.3.4 The history section shall contain consumption history as a subsection.
- 1.2.1.3.5 The history section shall contain comment history as a subsection.
- 1.2.1.3.6 The history section shall contain rating history as a subsection.
- 1.2.1.3.7. Users shall be able to add foods to their “Favorite List”.
- 1.2.1.3.8. Users shall be able to create new lists.
- 1.2.1.3.8.1. The list shall either consists of foods or restaurants.
- 1.2.1.3.9. Users shall be able to save searching criteria.
- 1.2.1.3.9.1. The saved criterion shall be reached through a button on search page.
- 1.2.1.3.10. The last search criterion shall be kept for the next.
- 1.2.1.3.1. Profile of a user shall include a section about her daily calorie consumption.
- 1.2.1.4. Privacy
- 1.2.1.4.1. History page of user profiles shall be visible only to followers whom the user give her permission to.
- 1.2.1.1. Search
-
1.2.2. Servers
- 1.2.2.1 Comments made on servers and foods shall have a rating functionality for positive or negative feedback.
- 1.2.2.1.1 Comments section shall be sorted according to difference between positive and negative feedbacks.
- 1.2.2.2 Servers shall be notified periodically about user feedback on their ***
- 1.2.2.3 Servers shall be able to reply on comments on their restaurant and meals.
- 1.2.2.4. Analysis reports shall be sent to servers periodically.
- 1.2.2.4.1 The period shall be weekly, biweekly, or monthly.
- 1.2.2.4.2 The report shall include popularity information about the foods.
- 1.2.2.4.2.1 Popularity information shall be based on periodical consumption of foods.
- 1.2.2.4.2.2 Information about the consumption of the food shall be calculated from the “Tasted it!” button on the food page.
- 1.2.2.4.3 The report shall include comment statistics about the foods and the restaurant.
- 1.2.2.4.3.1 Comment statistics shall be based on the number of agree/disagree ratios of the comments.
- 1.2.2.5. Servers shall be able to add semantic tags.
- 1.2.2.5.1 Servers shall add semantic tags for the restaurant.
- 1.2.2.5.1.1 Semantic tags on restaurants shall have cuisine information.
- 1.2.2.5.1.2 Semantic tags on restaurants shall have diet information.
- 1.2.2.5.2 Servers shall add semantic tags for the food.
- 1.2.2.5.2.1 Semantic tags for the food shall have allergen information.
- 1.2.2.5.2.2 Semantic tags for the food shall have diet information.
- 1.2.2.5.2.3 Semantic tags for the food shall have information about whether the food is organic.
- 1.2.2.5.1 Servers shall add semantic tags for the restaurant.
- 1.2.2.6 Servers shall include a image to their food descriptions.
- 1.2.2.6.1 Image size shall be less than 3 MB.
- 1.2.2.6.2 Image format shall be JPG or PNG.
- 1.2.2.7. Restaurant profile shall include a section at the top of food list which contains quantitatively most consumed 5 foods.
- 1.2.2.8 Restaurant page shall include location information.
- 1.2.2.9. Restaurant page shall include information about working hours.
- 1.2.2.10. Restaurant page shall include average service time.
- 1.2.2.11. Restaurant page shall include comments section.
- 1.2.2.12. Restaurant page shall include list of foods.
- 1.2.2.13 Food page shall contain a button labeled as “Tasted it!”.
- 1.2.2.13.1. Food description shall include micronutrients.
- 1.2.2.13.2. Food description shall include macronutrients.
- 1.2.2.14. Restaurant pages shall include a map information which can be interacted with through clicking, i.e Google Maps.
- 1.2.2.1 Comments made on servers and foods shall have a rating functionality for positive or negative feedback.
-
-
2.1. Functional Requirements
- 2.1.1 The system shall allow a user to examine the history of his/her consumption.
- 2.1.2 The system shall allow a user to select his/her followers and only the followers shall see his/her profile page.
- 2.1.3 The system shall ask the permission of a user if someone wants to follow her/him.
- 2.1.4 The system shall remember the choices of the user.(ingredients, meals etc.)
- 2.1.5 The system shall warn the user if he or she is about selecting a food which contains some nutrients she does not want
- 2.1.6 The system shall notify the user if there is some new food on the system that s/he may like.
- 2.1.7 The system shall allow a user to see top foods of a restaurant to which s/he is going.
- 2.1.8 The system shall allow a user to sort a list of foods according to some fields which are set beforehand.(Ingredients, calorie etc.)
- 2.1.9 The system shall allow a user to rate a food or server in terms of some subcategories which are also set beforehand.
- 2.1.10 The system shall allow a user to make comments about the foods and servers with thumb-up and thumb-down buttons.
- 2.1.11 The system shall allow a user to share his/her location , comments about foods and servers to share via a social media account.
- 2.1.12 The system shall offer some good choices to a user by depending on her/his consumption history.
-
2.2. Non-Functional Requirements
- 2.2.1. Security
- 2.2.1.1. Confidentiality, integrity, availability, accountability, privacy and authenticity shall be provided.
- 2.2.1.1.1. Privacy
- 2.2.1.1.1.1. The user’s information shall not be shared, copied or used without user’s permission.
- 2.2.1.1.2. Availability
- 2.2.1.1.2.1. Information shall be available to authorised users when they need them.
- 2.2.1.1.1. Privacy
- 2.2.1.1. Confidentiality, integrity, availability, accountability, privacy and authenticity shall be provided.
- 2.2.2. Usability
- 2.2.2.1. The system shall be user friendly.
- 2.2.2.1.1. Learnability
- 2.2.2.1.1.1. New users shall begin effective interaction.
- 2.2.2.1.1.2. Tutorial for the new users shall be provided.
- 2.2.2.1.1.3. Help document shall be provided.
- 2.2.2.1.2. Flexibility
- 2.2.2.1.2.1. Negotiable task allocation between the user and the system should be provided. (Task-Migratability)
- 2.2.2.1.2.2. The system shall be dialogue initiative.
- 2.2.2.1.3. Robustness
- 2.2.2.1.3.1. User shall be able to evaluate internal conditions of the system. (Observability)
- 2.2.2.1.3.2. The system shall provide support for undoing errors. (Recoverability)
- 2.2.2.1.3.3. The system functionality shall match common user tasks. (Task Conformance)
- 2.2.2.1.1. Learnability
- 2.2.2.1. The system shall be user friendly.
- 2.2.3. Portability
- 2.2.3.1. The system shall have Web and Mobile client.
- 2.2.3.1.1. The system shall be compatible with latest versions of Google Chrome, Mozilla Firefox and Safari available in 2016.
- 2.2.3.1.2. The system shall be compatible with Android.
- 2.2.3.1. The system shall have Web and Mobile client.
- 2.2.4 Reliability
- 2.2.4.1. The system shall recover the last working state in case of crush.
- 2.2.5 Flexibility
- 2.2.5.1. The system shall be designed to add new features easily.
- 2.2.6. Accessibility
- 2.2.6.1. The interface shall be designed according to color-blindness.
- 2.2.6.2. The font size shall be changed for users who have eye discomforts.
*2.2.7. Efficiency - 2.2.7.1. The system shall be storage-friendly.
- 2.2.8. Maintainability
- 2.2.8.1. The system shall support previous version for 6 months.
- 2.2.9. Price
- 2.2.9.1. The system shall be free for all users.
- 2.2.10. Operability
- 2.2.10.1. The system shall be kept in safe and reliable functioning operation.
- 2.2.11. Performance
- 2.2.11.1. The maximum response time shall be 5 seconds for all tasks excluding problems regarding users such as network problems etc..
- 2.2.1. Security
- Project Description
- Project Video
- Themes/Features
- User Stories & Acceptance Criteria
- Personas
- Domain Analysis
- Requirements
- Initial Plan
- Diagrams
- Use Cases
- Peer Reviews
- Mockups
- Test Plan
- User Tests
- Test Web Project
- Meeting 1 - 16.02.2016
- Meeting 2 - 18.02.2016
- Meeting 3 - 3.3.2016
- Meeting 4 - 7.3.2016
- Meeting 5 - 11.3.2016
- Customer Meeting 1 - 28.03.2016
- Meeting 6 - 8.4.2016
- Customer Meeting 1 - 29.9.2016
- Customer Meeting 2 - 06.10.2016
- Meeting 7 - 06.10.2016
- Meeting 8 - 13.10.2016
- Customer Meeting 3 - 27.10.2016
- Meeting 9 - 27.10.2016
- Customer Meeting 4 - 03.11.2016
- Meeting 10 - 03.11.2016
- Meeting 11 - 10.11.2016
- Meeting 12 - 01.12.2016
- Meeting 13 - 08.12.2016
- Customer Meeting 5 - 08.12.2016
- Meeting 14 - 08.12.2016