HeaderSIS.jpg

IS480 Team wiki: 2012T1 STEEP Final Wiki

From IS480
Revision as of 10:09, 5 December 2012 by Sunita.s.2009 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
STEEPTeamMainFinal.png

Project Progress Summary

Progress Description

Final Presentation Slides :https://dl.dropbox.com/u/57078371/STEEP%20Final.pptx

Since our midterm presentation, we have made several changes to our web & mobile application. As a team, we discussed on various aspects - including the UI, features, gameplay, etc and made improvements. Though, we had to remove some features due to time constraint, we focused more on the gameplay and usability which we feel was worth it.

As any project would,we faced issues along the way which we managed to resolve. We are proud of what we have achieved through this project as a team.With that, we are currently approaching 9th Milestone: Final Presentation, on 5 December 2012.

STEEPTeamMilestonesProgress.png

Project Highlights

What unexpected events occurred?

  • User Testing: We intended to cater to more people during our User Testing 2 - which was meant to be an outdoor quest. However, due to the heavy downpour on the test date, we could not continue the testing of the mobile application.

Project Achievements

  • Successful Deployment
    • We have successfully deployment the mobile and web application - the mobile on Google Play and web on Microsoft Azure
  • Achieved Objectives
    • Through our project, we strongly believe that we have achieved the objectives that we set out to achieve for IS480
      • Social Platform Interaction : Users are able to login for both the web and mobile application using their Facebook account. Users are able to share the photos that they have taken on Facebook.
      • Fun & Challenging : During our mid term, we realise that the fun factor was missing from our application. We focused on the content and created clues which included tasks for players to do to make the quest more fun and challenging. Through the feedback we received from user testing, this is evident
      • Usability : Based on User Testing 1 , we changed the entire UI for the web and mobile versions and the orientation of playing the game. Both the web and mobile applications were intuitive and easy to use (based on feedback from user testing 2 & 3). The mobile application is also catered for different android version and screen sizes.
      • Scalability : We have reached out to people of all ages.Through this, we have also arose interest among many iPhone users as well whom would love to see the application on the appStore.
  • Value to Sponsors:
    • Our sponsors are very proud of what the team as done which has changed tremendously from where we first started till date.

Project Management

Project Status

Function / Features Status Confident Level Comments
1. Sign up (Web API, Mobile, Web) 100% 1
2. Login using Email (Web API, Mobile, Web) 100% 1
3. Login using Facebook (Web API, Mobile, Web) 100% 1
4. Create Clue (Web API, Mobile, Web) 100% 1
5. Edit Clue (Web API,Web) 100% 1
6. Create Quest (Web API,Web) 100% 1
7. Edit Quest (Web API,Web) 100% 1
8. Download Quest (Web API,Mobile) 100% 1
9. Play Quest (Web API,Mobile) 100% 1
10. Save/Publish Quest (Web API,Web) 100% 1
11. Photo Gallery (Web API,Web) 100% 1
12. Manage Profile (Web API,Web) 100% 1
13. Invitation (Web API,Web, Mobile) 100% 1
14. Feedback (Web API,Web, Mobile) 100% 1
15. Rating (Web API,Web, Mobile) 100% 1
16. Ranking (Web API,Web) 100% 1 Ranking removed for Mobile application
17. Revamping User Interface 100% 1
18. Certification(Web API, Mobile) - - The feature has been removed.
19. Like/Dislike(Web API, Web) 100% 1
20. Achievements(Web API, Mobile) 100% 1 The feature has been edited to show completed quest information only.
21. Wifi/3G Upload feature(Web API, Mobile) 100% 1
22. Security Features - - This has been removed

Project Milestones(Plan vs. Actual)

STEEPPlanvsActualMilestonesFinal.png


For our milestones, we had 3 key changes from our planned schedule :

