ITEC 2600 - Final Project
General Instructions
1. The project accounts for 20% of the final grade.
2. The project is a group project (see groups in eClass).
3. Feel free to email the instructor, set up appointments, and use any other communication services, in case you get stuck.
4. The work must be submitted via eClass by April 8, 2024 (last day of Winter term).
Project Description and Requirements
Project Description
You are an owner of apet sitting app start-up that aims to beat the competitors at finding the best match for people in search of a pet sitter. The project will have 3 parts:
1. An implementation of the app in MATLAB,
2. A presentation to potential investors (myself), who will rank your solution from 1 to 5 (highest possible number of points is 5).
3. Each group member will submit a description of their individual contri- bution to the app that you developed.
The submission will include: MATLAB code (1 main.m file that will call user-defined functions in individual .m files.), a presentation (in-class) of the software (this is a live demo, no pptx slides are required), and a one-page write up (1 paragraph per group member) that describes the individual contribution of each of the project members. You have some flexibility and you are allowed to change some of the specifications below to make the app more interesting / improve its features. You need to approve these changes via email to the instructor (Arik).
Part 1: App Specifications (10 points)
Give the app an appealing name that would attract users and preferably design a logo for your app (you will get bonus points for an interesting logo). You can use name and logo generators available online.
The user of the app will first insert their own characteristics and then their preferences of the characteristics of their pet sitting matches. The app will save their own characteristics and their preferences in two separate data sources (e.g., matrices, cell arrays, and so on), and allow users to override both data sources at later stages.
Once the characteristics are entered and the preferences are set, there will be an option to scan the database of users for possible matches for the current user. Note that you need to take into account not only the user’s preferences but also of the preferences of the other users. The app will then present the best match it found, and the user can decide to click match or no match. If they click match (the match must be a good match for both the user and the other person), then the program returns the number of attempts it took and the characteristics of the two matching individuals. If there was no match, then the next best candidate will be offered. Sorting users across multiple preference dimensions can be tricky - think about how this can be implemented. You must add the option to change the characteristics and the preferences of the user.
You can decide (on your own) how the app will take into account the pref- erences of other users when searching for a match, how it will weigh different preferences and characteristics, as well as How it will handle conflicts between users’ preferences. Based on this you need to determine what the criteria are for a “good match” in the app. Moreover, you can decide which data structures you are going to use to store the data. You can use MATLAB structures that we did not cover in the course. Recommended structures: data structs or cell arrays. You need to submit all .m files (you can use a single zip file) by April 8.
Example of how the application should work: User Arik enters the sys- tem. The app prompts him for his own characteristics: age, gender (non-binary categorization is preferred), hair color, eye color, favorite band, and favorite book. He will enter his age, gender, and so on. Then the app will prompt Arik for his preferences in the ideal pet sitter. These preferences will be saved separately in different data sources. Then, there will be a search and Arik will receive the top candidate for a match. You also need to let pet sitters input their characteristics based on which users will choose them. Feel free to be creative in what matters there.
Part 2: Presentation to Potential Investors (5 points)
You must present the usability of your app to me, a potential investor who is considering investing 10 Million dollars in your app. You will do so by show- casing the software in class. You need to give a 5 minute live demo of how your app works, describe all of its functionalities (input of characteristics and prefer- ences, match, and override of existing characteristics), and show an end-to-end usage of the app. The demo will take place in-person during the last week of classes (on Tuesday or Wednesday, depending on your section), so be prepared to present your tool. You will receive feedback from me during the presentation and so you will still have time to correct your work before April 8. You can decide whether the demo will be performed by a single student, or by several members of the group.
Do not under-estimate the time it takes to prepare and rehearse for an effective demo. This is 5 out of 20 points of your project mark.
Part 3: Individual Contribution (5 points)
Part 3 is the only component that might not be shared among the 5 group members. A mark between 1 and 5 will be given depending on the student’s contribution to the team effort. Extreme cases of no contribution or no-show to group meetings may receive 0/20 for the entire project. Each group member is expected to write a paragraph detailing their contribution to the project. For example, contributions can be: coding, design, brainstorming, project manage- ment, and team dynamics. You must submit the one-pager by April 10 together with the .m files.
Tips
1. You are 4-5 members. Divide the work among you.
2. Working hard, and preparing a nice presentation (of even a limited func- tionality program) will already get you to 10/20. So collaborate well with your teammates and prep for the presentation.
3. Thus, most students (who work hard) will receive at least 10 points for their project. The last 5 points will depend on how much of the function- alities you implement by April 10.
4. Let the best presenter on the team present, and the best developer do most of the coding. This project is also about team work and brainstorming, so I do not expect equal contribution in all aspects. However, if I see that there are ‘free-riders’ that did not do much throughout, or did not attend meetings, they will lose marks (up to all 20 marks).
5. Develop functionalities gradually. If your app will be missing minor func- tionalities, you will not lose a lot of points. Do not try to develop it entirely in one swing.
6. If you get stuck, consult with the instructor.
版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。