Past Projects Review
NUS Orbital 2018
#lo-pastprojectreview
Loh Zi Bin Robin
14 May 2018
Disclaimer
-
The sample projects are reviewed from the documentation level, not at the code implementation level.
-
The information for each sample project are from the respective team’s documentation.
-
The information presented for each sample project are not exhaustive - they are specially selected and simplified solely for presentation purposes.
- Any project idea presented can actually be any of the 3 levels – Vostok, Project Gemini or Apollo II.
Brief Introduction
2016
- Year 1 – Participant
- Honorable Mention Award (Vostok)
2017
- Advisor – 6 Team Projects
- Best Advisor Award
2018
- Speaker – Past Projects Review
- Mentor – Apollo II Projects

Provide wide variety of project ideas from each level of achievement.
Provide suggested areas to ponder for the ideation process.
Session Goal
Video Link: https://youtu.be/FkEaHWV678E
Website link: http://tripnomads.appspot.com/
Nomad Travel
Scroll down for more information
Level: Project Vostok
Type: Web Development
Ideation | The website can help provide useful and insightful information for other tourists who are visiting the same country, by reading what other tourist have experienced while in that country. |
Target Audience | Students going overseas on exchange (tentatively) or for vacation, as budget and interests as students can be catered directly |
Research | (Personal Experience in South Korea) Guided tours – Helpful to bring tourists around but tight schedule & business dealings are problems (Survey) How to make the website comparable to established sites |
Comments:
Suitable target audience - Students know how to write online (e.g. social media, blogs).
Scope is succinctly defined with a clear main feature - experience posts
Comments:
Personal experience is good - to understand the problems as a typical user's perspective
Studying existing prototypes helps you to identify weaknesses & come up with unique features
Nomad Travel - 1 / 2
Features | Username and password authentication feature Creating, Reading, Updating and Deleting of experience posts Email contacting of other country users as tour guides Basic database for storage |
Comments:
Authentication & database are features that students tend to miss out.
The main feature is clear - CRUD of experience posts
Features are simple & straightforward to implement
User Stories | Sample examples: As a tourist, I would like to be able to search for reviews for different countries so that I can search for information for the country I am travelling to. As a tourist, I would like to be able to view multiple posts concurrently so that I am able to get more information on specific countries I am travelling to. |
Comments:
Each user story ideally has these elements defined: Target audience, Targeted Feature to work on, Targeted Problem to solve.
Indirect users should be considered as well (e.g. administrator, writer for the posts etc)
Nomad Travel - 2 / 2
Video Link: https://youtu.be/eqKF42R_f54
Source link: CodeSource
NUSmart Planner
Scroll down for more information
Level: Project Gemini
Type: Android Application
Ideation | More efficient time management system for projects, academic, CCAs and daily routines Mobile app is easier to edit plans on a mobile phone anywhere |
Target Audience | NUS students |
Comments:
Usually students focus on academic events (e.g. assignment datelines, project meetings). However, the prototype is more practical if it includes daily routines and non-academic events.
Prompting the user when the deadlines are near is better using a mobile since most NUS students carry a mobile phone.
Research | Survey results on issues faced by students in their daily life - Networking with peers - No/ limited awareness of all the activities in NUS - Difficulty in organizing - Efficient planning and execution |
Comments:
Scope of survey is good - The research topic assesses the relevance & seriousness of the problem.
The survey results help you to address how to craft the features properly.
NUSmart Planner - 1 / 3
Types of Tasks | Academic and personal schedule Project meetings timeslots NUS activities to participate CCA events – admin deadlines |
Comments:
Usually students will think about tasks in general. This is not sufficient because different tasks have different requirements. For instance, project meetings involve more than 1 person. Events have both start date & due date. Tasks only have either a start / due date.
Source Control | GitHub |
Comments:
Good to start using source control as it is commonly used in a typical software engineering project today.
Components | Username & Password Authentication Calendar to view my plans and schedule Information about CCAs and their activities Back-end database servers for storage |
Comments:
Components may be different from features. Usually components are treated as 'objects'.
NUSmart Planner - 2 / 3
Features | Create, Read, Update, Delete (CRUD) of different tasks (e.g. Academic, Social, Personal) categorized by color Auto-downloading of academic schedules Notification reminders (Facebook, WhatsApp) Suggested project meeting timeslots |
Comments:
Main feature is clear - tasks. Distinction between the tasks by colour-coding enhances the visual quality.
Auto-downloading of schedules allows information to be up-to-date.
Suggested project meeting timeslot improves user-friendliness as a user can save time on filtering manually.
NUSmart Planner - 3 / 3
Text
iCare
Level: Project Vostok
Type: Android App
Video Link: https://youtu.be/FkEaHWV678E
Website link: NIL
Scroll down for more information
Ideation | Multiple medications result in a very confusing list of instructions for the elderly to remember and they might not be able to handle all that information. It is important that they take the right medication and the right dosage at the right time. |
Target Audience | Elderly who have multiple medications |
Comments:
Students typically think that "too much medication" is a problem, but it is too general. What are some hidden issues with too much medication? Too much medication will result in elderly having too many TYPES OF MEDICATION with VARYING DOSAGE and FREQUENCIES TO CONSUME them. These are the 3 quantifiable problems which can be improved by the mobile application.
Research | The practice of using multiple drugs to increase effectiveness, otherwise known as polypharmacy, results in elderly people having an average of six drugs they need to manage (Maher, Hanlon, & Hajjar, 2013); in some cases, they can take up to more than 11 (E.B., K.Z. & J., 2010). |
Comments:
The use of academic sources heightens the credibility and seriousness of the problem.
iCare - 1 / 3
Components | Login authentication Storage and database Calendar view to show when the medications schedule. Alarm / notification system – remind elderly to consume medication. User information page An administrator login which can edit the user’s medication. |
Comments:
The "Administrator" role is frequently forgotten during the ideation & implementation process. When there are more users and more data, the administrator has to regulate such data to maintain the integrity of the prototype.
Documentation | How to get the app installed. Usage instructions (according to features). |
Comments:
Many projects neglect the importance of user-friendliness of the application. It is important to guide the first time users (especially the elderly in this project) on how to use the application. Pictorial / Animated guidance is much better than a textual representation.
iCare - 2 / 3
Features |
Firebase authentication with Google accounts Storage 1) Medication information including medication name, description, date and time and how much to be consumed and a photo of the medication 2) User / Admin information 3) Prioritizing the important medication Scrollable calendar day view with labelled schedules |
Comments:
What if the elderly missed the time to consume the medication? Which medication should the elderly consume first in this case? This is when the prioritising the important medication comes into play.
Potential future applications | Our app can be modified into a monitoring system, where doctors will be able to provide tele-healthcare and pharmaceutical services by having personal information of the elderly person recorded on the app. |
Comments:
Potential future applications / extensions will boost the standards of the project. It is good to design the prototype such that it is open for extension & closed for modification (i.e. Open-Closed Principle).
iCare - 3 / 3
Video Link: https://youtu.be/G_dngw-solA
Website link: https://gamejolt.com/games/hero-as-a-hobby/215221
Hero as a Hobby
Scroll down for more information
Level: Apollo II
Type: PC - 3D Game