1. Acceptance - We had issues with Amazon EC2 Cloud deployment a week before acceptance. Hence, we felt that it would be better to have abit more time.
2. Google Play Deployment - We were challenged by Prof Gan to have it deployed to Google Play by Midterm and we wanted to achieve it. Furthermore, we felt that it would be better for users to test on their own mobile phone. This is something that we are really proud of.
3. User Testing 3 - In order to cater to more people and get more feedback for improvement, we added in another user testing which receive positive feedback from the testers.

Project Schedule(Plan vs. Actual)

STEEPPlanvsActualFunctionsFinal.png

Taking the suggestions from our reviewers as well as team members, we decided to prioritise the functions that is crucial for the success of the game. Hence we decided to remove /edit :

  • Ranking(Mobile): However, this feature would still be available on the web application.
  • Certification(Mobile) : Our initial plan was to display a certification image after completion of quest which can be uploaded into Facebook too. However, as this feature would require time to research, we decided to remove this feature.
  • Achievements(Mobile): Our initial idea was to show badges for completion. However, due to time constraint and the focus was on invitation, we decided to edit this feature to show completed quest details.
  • Security Features: API Authentication: After discussion with our prof, he stated that since it is a game, not much security features are needed at the moment since there is no paymodel involved. Hence, we have excluded this.


Plan & Actual for Final functions
STEEP Actual Final.png

For more on schedule :

Link: Schedule
1. Schedule
1.1 Planned Schedule
1.2 Actual Schedule

Project Metrics

Link: Metrics
1. Metrics
1.1 Bug Metric
1.2 Schedule Metric

Project Risks

Link : Risks
1. Risks
1.1 Risks Assessment
1.2 Risks & Mitigation Strategy

Technical Complexity

Mobile Application

1. Consistent UI for different Android SDK

When developing for Android, it is important to provide for the different Operating System(OS) versions. The reason is that mobile phone users do not upgrade their OS unless they have a need, resulting in OS spanning from 2.3 to latest 4.2. Hence, the User Interface (UI) options and display would vary from OS to OS, making it a challenge to find ways to create a consistent and user friendly UI.

STEEPTechnicalComplexityM1.png

- Creating Custom themes that modifies default theme of the OS such as changing text color of EditText box and TextView into black permanently which is default white in OS 3 and above.

- Providing consistent Actionbar support through the use of external library, Actionbarsherlock in the application, as OS 3 and below by default do not have Actionbar available to them.

STEEPTechnicalComplexityM2.png

2. Wifi/3G

As our application heavily relies on answering questions with pictures, long uploading time required when the user is outdoors would affect the gameplay. As such, steps are taken to cut the uploading time, by allowing the user to upload the pictures after the quest.

1. Answer data is saved in the phone
2. Set timeout when using 3G
3. If did not connect to the server, user is given the option to proceed.
4. When the user logins later, he is able to upload the clues using wifi.

STEEPTechnicalComplexityM3.png
STEEPTechnicalComplexityM4.png

Quality of Product

Our mobile application caters to a range of android SDKs and able to play the quest without Wifi/3G once the game is downloaded into the phone.

Deliverables

Stage Specification Modules
Project Management Minutes Meeting Minutes (Team, Sponsors, Supervisor)
Metrics Bug Metrics, Schedule Metrics
Risks Risks & Mitigation Strategy
Analysis Use case Use Case Diagram
UI Mockup Mobile, Web
Design Process Flow Process Flow Diagrams
System Architecture Diagram System Architecture Diagram
Deployment Diagram Deployment Diagram
Testing User Testing 2 User Testing Process & Results
User Testing 3 User Testing Process & Results
Poster Submission Poster IS480 Poster Small
Video STEEP IS480 Video

Deployment

Mobile

Our Mobile application Gr8Quest has been published on Google Play since 25 September 2012. We were required to create an account, pay for a developer account and upload the relevant APK file into the Google Play Store.

Users with android devices are able to download and use our application. As compared to our previous versions, this version allows various versions of android to use the application and compatible with different screen sizes.

Get our app now on Google Play

STEEPGooglePlay.png




