HeaderSIS.jpg

IS480 Team wiki: 2016T1 FitNexx6 Final Wiki

From IS480
Jump to navigation Jump to search


FitNexx6 logo.jpg
FitNexx6 NavBar Home.gif
FitNexx6 NavBar Aboutus.gif
FitNexx6 NavBar Overview.gif
FitNexx6 NavBar Mgmt.gif
FitNexx6 NavBar Documentation.gif




Finals Wiki

Project Progress Summary

Finals Presentation Slides

Project Highlights

  • Successfully implement MapBox into FitNexx Mobile App.
  • Completed User Testing 1 with encouraging results. Almost all key featured yielded no major bugs.
  • Republic Polytechnic (RP), St Joseph Institude (SJI) expressed interest in the application.
  • Held preliminary talks with RP to know more about their needs as well as to gain feedback about our current app
  • Pitched project to Red Hat.
  • Completed User Testing 2, which included iOS.
  • Successfully deployed app onto Apple App Store and Google Play Store
  • Completed Final User Acceptance Testing

Project Management

Project Status

# Task Description Status Confidence Level Remarks
1 User Module Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
2 Fitness Module Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
3 Reward Module Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
4 Monitoring Module Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
5 View Redemption History (Admin Module) Development 100% Completed & Tested. Deployed on production server. 1.0 -
6 Create/Modify Checkpoints + Generate Checkpoint QR Code (Admin Module) Development 100% Completed & Tested. Deployed on production server. 1.0 -
7 Staff Account Management (Admin Module) Development 100% Completed & Tested. Deployed on production server. 1.0 -
8 Manage Rewards + Inventory (Admin Module) Development 100% Completed & Tested. Deployed on production server. 1.0 -
9 Missions (Gamification Module) Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
10 Mission Management (Gamification/Admin Module) Development 100% Completed & Tested. Deployed on production server. 1.0 -
11 Clan 'Adventure' (Gamification Module) Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
12 Analytics Module Development 100% Completed & Tested. 1.0 -
13 News Module Development 100% Completed & Tested. Published on Google Play Store & Apple App Store 1.0 -
14 User Onboarding Tutorial (Misc Feature) Development 100% Completed & Tested. 1.0 -

Project Schedule (Planned Vs. Actual)

Original Project Timeline (Acceptance)

 

FitNexx6 Schedule v1.png

Current Project Timeline

FitNexx6 Schedule v3(With Highlighted Changes).png

Changes

Point Description Reason for Change
A Redeem Rewards and Admin Login/Logout brought forward from Iteration 4. Manage rewards brought forward from Iteration 6 Separate developer for developing Admin Portal, hence task brought forward. Team decided that having different developers on different platform would help increase pace of development as long as there was constant communication.
B Addition of User Tiering & Viewing Reward Redemption History & Manage checkpoints Previously not added in old timeline, but is part of client's requirements.
C Addition of Activeness Tracking & Bringing forward of Edit Users Activeness Tracking added in as part of Change Request #2. View change requests here.
D Bringing forward development of Gamification Module Upon recommendation of our supervisor as this is one of our secondary modules and one of our key features, we should do it before Analytics.
E Monitoring Module pushed back. Previously from Iteration 6. Development still at early stage, not enough data to properly design the dashboard.
F Analytics Module pushed back. Previously form Iteration 8. See Point D. In addition, additional use cases were added for analytics.
G Addition of an new feature in the Gamification Module 'Adventure' added in as part of Change Request #3. View change requests here.
H Date of User Testing 2 pushed back to 26th Sep. Previously 5th Sep. Delay in getting iOS Developer Program Account as well as in development of iOS features.

Project Metrics

FitNexx6 Task Metrics (Finals).png
  • Iteration 2 was the first coding iteration. Members were still learning the technologies required. Planning of tasks were still unrefined.
  • Subsequent iterations were more stable
  • Iteration 7 went slightly below the mark as it was the start of the development on the iOS platform and due to limited resources (Mac OS with Xcode), the development was slower than expected.
FitNexx6 Bug Metrics (Finals).png

Project Risks

Throughout the project there were various risks which our team identified and planned appropriate mitigation. As the project progressed the nature of risks changed and our team was required to reevaluate and reassess the various risks. At the beginning of the project, most of the risks we faced were usually concerning the usage of new technologies, which was mostly overcome by additional research and learning before actual coding tasks. As the project progressed, these risks eventually subsided. Midway through the project, we identified new potential risks such as delays in obtaining certain resources such as the Apple App Developer Account. While not all risks were smoothly dealt with, we were able to learn many important lessons from them.

The list of project risk can be found here.

Technical Complexity

