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

  • 248
Loading comments...

More from Robin Loh