Website

Our Website has been deployed using Microsoft Azure.

Visit our website

Testing

We conduct 2 User Testing - User Testing 2 & 3.


STEEP user testing Final Screen.png
Link: User Testing
1. User Testing
1.1 User Testing 2
1.2 User Testing 3

Learning Outcomes & Reflections

Learning Outcomes

Link: Learning Outcomes
1. LOMS & Reflections
1.1 Learning Outcomes

Team Reflection

As a team, our journey has been a fulfilling one. From almost not making it through due to our demo in our acceptance to where we are right now ( both mobile & web application being successfully deployed), we are proud of what we have achieved.

1. Learned new programming languages, skills & concepts

We have learnt new languages, skills & concept through this project which would be useful for us. We had to do alot of research and did faced challenges along the way. E.g. website down the day before mid term, MVC framework updating its version. However, we manage to pull through all these challenges and achieve what we have today.

2. Scope Management Skills

We had the luxury to pick and choose what functions we wanted to do for our IS480 Project by our sponsors. Throughout the project - due to challenges faced and time constraint, we had to scope down our project abit where we priortized the functions and worked towards building a fun, challenging and user friendly application.

3. Communication Skills

The key to any successful project is communication skills - it can cause the team to stay together or break apart. We always hear each other out and explain our points without being afraid of being shot down by other team members. Through having an open communication, it was easier to put points across and make decisions.

Individual Reflection

Sunita

We have sure come a long way since where we first started during the acceptance presentation. I have learnt the importance of maintaining relationships with the stakeholders and manage the team at the same time. At times, it can be tough trying to find a common ground which would satisfy both parties. Initially, i placed alot of emphasis on the team feeling comfortable with their pace, however decided to push them once I realise it would not work that way.

Managing a team is definitely not easy and I have realized how communication plays a key role in ensuring the success of a project. Having team members to be there responding is important as well, if not the project and progress would be stagnant. Being able to take everyone's input and find the best solution together is important to learn and grow as a team.

As I leave SMU this semester, I must say that FYP has been a great experience which i feel added value to sponsors and not just for a mere grades.

Minh Tri

FYP has challenged me to a large extent. Prior to the mid term presentation, there were various issues with the server which had to be resolved. There was not much help online which required me to code by myself where I invested alot of time and effort.

FYP has definitely equipped me with the skills needed for the working world where there would be tight deadlines, having to work in teams and continuously learning and growing with the changing technologies and tools.

Qianying

The overall FYP journey was an exciting and enriching one. As a group, we pushed our limits to not just attaining an acceptable level, but to go beyond that with continuously improvements by consistently reviewing issues and conducting endless discussion.

As a usability analyst, I learnt to think like a first timer who has never use the application before and pick up information or functions which are important to aid user in navigating the application. To ensure high quality of functions, I would pretend to be someone who tries to crash the system by stress testing the application. I would test every possible scenario to ensure that the system works properly and does not crash.

Eileen

FYP emphasize the need to learn as you go as I had to heavily research about the Dos and Don'ts when developing the Android application. And that it is also important to try and modify, as what might work for one developer, might not be the solution you are looking for.

Aside from that, having teammates to bounce ideas about how the function should be presented is rather important. Endless discussions has led to our User Interface changing drastically from the beginning to the end. And I rather like the results.

Emerald

This FYP is about working as a group to achieve the same goal. Each one of us has our own strength and working style, thus it's important for us to brainstorm, share our own opinion, discuss to not only find the best solution for the system, but also enhance our productivity and efficiency.

During this project, I have learnt how to think as a user, not a programmer when designing a web. Sometimes when looking at the website in a different perspective, I found out what was really needed to make the website easier to navigate and comprehend for users. It is important to note down feedbacks from groupmates as well, they are the real users that can give me invaluable suggestions. Besides, working with new programming language is not easy but fun. It requires a lot of research but it gives me endless interesting aspects to explore.

Sitemap

STEEP Main Page