Skip to content
Snippets Groups Projects
Commit 7bb19b9b authored by keleher's avatar keleher
Browse files

auto

parent c2441339
No related branches found
No related tags found
No related merge requests found
# Group Project
**Due: May 3, 2020, 11:59:59 pm, v1.01**
## Requirements
The group project is intended to be the capstone to this course. Your
team should use the basics we learned in the first half of the course
as a springboard to a project that contains elements we have not
discussed in class, or at least not in any detail. The requirements
are as follows:
- build an app using novel technologies or ideas, where novel means
something that we have not discussed in detail in the class. Note
that in class we will be doing a small amount of augmented reality, of
machine learning, and networking with Firebase. These are still fine
for the project.
- write a five-ten page report describing the evolution of your ideas,
the process you went through to end up at the final app, and of
course the app project itself.
- Either a five-minute screen-capture video (with audio desribing the
app's features), or a seven-ten minute presentation in class. Every
team that signs up gets a 10% bonus, even if we do not have time to
show your presentation (though in that case you will need to do a
video.
- Turn in the app. It must compile and work as in the video/presentation.
## Group Assignment
This is totally up to you:
- You can form your own group if you know others that you want to work
with.
- You can advertise for teammates for teammates on piazza at
[@6](https://piazza.com/class/k602f3dx9xi6ru?cid=6).
Groups sizes are three or fewer students. You *may* work alone, but I
will require you to justify why you can now work in a group in an
email directly to me. If I disagree, you will be placed in a
randomly-created group.
I expect groups with either two or three members to produce projects
of roughly equivalent sophistication. Individuals would be expected to
do somewhat less.
## Group Communication and Workspace
You and your teammates can communicate any way you
wish. [Elms](https://myelms.umd.edu/courses/1275375/groups#) has
a mechanism to build group collaboration spaces
that allow group members to message and share files.
However, I expect email and messaging to be more commonly used.
__Each
group will be assigned a new gitlab repository for development.__
## Topics
Your app topic should satisfy the following constraints:
1. be a significant departure from what we have explicitly covered in
class.
1. be an app is more suited to a mobile device that somehow
takes advantage of the abilities or characteristics inherent to mobile phones
circa 2020, i.e. mobile, (almost) always-connected, good graphics,
useful hardware (camera, audio and video recording, gyroscope, GPS
antenna, etc.).
Your team must write up and propose a topic (see below for
specifics). I may disallow it if I consider it not innovative/novel
enough, or not sufficient for a month-long project with multiple team
members.
**You will generally be expected to use techniques and/or APIs that we have not
discussed at length
in class**. The ARKit and machine learning libraries are expansive
enough that I encourage you to build on what we discuss in
class. FireBase may or may be considered novel, depending on how you are using it.
## Artifacts to be turned in
1. **Due 4/5**: 1-2-page PDF document with/
- Project Name
- Group Number
- Group Members (names)
- Minimal product goals (1 paragraph)
- Stretch goals (1 paragraph)
- Projected timeline, w/ milestones and assignment of work to group members.
You will be assigned to a TA who will be your ***advisor*** for the
life of the project.
1. Weekly updates including current progress will be submitted to your
advisor each Sunday night.
1. **Due 5/3**: Final project, including video, due.
1. Sample [here](sampleSemesterProjectWeek1.pdf).
# Project Ideas
You **must** choose one of these idea. You should obviously build on it, but
any project that is not one of these, without explicit permission from Dr. Keleher, gets a 0.
1. Asteroids-equivalent shooter game, including:
- spritekit,
- sound,
- artwork.
1. Augmented Reality
- Pokeman Go-lite
- Grocery store ingredients scanner (for those with sensitivities to
specific ingredients
1. AVController for recording audios of people’s voices and plays with them adding different effects
1. Bike route planner / tracker
- track route with line on map
- export to a .fit
- upload to strava
- plan from current location (this would require google map sdk)
1. Cryptocurrency/Stock price tracker
- Get price data as a stream (NSURLSession)
- Add streams to current app instance
- Display graphs, compute price indicators based on data
1. Healthkit data mining and presentation.
1. Local events: Swipe to find events, and event hosters can swipe to match with who they want to invite.
- GPS to find events based on location
- Basic UI with swipe gestures, notifications, etc.
1. Location based messaging app. All users would be anonymous, and can choose to see and reply to posts made within a radius of their choosing.
1. Machine learning:
- Models at
[https://developer.apple.com/machine-learning/models/](https://developer.apple.com/machine-learning/models/),
[https://github.com/SwiftBrain/awesome-CoreML-models](https://github.com/SwiftBrain/awesome-CoreML-models)
Build an app to recognize specific types of objects and pull up
online information and links for those recognized objects.
1. Proximity-based swapping, messaging.
- Use app-generated QR codes the camera to get an anonymous
handle. Even better if the messaging is secure.
1. Weasley magic clock (inspired by Harry Potter)
- clock laid out with pre-specified locations (home, work, gym..)
- arm for each family member / friend, pointing out where they are
- intelligent interpolation for intermediate states
## Grading
You grade for this project will be composed of:
- 25% novelty/innovation of idea
- 25% degree of difficulty
- 25% overall execution of product
- 25% overall polish, look and feel
These are rough overall guides. If you propose a beautiful new idea for an app but do
nothing, you still get a zero. If your propose something beautiful and ambitious but run
out of time you might still get a very high score.
The weekly checkpoints are not graded, but they are required, and will influence the final
grade, especially if the project falls short in the end.
## Submitting
More details of the group repositories and submissions are forthcoming.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment