Warning: Outdated Content
This MP is from a previous version of CS 125. Click here to access the latest version.
MP5: Final Project
You’ve learned a lot this semester. Now it’s time to try out your newly-acquired super powers. MP5 is not about us giving you something to do—it’s about you accomplishing something you want to do using computer science.
MP5 is different than previous MPs. It is done in pairs with a partner from your lab section. And it’s due in your lab section during the last week of class: so during lab on either Tuesday 4/30/2019 or Wednesday 5/1/2019.
We’re also giving you a chance to earn extra credit by doing a great project and participating in our third biannual Final Project Fair. The fair itself will be held from 1–3PM on 5/2/2019 (Reading Day) throughout Siebel. But we’ll also be doing awards the next day, Friday 5/3/2019, at 1:30PM in Lincoln Hall—during our official exam time. You’ll need to attend both events to receive extra credit!
1. Learning Objectives
If the previous MPs have had you execute carefully-planned routes from point A to point B, MP5 takes you on a journey off the map. You’ll learn how to plan and execute a small Android project of your own design. You’ll also learn how to work with a partner. We’ll also continue to reinforce the learning objectives from previous MPs—1, 2, 3, and 4. In many ways, all the previous MPs have been designed to prepare you for this moment. MP5 brings everything together and starts you out on a career as an independent software developer.
Our goal in MP5 is to give you as much flexibility as possible, so there are few rules about what you can and can’t do. But those that we do have are important:
You must do something new for MP5. Do not submit something from another class, or something you’ve done previously. You may want to work on something that you’ve started on previously, but given that you’ll be working with a partner that’s not fair to them. So you should pick something new to do for MP5. It doesn’t have to be a huge project—you only have a few weeks. But it should be original work.
Here are the rest of the rules:
You need to build an Android app.
You need to design a simple UI. We’ll provide help with that in lab.
You’ll need to finish your UI mockup in a week and demo it in lab.
You need to use a new web API, software library, or Android feature.
You need to commit your work to GitHub—to either a public or private GitHub repository.
You need to work with someone in your lab section.
You cannot build a weather app or a calorie counter. We’ve seen too many of those recently.
Other than that, what to do is up to you.
You turn in MP5 by recording a YouTube presentation which will be shown in lab during the last week of class. You and your partner should plan that together. You do have to publish your work on GitHub (or GitLab, or something similar)—privately if you want. So you should set up your project using Git and be able to show that you have committed and pushed your code to GitHub as part of your turn-in presentation.
2.1. Partner Rules
(Largely copied from the Lab 11 writeup).
The final project is done in groups of two 1. Obviously you want to find someone to work with that you enjoy working with and think that you can do an awesome project with—since we will be giving extra credit for some of the best projects. Another consideration is ensuring that at least one of you has a laptop that can smoothly run Android Studio and the emulator, or an Android phone for demoing your new application.
If you would like to work with someone from another lab section, you must both attend the same lab and work together for the remaining three labs. This means that only one of you will receive participation credit for that lab. You will not receive credit for working in lab without your partner. If you want to work with someone from another lab, this is the tradeoff you will have to make. (Remember that you have three excused lab absences.)
You need to find a partner by lab the week of 4/15/2019. There is a checkpoint in lab next week, and you will start losing credit quickly if you don’t have a partner. Use the forum to find one if needed.
3. Getting Help
While MP5 is self-driven, please feel free to approach the course staff for help. Post on the forum, or come to office hours and discuss your project idea and implementation with the course staff.
Grading for MP5 will be generous. It is worth 100 points total, broken down as follows:
20 points for building an original and working Android app
20 points for the first UI checkpoint—in lab the week of 4/22/2019.
20 points for using a new web API, software library, or Android feature
10 points for ensuring that all team members have roles in the project
20 points for recording your YouTube video and showing it during your final lab section
10 points for properly publishing your work on GitHub
There is (obviously) no autograding or online testing for MP5. Grades are entirely at the discretion of the course staff.
Also note that, like previous MPs, MP5 cannot be dropped. It’s too important—this is your chance to do something cool, creative, and to show us everything you’ve learned this semester.
4.1. Final Project Fair and Extra Credit
MP5 also provides an opportunity to earn extra credit by participating in our CS 125 Final Project Fair. We are providing extra credit as follows:
1% increase in your final CS 125 grade for participating in both the final project fair, from 1–3PM on Thursday 5/2/2019 in Siebel, and the awards ceremony, at 1:30PM on Friday 5/3/2019 in Lincoln Hall.
1% increase in your final CS 125 grade if your project is judged to be one of the most impressive. Note that we will take into account your level of ability when you started CS 125 when determining how impressive your project is. So this is open to students of all ability levels.
1% increase in your final CS 125 grade if one of the projects from your lab is judged to be most impressive.
Note that the maximum extra credit is 2%: if you participate in the fair and either have one of the most impressive projects or are in a lab that has one. Put another way, if you have one of the most impressive projects you don’t get an extra 1% from the lab incentive. However, this extra credit is independent from any previous extra credit that you might have earned earlier this semester.
5. Submitting Your Work
You and your partner should prepare a 5 minute presentation for the last lab section during the final week of class. You will not give the presentation live during your lab section. Instead, you should prerecord your presentation and upload it to YouTube.
Your presentation should cover what you did, why you did it, who did what, and any other interesting details: interesting technical problems you encountered, how you collaborated, or ideas for future work. You should also confirm that this was an original project and that it was published to GitHub under one or both of the project partner’s accounts.
Once your video is done use this form to register your project video and GitHub (or GitLab) repository and sign up for the final project fair.
5.1. Academic Integrity
Please review the MP0 academic integrity guidelines. In addition, for MP5 any attempt to turn in non-original work will be treated as an academic integrity violation. Consider yourself warned.