# Complexity Why we do/use it? Reason for Complexity How we overcame it?
1 Using Ionic framework Allows hybrid mobile development so to increase our development speed on dual platforms Mostly uses AngularJS and HTML5, both of which our team had not much expertise in. We also have to learn the structure and the capabilities provided by Ionic. In addition, to AngularJS & HTML5, our team also picked up SCSS to help us better manage the many different styles provided by the Ionic Framework Team member spent much time at the start of the project to learn and experiment with Ionic
2 Developing plugins for Ionic framework We needed to use HealthKit and GoogleFit, on iOS and Android respectively, to access the pedometer and retrieve the step count of users In choosing Ionic to speed up hybrid development, we forgo certain features and functions that can be easily implemented in native code. Also, Ionic itself does not provide support for GoogleFit or HealthKit We developed native plugins using Java and Objective-C for GoogleFit and HealthKit respectively and configure it to become a ionic- compatible plugin to bridge the gap between Ionic and the native platforms
3 Integration of Map features with Mission & The need to empower an Admin user to make changes to App Maps via admin portal This is important as integration is the key to make it intuitive for both the Admin users to add locations (checkpoints) to the in-app map, and for students to easily identify the checkpoints and missions on the map It is difficult to manipulate the map via inputs from a Web Portal or from another page dynamically and in real time Team members from backend and frontend sat together and analysed our code and database schemas and how we can format the output using JSON for the map
4 Automating the creation of an adventure as much as possible We want to make this an effortless process for the Admin On a given date and time, we need to be able to trigger off a series of activities in the background to create an Adventure. All these activities are automated and hence, we need to ensure all necessary activities are completed successfully We created Scheduled Tasks that would be activated on the given dates to execute all given tasks. Additional checks are in place to ensure that there will be no conflicts
5 Using analytics to provide insights into users' behavior We want to help our client come up with new initiatives to improve the fitness of the users based on our insights As there were large amounts of data collected, we needed to scrub and identify useful information as well as visualize the data. As this is also a new source of information to our sponsor, they did not have any specific use cases in mind. As such, we also had to consider the usefulness of the analytics information we provide and at the same not provide excessive amounts of information We studied the data to identify relationships and consulted our client to determine what will be useful to them. We also used ChartJS to visualize the data in a meaningful way

Quality of Product

Intermediate Deliverables

Stage Specification Modules
Project Management Minutes Minutes for Sponsor, Supervisor & Internal Meetings
Metrics Task & Bug Metrics
Risk Management Risk Management Table
Change Management Change Management Process & Record
Requirements & System Design Use Cases Use Case Diagram
Access Controls Access Control Diagram
System Architecture System Diagram
ER Diagram ER Diagram
Misc Pitch Pitch Video
Poster Poster

Deployment

Google Play Store

Download it here


Apple App Store

Download it here

Testing

In total there are 3 User Testings that have been planned in the project timeline.

Testing Tester Profile Number of Testers Objectives Scope
User Testing 1 Staff of Ngee Ann, Ngee Ann Polytechnic Students and other public testers 1 Staff (Sponsor), 8 Ngee Ann Polytechnic Students, 6 public testers
  • Gather feedback with regards to heuristics and design of the existing functions from staff, end users (student and public)
  • Identify usability issues not found in developed phase
  • Identify room for improvement
Android Platform Only
  • Register
  • Log in / Log out
  • Dashboard
  • Progression Chart
  • Leaderboard
  • Redeem rewards
  • Checkpoint Maps around school
User Testing 2 (In-progress from 26th Sep to 30th Sep) Staff of Ngee Ann, Ngee Ann Polytechnic Students and Tertiary Students(Sponsor request). 3 Staff, 24 Ngee Ann Polytechnic Students
  • Gather feedback with regards to heuristics and design of the existing functions from staff, end users (student and public)
  • Identify usability issues not found in developed phase
  • Identify room for improvement
Both iOS and Android Platform
  • All functions from UT1
  • User Missions
  • Newsfeed
Final User Acceptance Test Staff of Ngee Ann, Ngee Ann Polytechnic Students and Tertiary Students(Sponsor request). 25 Tertiary Students, 25 NP Students, 1 NP Staff
  • Gather feedback with regards to heuristics and design of the existing functions from staff, end users (student and public)
  • Identify usability issues not found in developed phase
  • Identify room for improvement
Both iOS and Android Platform
  • All functions from UT1 & UT2
  • Adventure
  • Analytics (Admin)

Reflection

Team Reflection

After working together for almost 5 months, our team has indeed grew even more bonded and stronger. Team members are now more familiar with their roles and are able to execute tasks with far greater efficiency than before. The team has grown to become more than just a FYP team, team members often help each in other modules as well as provide each other with psychological support. On the technical side of things, members have grown more adept in their tasks. For example, front-end developers are now more familiar with using Sass in Ionic, whereas Backend developers are more familiar with the various plugins, such as HealthKit & GoogleFit, required for the application. Moving forward, our team hopes to grow even more and to deliver a successful project.

FitNexx6 Members Reflection.png