project-proposal-2024

[Gourmet - a recipe search tool🥯]

Abstract

Gourmet is a recipe search tool that allows users to select their favorite recipes from different countries with customizable options. It provides the cooking time, ingredients, and preparation process of each dish, which can help users with no cooking experience create delicious meals. In addition, users can view nearby offline food trade events and share and discuss their country’s cuisine history with food enthusiasts from different cultures through the events feature. By utilizing real-time updates and search features, Gourmet enables you to find the most appropriate information across multiple devices.

Author

Name: [DIEWEN YANG]

Student number: 45951363

Functionality

Gourmet provides users with a wide range of features to help them find the recipes and activities they want:

Discussion community: Gourmet provides a dedicated platform for users to share information about their food and connect with each other about their activities on Gourmet. On the community platform, users can be divided into two sections: general food posting and activity creation and search.

Posting food and recipes: Users can post pictures or videos of their own food creations in the community, labeling them with the ingredients and tools they need.

Event creation & event location identification: Users can post information about food exchanges they want to organize in the community, and the time and location need to be marked on the map. Gourmet can also recognize the user’s current location on the map and return relevant food events around the user.

Search and Filtering: Gourmet’s search feature allows users to quickly return relevant recipe information by using specific keywords. Filters include, but are not limited to, the country the recipe belongs to, and recipes are sorted alphabetically or by when the recipe was created.

Scope

Minimum Viable Product (MVP) of Gourmet will include the following features:

User login/registration
User Authentication
User database
Event location marked on the map
Location recognition
Search and filter
Image and video uploading and text editing

Quality Attributes

Security: Security is essential for Gourmet to exist. In particular, measures to protect users’ sensitive personal information need to be strengthened. For example, authentication can be performed when users enter their accounts and passwords, or encryption work can be performed on sensitive data in the database (e.g., location and passwords). These measures are essential to maintaining the privacy and interests of users and Gourmet.

Availability: The availability of Gourmet needs to ensure that users can access it anytime and anywhere on different devices, rather than only using a laptop. Since each user’s meal times are different, Gourmet must also be available 24 hours a day, 7 days a week, to keep information up-to-date.

Scalability: Gourmet’s user traffic can be expected to peak at certain times. For example, during major holidays such as Christmas or Easter, the number of online users will surge. In order to ensure the user experience and its continuous development, Gourmet needs to have the ability to handle the continuous increase in user load and deal with the huge fluctuations in user traffic.

Extensibility: Initially, Gourmet’s map extent will only be available in Queensland, Australia and the language selection will only be English. But as the user base grows, more languages and larger map coverage may become a reality in the future. In addition, more new features may be added in the future. For example, rating of recipes, like function for community posts, etc.

Evaluation

Regular security audits and virus scans are performed to identify any potentially threatening situations and ensure the security of user information.

To evaluate the usability of the application, perform all functional tests to ensure that all of its features can be implemented.

Analysis of the application’s performance metrics during peak periods using specialized stress load testing will determine its ability to handle increased traffic. Tests should include, but are not limited to, large numbers of customers accessing the same data at the same time and multiple customers posting images and videos to the community simultaneously