| Category |
Assignment |
Subject |
Computer Science |
| University |
University of Essex (UOE) |
Module Title |
CE881 Mobile And Social Application Programming |
| Assessment Type |
Report |
| Assessment Title |
Assignment 2 |
| Academic Year |
2025/26 |
CE881 Aim
The aim of the assignments of CE881 Mobile And Social Application Programming is to produce an Android app. The work is split into two parts to help ensure that you make steady progress. The assignment 2 goal is to implement the complete app, write a report on it and present it.
Assignment 2
This has three aims:
The first is to demonstrate that you can write a working Android app that perform a range of useful function. The app should function in line with what you planned to do in part 1. You may make changes to the functionality if necessary, but you should explain the reason for such changes.
The second is to demonstrate progress on your main app by producing a brief report. The third is to be able to promote your app and learn more about your potential customers.
- This assignment counts towards 70% of the overall mark for CE881.
- The assignment is to be submitted individually. This is not a group assignment.
- Submit on FASER by week 10 (check on FASER the exact deadline).
- Be sure to put your registration number as a comment at the top of all files/pictures.
- There are two Faser submission entries, the first named 'Assignment 2' should consist of A SINGLE ZIP FILE containing everything app related and source code - This is the complete implementation (an Android Studio project with EVERYTHING necessary to build the app, including all Kotlin and XML source files plus any additional resources (sound, graphics, text etc.)).
- The second Faser submission, named 'App Report' should contain a single PDF file of your App Report and two video files containing your presentations.
- Video Source presentation (3min) (5%)
- Video presentation pitch (2min) (5%):
The app should work properly.
- No crash or bugs
- The app will not freeze, in particular when downloading data.
- No button or menu without response.
- If the internet or GPS is required, no crash when the internet (wifi/data) or GPS is disabled.
- A range of features that we have seen in the lectures and labs should be used in the app, for instance:
a.Different Layouts
b.Multithreading
The report should contain the following information:
- Brief Description of the App. This should be similar to the brief descriptions for apps published on Google Play.
- Design & Features: Detailed Description, including sample screen shots and how the navigation between various screens / fragments / activities. Describe all the features you implemented, and explain why any planned ones were not implemented. Also explain how you improved things compared to the prototype.
- Implementation. Include a UML class diagram and describe the software design, including the use of third-partly libraries. Include meaningful code snippets and highlight any interesting aspects of the design.
- Testing: explain how you tested the app, stating whether it passed or failed each test.
- Reflection, future work and conclusion.
- Title page, ToC, Abstract, Section Headings and references
Length: 6 pages + figures. (Title page, references and appendix do not count)
Presentation video of no more than 3 minutes using no more than 3 slides, must show your face. The main aim of the presentation is to promote your app in a mock “New Product Release Conference” and to attract more potential customers.
Note: the video presentation is mandatory, as is the code walkthrough video.
Marking guidelines
- Complete App (35%) as a total coming from:
oThe application starts successfully, screen is rendered properly, no start-up crashes, compiles out of the box, APK installs flawlessly (10%)
o Successful drawing of app components
- Drawing should be handled irrespective of screen size/orientation (5%)
o Correct behaviour on transient state
- Is screen rotation handled gracefully? (5%)
o Correct behaviour on permanent state
- Is state saved regularly? (5%)
- Is application exit handled gracefully? (5%)
o Does the app broadly adhere to good coding practices? Are resources accessed properly through .xml files? (10%)
o Is the project structure sane and adhering to android best practices?
(5%)
- Is there a clear separation between Model, View and Controller/ Presenter? Views and Activities should not contain
“application logic” code (5%)
o Are implicit intents used correctly? (5%)
o Are key pressed/screentouched events handled correctly? (5%)
o At least one functioning dialogue/menu item (5%)
o Persistency and remote resource used correctly (5%)
o Design and Clearness of the interface (10%)
o Use of social features (5%)
o Overall quality of the app (15%)
- Report (25%):
o Updated Design & Features (10%)
o Updated Implementation & Structure (10%)
o Testing (3%)
o Conclusion (2%)
- Video Oral presentation (5%)
- Video Code presentation (5%)
o Confidence with project and code structure (3%)
o Pointing out crucial features of the code (2%)
WARNING AND ADVICE ABOUT POSSIBLE ACADEMIC OFFENCES
Your solutions should be your own unaided work. You can make use of any of the programs from the CE881 lecture notes and the lab solutions. You may use any features from the Java SE API and Android SDK including those not covered in CE881.
You must NOT use any third-party classes (e.g. classes that are not provided as part of the Java SE download). If you use any other sources, you must clearly indicate this as comments in the program, and the extent of the reference must be clearly indicated. For more information, please see the University pages on plagiarism and the Academic Offences Procedures.