Ideation | People who are experiencing a stressful lifestyle are looking towards video games (as a hobby) to relieve their stress, fast-paced but not so physically straining, or to simply have fun. It is an open-world 3D game with a versatile combat play-style that intends to bring its users to whole new level of gaming. |
Target Audience | Casual players – To quickly enjoy the depth of the game. Core players who spend time on it – To discover hidden game mechanisms and excel in it. |
Comments:
To showcase the ability to program, many teams tend to implement too much features such that the game became too difficult to play as a casual player. Casual players needs to be considered for each feature to be implemented.
Source Control | BitBucket |
Project Management Tool | Trello |
Comments:
Illustrating the use of source control and project management tools increases the quality and standards of the project.
Hero as a Hobby - 1 / 4
Testing | User Playtesting – gather feedback for functionality, visual appearance, user preference |
Comments:
User Playtesting is a good way to test the game functionalities from the casual / professional gamer's perspective. The groups of gamers testing the game should involve different ages and occupation etc. It is important to gather feedback for the user-friendliness and performance of the game.
Documentation | Diagrammatic game instructions, in-game tips, hints and arrow signs Detailed Project Log |
Hero as a Hobby - 2 / 4

Comments:
A picture speaks a thousand words - diagrams can simplify the instructions and they are easier for users to understand.
Optimisation | Reducing draw calls Efficient code |
Comments:
Performance improvement is one of the factors for good software quality. Under optimisation, it can be in terms of algorithms used, design principles used etc.
Game Objectives | Fight other monsters on the way to gain more points Clear level requirements |
Game Features | 4 characters with unique looking icons, decorations and colour theme Varying types of monsters (e.g flying, crawling, jump, stationary etc) Various types of attacks (e.g. explosive, knockback, shooting, whacking) Smart directional arrow (appear occasionally) to make sure the player stay on the right track |
Hero as a Hobby - 3 / 4
Comments:
Simple game objectives are vital for any game. Do not focus on implementing too much features.
A great variety of game features suits a wider group of people to play the game. This also enhances the quality of the game further.
User Interface | Different environment (e.g. Apocalypse terrain, urbanized environment, snowy theme, forest terrain) Open world combat versus Enclosed boss fights Real-time changing environment lighting and particle effects |
Comments:
The quality of the user interface determines the standard of the game. Provide users an option to select various environment so that they can enjoy the game according to their preference.
Hero as a Hobby - 4 / 4
Suggested Ideas to Ponder
Ideation / Documentation | Diagrams for User Interface Storyboard for the flow of the prototype Instructions on (especially before) using the prototype |
Research | Methods used to clarify the problem, vision, user stories |
User Interface |
Colour combinations chosen Icons / Diagrams / Text chosen for display |
Features | Fields chosen for user’s input (e.g. authentication, creating a task etc.) |
Testing |
Methods to generate test cases for code coverage (for completeness) Corner cases / Invalid cases (for correctness) Automation tools used |
Software Engineering | Design patterns and principles |
Performance |
Optimization methods & algorithms |
For Intermediate / Advanced Levels:
Key Issues for Reflection
Students often over-estimate their capabilities over the summer break duration
- Lack of technical background beforehand
- Too many features to be implemented
- Too difficult to implement the features
Students focus too much on the features implementation and not on quality (e.g. documentation, user-friendliness etc.)
You will lose the momentum easily as it is the break – Have a concrete plan & stick to it.
Take the initiative first – Keep asking your advisors/mentors on your progress.
NUS Orbital 2018 - Past Project Review
By Robin Loh
NUS Orbital 2018 - Past Project Review
- 1,524