Final Projects

iOS Development - MPCS 51030

For your final project, you will design and implement an app of your choosing. If you like, you can explore frameworks that we have not yet covered in class, such as MapKit or SpriteKit. You may also decide to dig deeper into topics we have already covered.

The completeness of the submitted app is the most important objective, which does not necessarily mean a full realization of the developer’s vision. It’s better to submit a polished app with fewer features than an app with many unpolished features. Apps that are “App Store ready” will receive the highest grades.

Written Materials

Written materials should be submitted as a PDF in your git repository.

Executive Summary

Write a one-page summary of your application that answers the following questions:

Marketing Materials

Consider how you would market your app if you were to submit it to the App Store. Provide the following information:

Functionality

Adaptive Layout

Decide whether you want to build an iPhone, iPad or universal application. Determine which device orientations you will support.

Splash Screen

Display a splash screen every time the user launches your app (i.e., every time its state goes from “not running” to “active”).

Tip: You will not be able to accomplish this using LaunchScreen.storyboard.



App Store Rating

Settings

Connectivity

Notes

Data & Persistence

Since this course is not concerned with back-end development, you may choose to “fake” a back-end for your application. This could mean loading data from static json files, persisting data to UserDefaults or the Documents Directory instead of a remote database, or setting up a fake endpoint with mocky.io or similar.

Third-Party Frameworks

You may use third-party frameworks with approval from the professor. List all third-party frameworks you plan to use in your final project proposal. If you find a framework you’d like to use after your proposal has already been submitted, you must request approval at that point.

When you submit your final project, you must list any third-party frameworks you used in your README. You should be familiar enough with any third-party framework used to explain in detail how the framework works.

Testing

In your README, remember to provide the instructors with all of the information necessary to test your application. For example:

Misc. Reminders

Presentations

We will have informal presentations of the final projects during the last class session on Wednesday, June 12. For that class, we will be combining with the advanced class, who will also demo their final projects!

Your presentation should cover the questions answered in your executive summary (above). Most importantly, you should show screenshots, play a short video or do a live demo of your application.

If you would like your presentation filmed for your portfolio, personal site, or LinkedIn, please let the instructor know. She’ll be happy to film you.

Due Date

Final projects will be due Friday, May 31, 2019 at 11:59pm.