https://wiki.smu.edu.sg/is480/api.php?action=feedcontributions&user=Mohamedsh.2011&feedformat=atomIS480 - User contributions [en-gb]2024-03-29T11:56:14ZUser contributionsMediaWiki 1.33.1https://wiki.smu.edu.sg/is480/index.php?title=File:Genshyft_Mid-Term_Bug.png&diff=188621File:Genshyft Mid-Term Bug.png2014-04-16T06:56:43Z<p>Mohamedsh.2011: Mohamedsh.2011 uploaded a new version of &quot;File:Genshyft Mid-Term Bug.png&quot;</p>
<hr />
<div></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User&diff=186639IS480 Team wiki: 2013T2 GENShYFT Documentation User2014-04-13T09:38:18Z<p>Mohamedsh.2011: /* User Testing */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#ffffff" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation | <font color="#000000"><b>Overview</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#000000" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase |<font color="#000000" size=2><b>Diagrams</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User |<font color="#FFFFFF" size=2><b>User Testing</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_present |<font color="#000000" size=2><b>Presentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto | <font color="#000000" size=2><b>Prototype</b></font>]]<br />
<br />
|}<br /><br />
<br /><br />
=Regression Test=<br />
Adhering to the advice given by reviewers during Mid Term Review, we decided to write scripts to automate Regression Testing. We approached this by leveraging on the Automated Testing capabilities of Singpath and further extended it.<br /><br /><br />
<br />
Although there are many different ways to implement the scripts for automated testing, we have decided on the one that is the most cost-effective in terms of resources required - E2E test<br /><br />
<br /><br />
<br />
'''Automated E2E Tests'''<br /><br />
As our features in Singpath is already on the Live Server since Mid Terms, our development work may affect the existing codes and the most obvious indication that Singpath broke is not so much on the logic, but the view/display layer (User Interface). <br /><br /><br />
To the end users, the pages will simply not load/show if there is something wrong with our code, to address that issue, we have specifically zeroed in to write additional test scripts to cover all of our pages.<br /><br />
<br /><br />
'''How it works'''<br /><br />
<br />
Test scripts are written into a file within the application, and will be executed when it is sent to Travis CI, a distributed continuous integration service used to build and test projects hosted at GitHub, which is the repository that we have been using for the development of Singpath. <br /><br />
<br />
Travis CI automatically detects when a commit has been made and pushed to a GitHub repository that is using Travis CI, and each time this happens, it will try to build the project and run tests. Travis CI will also build and run pull requests. When that process has completed, it will notify our Client as well as showing the test results (success or failure) with our pull request (pre-deployment check). <br /><br />
<br />
What this means is that every time we commit and send a pull request, the test script is run automatically and we will be shown a result whether something in our new codes 'broke' the application. With this, we are confident to say that every time we push new changes to the live site, the view/display layer will always render.<br /><br />
<br />
<br />
'''Results/Outcome'''<br /><br />
<br />
Extended routeSpec.js test scripts by 125%, added 26 additional routing to the existing 19.<br /><br />
<br /><br />
Win-win - our live deployment will never be shown 'broken pages', future teams can make use of our scripts (Value Add for Client)<br />
<br />
<br/><br />
<br />
=User Testing=<br />
<!--Please click [[Media:GENShYFT Test Plan 140221.pdf|here]] for our Test Plan.<br />--><br />
We employed a variety of evaluation techniques learnt from IS306 class the previous semester. The evaluation tests that we administered include the following methods:<br />
# Lab Experiment<br />
# Heuristic Evaluation<br />
# Field Study<br />
# Sample Survey<br />
# Judgement Study<br />
# [http://www.intuitionhq.com/blog/2011/04/ab-and-preference-testing-for-usability| Preference Test]<br />
<br /><br />
{| class="wikitable centered" width="100%"<br />
!Method<br />
!Details<br />
!Documents<br />
!Results<br />
<br />
|-<br />
|Lab Experiment<br /><br />
Heuristic Evaluation<br />
|Date: 11/2/2014<br /><br />
Participants: 15<br /><br />
Location: SMU SIS GSR 2-5<br /><br />
Objective: Functionality Test and Heuristic Evaluation<br /><br /><br />
<br />
<div class="center"><br />
<imagemap><br />
Image:GENShYFTFirstTest.png|600px|alt=GENShYFT First Test<br />
default [https://wiki.smu.edu.sg/is480/IS480_Team_wiki%3A_2013T2_GENShYFT_Documentation_User_UT1_Gallery]<br />
</imagemap><br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User_UT1_Gallery|Photo Gallery]]<br />
|<br />
[[Media:AY1314-T2_IS480_GENShYFT_Tester's Package A.pdf|Tester's Package A]]<br /><br />
[[Media:AY1314-T2_IS480_GENShYFT_Tester's Package B.pdf|Tester's Package B]]<br /><br />
[[Media:AY1314-T2_IS480_GENShYFT_Script.pdf|Script]]<br /><br />
[https://docs.google.com/forms/d/1fTnlxzCZzOGsBypmR7XrH9yanaRQ_RyhJQTWagaDS1Q Heuristic Evaluation]<br /><br />
[https://docs.google.com/forms/d/1_HDwRX0Q9GD5Ak3j81jbxKLTrUwCwyzHXEgEs1kosBA Questionnaire]<br /><br />
[https://docs.google.com/forms/d/15Y2hghRZeRLCDS8BIrLburykacqsrv6ODEZLlMVSAkY Observer's Guide]<br /><br />
|<br />
[[Media:GENShYFT UAT 1 Test Results.pdf|UAT 1 & HE 1 Test Results]]<br /><br />
|-<br />
|Field Study<br /><br />
|Date: 19/3/2014<br /><br />
'''In-class Tournament Held [Real Life Use Case]'''<br /><br />
Participants: 30 <br /><br />
Location: SMU SIS SR 3-2 (IS429 Week 11 Class)<br /><br />
Objective: Load Test to ensure Singpath can handle an entire class of concurrent users<br /><br /><br />
<br />
<div class="center"><br />
<imagemap><br />
Image:GENShYFTSecondTest.png|600px|alt=GENShYFT Second Test<br />
default [https://www.facebook.com/media/set/?set=a.289817004509197.1073741830.288817147942516&type=1]<br />
</imagemap><br />
[https://www.facebook.com/media/set/?set=a.289817004509197.1073741830.288817147942516&type=1| View More Pictures here!]<br />
|None<br />
|Observation - Load Test Successful<br /><br />
<br /><br />
[[Media:GENShYFT_Observations.pdf|Observations]]<br /><br />
|-<br />
|Field Study<br />
|Date: 21/3/2014<br /><br />
'''Actual Tournament Held [Real Life Use Case]''' <br /><br />
Participants: 20 Secondary School students (Actual Users) <br /><br />
Location: SMU SIS SR 2-1<br /><br />
Objective: Field Study to observe users interaction with Singpath in an uncontrolled environment<br /><br />
<div class="center"><br />
<imagemap><br />
Image:GENShYFTThirdTest.png|600px|alt=GENShYFT Third Test<br />
default [https://www.facebook.com/media/set/?set=a.290625361095028.1073741831.288817147942516&type=1]<br />
</imagemap><br />
[https://www.facebook.com/media/set/?set=a.290625361095028.1073741831.288817147942516&type=1| View More Pictures here!] Part 1<br /><br />
[https://www.facebook.com/media/set/?set=a.292588620898702.1073741832.288817147942516&type=1| View More Pictures here!] Part 2<br />
|[http://tinyurl.com/spidasecgs Post IDA Sec Sch Tournament Survey]<br />
|Sec Sch Post Tournament Survey<br /><br />
Unable to administer survey; requires clearance by sponsor IDA<br /><br />
Tournament proceeded smoothly with minor hiccups<br /><br />
<br /><br />
[[Media:GENShYFT_Observations.pdf|Observations]]<br /><br />
|-<br />
|Field Study<br /><br />
Judgement Study<br /><br />
Sample Survey<br />
|Date: 29/3/2014<br /><br />
'''Actual Tournament Held [Real Life Use Case]'''<br /><br />
Participants: 35 JC/High School Students (Actual Users)<br /><br />
Location: SMU SIS SR 2-1<br /><br />
Objective: Field Study to observe users interaction with Singpath in an uncontrolled environment<br /><br /><br />
<br />
<div class="center"><br />
<imagemap><br />
Image:GENShYFTFourthTest.png|600px|alt=GENShYFT Fourth Test<br />
default [https://www.facebook.com/media/set/?set=a.293511244139773.1073741834.288817147942516&type=1]<br />
</imagemap><br />
[https://www.facebook.com/media/set/?set=a.293511244139773.1073741834.288817147942516&type=1| View More Pictures here!]<br />
|[http://tinyurl.com/jcsingpath Post PayPal JC Tournament Survey]<br />
|[[Media:GENShYFT_JCSurveyResults.pdf|JC Post Tournament Survey Results]]<br /><br />
Tournament proceeded smoothly without hiccups<br /><br />
<br /><br />
[[Media:GENShYFT_Observations.pdf|Observations]]<br /><br />
|-<br />
|Field Study<br /><br />
Judgement Study<br /><br />
Sample Survey<br />
|Date: 29/3/2014<br /><br />
'''Actual Tournament Held [Real Life Use Case]'''<br /><br />
Participants: 29 Poly Students (Actual Users)<br /><br />
Location: SMU SIS SR 2-1<br /><br />
Objective: Field Study to observe users interaction with Singpath in an uncontrolled environment<br /><br /><br />
<br />
<div class="center"><br />
<imagemap><br />
Image:GENShYFTFifthTest.png|600px|alt=GENShYFT Fifth Test<br />
default [https://www.facebook.com/media/set/?set=a.293517594139138.1073741835.288817147942516&type=1]<br />
</imagemap><br />
[https://www.facebook.com/media/set/?set=a.293517594139138.1073741835.288817147942516&type=1| View More Pictures here!]<br />
|[http://tinyurl.com/singpathpoly Post PayPal Poly Tournament Survey]<br />
|[[Media:GENShYFT_PolySurveyResults.pdf|Poly Post Tournament Survey Results]]<br /><br />
Tournament proceeded smoothly without hiccups<br /><br />
<br /><br />
[[Media:GENShYFT_Observations.pdf|Observations]]<br /><br />
|-<br />
<br />
<br />
|}</div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186408IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:19:36Z<p>Mohamedsh.2011: /* Supervisor Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
<br />
* After every meeting with the sponsor & supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded. It will be treated as a continuation of the meeting with supervisor or sponsor respectively.<br />
<br />
* Average 1 meeting / week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
* Average 1 meeting / week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
* After every meeting with the supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
<br />
* Average 1 meeting / 1.5 week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186406IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:19:10Z<p>Mohamedsh.2011: /* Sponsor Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
<br />
* After every meeting with the sponsor & supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded. It will be treated as a continuation of the meeting with supervisor or sponsor respectively.<br />
<br />
* Average 1 meeting / week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
* Average 1 meeting / week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
* After every meeting with the supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186402IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:18:41Z<p>Mohamedsh.2011: /* Internal Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
<br />
* After every meeting with the sponsor & supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded. It will be treated as a continuation of the meeting with supervisor or sponsor respectively.<br />
<br />
* Average 1 meeting / week.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
* After every meeting with the supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186400IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:17:32Z<p>Mohamedsh.2011: /* Internal Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
<br />
* After every meeting with the sponsor & supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded. It will be treated as a continuation of the meeting with supervisor or sponsor respectively.<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
* After every meeting with the supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186398IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:16:39Z<p>Mohamedsh.2011: /* Supervisor Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
* After every meeting with the supervisor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes&diff=186397IS480 Team wiki: 2013T2 GENShYFT Project Management minutes2014-04-13T04:16:14Z<p>Mohamedsh.2011: /* Sponsor Meeting Minutes */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#000000"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#ffffff" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br />
<!-- Text --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#FFFFFF; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management | <font color="#000000"><b>X-Factor</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_risk |<font color="#000000" size=2><b>Risk</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_Schedule |<font color="#000000" size=2><b>Schedule</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_metric |<font color="#000000" size=2><b>Metric</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#000000; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management_minutes | <font color="#FFFFFF" size=2><b>Minutes</b></font>]]<br />
<br />
|}<br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Internal Meeting Minutes</font></div>===<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 02-Oct-2013 || [[Media: InMeeting(1)02102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 14-Oct-2013 || [[Media: InMeeting(2)14102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 01-Nov-2013 || [[Media: Meeting(3)011113.pdf | Meeting 3]] || [[Media: InMeeting(3)011113slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 4 || 05-Nov-2013 || [[Media: Meeting(4)051113.pdf | Meeting 4]] || nil<br />
<br />
|- align = "left"<br />
| 5 || 23-Dec-2013 || [[Media: Meeting(5)231213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
<br />
| 6 || 07-Jan-2014 || [[Media: Meeting(6.1)070114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 10-Jan-2014 || [[Media: Meeting(7)100114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Jan-2014 || [[Media: Meeting(8)140114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 16-Jan-2014 || [[Media: Meeting(9)160114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 17-Jan-2014 || [[Media: Meeting(10)170114.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 21-Jan-2014 || [[Media: Meeting(11)210114.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 24-Jan-2014 || [[Media: Meeting(12)240114.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 28-Jan-2014 || [[Media: Meeting(13)280114.pdf | Meeting 13]] || nil<br />
<br />
|- align = "left"<br />
| 14 || 04-Feb-2014 || [[Media: Meeting(14)040214.pdf | Meeting 14]] || nil<br />
<br />
|- align = "left"<br />
| 15 || 18-Feb-2014 || [[Media: Meeting(15)180214.pdf | Meeting 15]] || nil<br />
<br />
|- align = "left"<br />
| 16 || 04-Mar-2014 || [[Media: Meeting(16)040314.pdf | Meeting 16]] || nil<br />
<br />
|- align = "left"<br />
| 17 || 11-Mar-2014 || [[Media: Meeting(17)110314.pdf | Meeting 17]] || nil<br />
<br />
|- align = "left"<br />
| 18 || 18-Mar-2014 || [[Media: Meeting(18)180314.pdf | Meeting 18]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Sponsor Meeting Minutes</font></div>===<br />
<br />
* After every meeting with the sponsor, the team will do a quick updates to each other , alas , this is not a formal meeting hence, no minutes was recorded.<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 17-Sep-2013 || [[Media: SSMeeting(1)17092013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 16-Oct-2013 || [[Media: SSMeeting(2)16102013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 05-Nov-2013 || [[Media: SSMeeting(3)051113.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 05-Dec-2013 || [[Media: SSMeeting(4)051213.pdf | Meeting 4]] || [[Media: InMeeting(4)051213slides.pptx | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 11-Dec-2013 || [[Media: SSMeeting(5)111213.pdf | Meeting 5]] || nil<br />
<br />
|- align = "left"<br />
| 6 || 08-Jan-2014 || [[Media: SSMeeting(6)080114.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 15-Jan-2014 || [[Media: SSMeeting(7)150114.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 22-Jan-2014 || [[Media: SSMeeting(8)220114.pdf | Meeting 8]] || nil<br />
<br />
|- align = "left"<br />
| 9 || 29-Jan-2014 || [[Media: SSMeeting(9)290114.pdf | Meeting 9]] || nil<br />
<br />
|- align = "left"<br />
| 10 || 12-Feb-2014 || [[Media: SSMeeting(10)120214.pdf | Meeting 10]] || nil<br />
<br />
|- align = "left"<br />
| 11 || 04-Mar-2014 || [[Media: SSMeeting(11)040314.pdf | Meeting 11]] || nil<br />
<br />
|- align = "left"<br />
| 12 || 11-Mar-2014 || [[Media: SSMeeting(12)110314.pdf | Meeting 12]] || nil<br />
<br />
|- align = "left"<br />
| 13 || 26-Mar-2014 || [[Media: SSMeeting(13)260314.pdf | Meeting 13]] || nil<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
===<div style="background: #040404; padding: 15px; font-weight: bold; line-height: 0.3em"><font color= #ffffff>Supervisor Meeting Minutes</font></div>===<br />
<br />
{|border="1" cellpadding="5" cellspacing="0" align="left" text-align="center"<br />
|-<br />
!! scope="col" style="background: #323232;" | <font color="#FFFCFC">No. </font>!! scope="col" style="background: #323232" |<font color="#FFFCFC"> Date </font> !! scope="col" style="background: #323232;"|<font color="#FFFCFC"> Minutes </font>!! scope="col" style="background: #323232;" |<font color="#FFFCFC"> Additional Documents</font> <br />
<br />
|- align = "left"<br />
| 1 || 16-Oct-2013 || [[Media: SPMeeting(1)16102013.pdf | Meeting 1]] || nil<br />
<br />
|- align = "left"<br />
| 2 || 10-Jan-2014 || [[Media: SPMeeting(2)10012013.pdf | Meeting 2]] || nil<br />
<br />
|- align = "left"<br />
| 3 || 17-Jan-2014 || [[Media: SPMeeting(3)17012013.pdf | Meeting 3]] || nil<br />
<br />
|- align = "left"<br />
| 4 || 24-Jan-2014 || [[Media: SPMeeting(4)24012013.pdf | Meeting 4]] || [[Media: SPMeetingSlides(4)24012013.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 5 || 07-Feb-2014 || [[Media: SPMeeting2(5)07022014.pdf | Meeting 5]] || [[Media: SPMeetingSlides(5)07022014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 6 || 14-Feb-2014 || [[Media: SPMeeting2(6)14022014.pdf | Meeting 6]] || nil<br />
<br />
|- align = "left"<br />
| 7 || 05-Mar-2014 || [[Media: SPMeeting2(7)11032014.pdf | Meeting 7]] || nil<br />
<br />
|- align = "left"<br />
| 8 || 14-Mar-2014 || [[Media: SPMeeting2(8)14032014.pdf | Meeting 8]] || [[Media: SPMeetingSlides(8)14032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 9 || 28-Mar-2014 || [[Media: SPMeeting2(9)28032014.pdf | Meeting 9]] || [[Media: SPMeetingSlides(9)28032014.pdf | Meeting Slides]]<br />
<br />
|- align = "left"<br />
| 10 || 04-Apr-2014 || [[Media: SPMeeting2(10)04042014.pdf | Meeting 10]] || nil<br />
<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br />
<br />
<br></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186077GenSHYFT Final Term Wiki2014-04-12T13:47:24Z<p>Mohamedsh.2011: /* Project Deliverables: */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| 2|| Sometimes emails become to messy to track request, bugs or any conversation especially when there is multiple stake holders. Since the system is also live, users are consistently giving feedbacks. We needed a way to track all of these whist also determine if they are important/within scope or non-essential||<br />
# Implement the use of Pivitol Tracker<br />
# Client can assign change or bugs reported in there.<br />
# Project manager will look through it and respond accordingly. (Accept/reject/clarify)<br />
# Centralized system to communicate.<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover <br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
<b> TO BE ADDED BY ENG SEN AND FARIQ </B><br />
<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186076GenSHYFT Final Term Wiki2014-04-12T13:44:58Z<p>Mohamedsh.2011: /* Team Reflection: */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| 2|| Sometimes emails become to messy to track request, bugs or any conversation especially when there is multiple stake holders. Since the system is also live, users are consistently giving feedbacks. We needed a way to track all of these whist also determine if they are important/within scope or non-essential||<br />
# Implement the use of Pivitol Tracker<br />
# Client can assign change or bugs reported in there.<br />
# Project manager will look through it and respond accordingly. (Accept/reject/clarify)<br />
# Centralized system to communicate.<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
<b> TO BE ADDED BY ENG SEN AND FARIQ </B><br />
<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186075GenSHYFT Final Term Wiki2014-04-12T13:42:14Z<p>Mohamedsh.2011: /* Challenges in General : Mid-Terms - Finals */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| 2|| Sometimes emails become to messy to track request, bugs or any conversation especially when there is multiple stake holders. Since the system is also live, users are consistently giving feedbacks. We needed a way to track all of these whist also determine if they are important/within scope or non-essential||<br />
# Implement the use of Pivitol Tracker<br />
# Client can assign change or bugs reported in there.<br />
# Project manager will look through it and respond accordingly. (Accept/reject/clarify)<br />
# Centralized system to communicate.<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186074GenSHYFT Final Term Wiki2014-04-12T13:41:06Z<p>Mohamedsh.2011: /* Challenges in General : Mid-Terms - Finals */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| 2|| Sometimes emails become to messy to track request, bugs or any conversation especially when there is multiple stake holders and live users consistently vetting the system.||<br />
# Implement the use of Pivitol Tracker<br />
# Client can assign change or bugs reported in there.<br />
# Project manager will look through it and respond accordingly. (Accept/reject/clarify)<br />
# Centralized system to communicate.<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186073GenSHYFT Final Term Wiki2014-04-12T13:40:06Z<p>Mohamedsh.2011: /* Challenges in General : Mid-Terms - Finals */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| 2|| Sometimes emails become to messy to track request, bugs or any conversation especially when there is multiple stake holders and live users consistently vetting the system.||<br />
# Implement the use of Pivitol Tracker<br />
# Client and assigned change or bugs reported in there.<br />
# Project manager will look through it and respond accordingly. ( Accept/reject/clarify )<br />
# Centralized system to communicate.<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186072GenSHYFT Final Term Wiki2014-04-12T13:36:56Z<p>Mohamedsh.2011: /* Challenges in General : Mid-Terms - Finals */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
<br />
<br />
{| class="wikitable"<br />
|-<br />
! S/n !! Challenges !! Solution<br />
|-<br />
| 1|| Client has a lot of ideas and wants. This is difficult for the team to manage as we consistently need to re adjust our priorities and resources. The cause of delays for previous iterations. || <br />
# Project Manager has a discussion with client to fully understand what is required<br />
# Determined ''additional'' non - essential contents that does not affect the success of this project.<br />
# Discussed and agreed on a direction . ( Removed Wed Prototyping , Problem Contribution and Map Registration )<br />
|-<br />
| Example || Example || Example <br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
<br />
# Client has a lot of ideas and wants.<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186069GenSHYFT Final Term Wiki2014-04-12T13:31:30Z<p>Mohamedsh.2011: /* Changes in Scope */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Shanaaz add the new scope here ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186068GenSHYFT Final Term Wiki2014-04-12T13:29:51Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
Mid-terms up to Iterations 7 only.<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186065GenSHYFT Final Term Wiki2014-04-12T13:28:51Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> <br />
* As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Multiple UTs to ensure best for users.<br />
* Additional service to improve value for our client.<br />
* Bugs count were high but extended debugging session was scheduled to mitigate this.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186064GenSHYFT Final Term Wiki2014-04-12T13:27:11Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> * As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186063GenSHYFT Final Term Wiki2014-04-12T13:26:34Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
|-<br />
<br />
|- <br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
|| Debugging Group based tournament(All)<br />
|| Across Iterations<br />
||<br />
* This was scheduled as we expect high rates of Bugs discovered for UTs<br />
<span style="color:red"> *As a respond to RP, Tournament can have 1 creator, but multiple collaborators ( who has similar rights to its creators ). </span><br />
<br />
<br />
|-<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186060GenSHYFT Final Term Wiki2014-04-12T13:21:09Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to <b> improve overall user's impression of Singpath </b> voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> <b> Value Added Service </b> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* <b> Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chair in their campus. </b><br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
<br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186059GenSHYFT Final Term Wiki2014-04-12T13:18:40Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="9"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
||<br />
||<span style="color:green"> Discussion with RP on using Singpath </span><br />
|| Across Iterations<br />
||<span style="color:green"><br />
* Spoke to Republic Polytechnic with regards to using Singpath for their curriculum.<br />
* Demonstrated system to Republic polytechnic Lecturers, Problem crafters and Modules Chairs.<br />
* Did a user study on RP Teach Requirements needs and handed over to our client so that he could have a better idea on how to work with them<br />
* Suggested a CSV format as a quick fix solution to RP specific needs.<br />
</span><br />
<br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186058GenSHYFT Final Term Wiki2014-04-12T13:13:05Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <span style="color:green"> <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)</span><br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| Wed Development Games.<br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
* Adjustment and enhancement to Wed Development games as client has prioritize this over Easy Web Prototyping.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <span style="color:green"> <b> Value Added Service </b> UT 6 A/B SPLIT TEST </span><br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186057GenSHYFT Final Term Wiki2014-04-12T13:10:54Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
# <span style="color:red"> Change Request </span> <br />
# <span style="color:green"> Value Added Willingly</span> <br />
# Regular Remark.<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| <br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <b> Value Added Service </b> UT 6 A/B SPLIT TEST<br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186056GenSHYFT Final Term Wiki2014-04-12T13:09:53Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
<span style="color:red"> Change Request </span> <span style="color:red"> Value Added Willingly </span> <br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| <br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <b> Value Added Service </b> UT 6 A/B SPLIT TEST<br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186055GenSHYFT Final Term Wiki2014-04-12T13:08:19Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| <br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <b> Value Added Service </b> UT 6 A/B SPLIT TEST<br />
|| 29th March<br />
||<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186054GenSHYFT Final Term Wiki2014-04-12T13:06:23Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 9<br />
|| Easy Web prototyping<br />
|| <br />
|| <br />
|| <br />
||<br />
* Easy Web prototyping Feature is no longer in our scope.<br />
|-<br />
<br />
|- <br />
|| Problem Contribution<br />
|| <br />
|| UT 2 - IS429 Cloud Computing Class<br />
|| 19th March<br />
||<br />
* Problem Contribution Feature is no longer in our scope.<br />
* <span style="color:red"> UT 2 was conducted in Dr. Boesch Class in an attempt to do a User Testing before the actually IDA Secondary Tournament and Load Testing.</span><br />
|-<br />
<br />
|- <br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
|| UT 3 - With Secondary School( IDA )<br />
|| 21st March<br />
||<br />
* Conducted UT with 20 Secondary School students from various school in Singapore.<br />
* UT/Tournament was proudly supported by <b> IDA. </b><br />
|-<br />
<br />
|- <br />
|| UT 4 - with JC/POLY Competition<br />
|| 29th March<br />
|| UT 4 - With JC Morning Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for JC students only.<br />
* There were a total of approximate 40 JC students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
|- <br />
|| <br />
||<br />
|| UT 5 - With POLY Afternoon Competition (Paypal)<br />
|| 29th March<br />
||<br />
* The UT/Tournament will be held specific for Poly students only.<br />
* There were a total of approximate 40 POLY students.<br />
* UT/Tournament was proudly supported by <b> Paypal .</b><br />
|-<br />
<br />
<br />
<br />
|- <br />
|| <br />
||<br />
|| <b> Value Added Service </b> UT 6 A/B SPLIT TEST<br />
|| 29th March<br />
||<br />
<span style="color:green"><br />
* Client wants a way to improve the stickiness and appeal of the website.<br />
* Based on the team's research, the team created a new Homepage in order to improve overall user's impression of Singpath voluntarily.<br />
* A/B Split test was conducted to ensure if the change in Homepage had a significant preference.<br />
* Approximately 80 people were involved in the A/B Slit.<br />
<span><br />
|-<br />
<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186050GenSHYFT Final Term Wiki2014-04-12T12:49:53Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Maps and Registration were to be put to its original working state.<br />
* Easy web prototyping is no longer client's key priority.<br />
* Minor UI changes for Events and logical changes for Mastery-based coaching ( After impact analysis )<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186049GenSHYFT Final Term Wiki2014-04-12T12:47:25Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="7"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
</span><br />
|-<br />
<br />
<br />
|-<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186046GenSHYFT Final Term Wiki2014-04-12T12:44:01Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
*<span style="color:red"> Client will like to display Events - details at the top of events ranking </span><br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186045GenSHYFT Final Term Wiki2014-04-12T12:43:17Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<br />
<br />
*<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
* Client will like to display Events - details at the top of events ranking *<br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186044GenSHYFT Final Term Wiki2014-04-12T12:42:38Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<br />
<br />
*<br />
<span style="color:red"> Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit. </span><br />
* Client will like to display Events - details at the top of events ranking *<br />
<br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186043GenSHYFT Final Term Wiki2014-04-12T12:40:48Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<br />
<span style="color:red"><br />
*<br />
Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit.<br />
* Client will like to display Events - details at the top of events ranking *<br />
</span><br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186042GenSHYFT Final Term Wiki2014-04-12T12:40:15Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<br />
<br />
*<br />
<span style="color:red" Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit.<br />
* Client will like to display Events - details at the top of events ranking *<br />
</span><br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186041GenSHYFT Final Term Wiki2014-04-12T12:39:24Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<br />
<span style="color:red"><br />
* Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit.<br />
* Client will like to display Events - details at the top of events ranking *<br />
</span><br />
<br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186040GenSHYFT Final Term Wiki2014-04-12T12:38:32Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations.<br />
<span style="color:red"><br />
* Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. The team acknowledge that this add on will improve the overall user experience. The team accepted this change which is merely a UI edit.<br />
* Client will like to display Events - details at the top of events ranking *<br />
</span><br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186027GenSHYFT Final Term Wiki2014-04-12T11:31:14Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Resolving Map Issues<br />
|| 28th Feb<br />
||<br />
* Initially the Map and registration works fine. However, due to an upgrade to the server, this function suddenly stopped working, the team had to resolve incompatibilities issues with Google Maps and our client's server.<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these new requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| <br />
|| <br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186026GenSHYFT Final Term Wiki2014-04-12T11:02:09Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assisted our client by making his Live-Tournament event bigger by contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but move allows us to conduct our UT with more user while adding <b>more value</b> to our client. ( Win-Win)<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186025GenSHYFT Final Term Wiki2014-04-12T11:01:04Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186024GenSHYFT Final Term Wiki2014-04-12T11:00:03Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service</b> Recruiting of Students for Live-Tournament Event (UT)<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186023GenSHYFT Final Term Wiki2014-04-12T10:59:05Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="6"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Wed Development Games<br />
|| 10th March<br />
|| Wed Development Games<br />
|| 3rd March<br />
||<br />
* As our client agreed to drop Easy Web Prototyping, the time for the previous function was given to Wed Development Games.<br />
* After thorough analysis of what our client needs, the complexity may be higher than what we had planned for, hence the additional time is user to offset any possible delays or complication for this function<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service </b><br />
Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186022GenSHYFT Final Term Wiki2014-04-12T10:51:47Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| <b>Value Added Service </b> Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186021GenSHYFT Final Term Wiki2014-04-12T10:50:54Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186020GenSHYFT Final Term Wiki2014-04-12T10:50:28Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<span style="color:red"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186019GenSHYFT Final Term Wiki2014-04-12T10:49:17Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color:red"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186018GenSHYFT Final Term Wiki2014-04-12T10:48:00Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color:blue"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186017GenSHYFT Final Term Wiki2014-04-12T10:47:30Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186016GenSHYFT Final Term Wiki2014-04-12T10:46:57Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186015GenSHYFT Final Term Wiki2014-04-12T10:46:29Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color:#0000FF"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186014GenSHYFT Final Term Wiki2014-04-12T10:45:51Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color:green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011https://wiki.smu.edu.sg/is480/index.php?title=GenSHYFT_Final_Term_Wiki&diff=186013GenSHYFT Final Term Wiki2014-04-12T10:44:53Z<p>Mohamedsh.2011: /* Plan Vs Actual by iterations ( Beginning to End ) */</p>
<hr />
<div><center><br />
[[Image:GENShYFT_IS480_1314_Logo.jpg|500 px]]<br />
</center><br />
<br />
<br />
<!-- Start of header --><br />
<br />
{|style="background-color:#FFFFFF; color:#FFFFFF padding: 5px 0 0 0;" width="100%" cellspacing="0" cellpadding="0" valign="top" border="0" |<br />
| style="padding:0.4em; font-size:120%; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; background-color:#000000; " width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT | <font color="#ffffff"><b>Home</b></font> ]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp; <br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Overview |<font color="#000000" size=2><b>Project Overview</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Project Management |<font color="#000000" size=2><b>Project Management</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation |<font color="#000000" size=2><b>Documentation</b></font>]]<br />
<br />
| style="border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; background:none;" width="1%" | &nbsp;<br />
| style="padding:0.4em; font-size:150%; background-color:#FFFFFF; border-bottom:4px solid #2f2929; border-top:5px solid #2f2929; text-align:center; color:#828282" width="10%" | [[IS480_Team_wiki:_2013T2_GENShYFT_The Team | <font color="#000000" size=2><b>The Team</b></font>]]<br />
<br />
|} <br />
<br />
<!-- End of header --><br />
<br/><br/><br />
==Project Progress Summary==<br />
<br />
Deployed Site Link: [http://www.singpath.com Actual Site|<b> View Site </b>] <br/><br />
Final-Term Slides: [[Media:Yet to insert.pdf |Final Term Slides]]<br />
<br />
<!--Place your Final slides link and deployed site link here--><br />
<br />
<!--For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].<br />
<br />
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].<br />
<br />
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.--><br />
<br />
===Project Highlights===<br />
====Changes in Scope====<br />
<br />
<br />
<center><br />
{| class="wikitable"<br />
|-<br />
! Final !! Mid-term !! Acceptance <br />
|-<br />
| Temp ||[[Image:GENSHYFT_IS480_SPCircle7.png|475px]] ||[[Image:Genshyft acceptance scope.jpg|600px]]<br />
|}<br />
</center><br />
<br />
==== Change Logs (Mid to Finals) ====<br />
<br />
<br />
{| border="1"<br />
|- style="background:#800000; color:white" <br />
|align="center"| Date<br />
|align="center"| Feature Affected <br />
|align="center"| Previously<br />
|align="center"| Currently<br />
|align="center"| Change Management Action <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament <br />
|| Not part of scope <br />
|| Create a CSV file format that would include Tournament and Round details <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 26/03/2014<br />
|| Tournament<br />
|| Not part of scope <br />
|| Include tournament collaborator feature in the Tournament feature. This is so that client's client would have the school directors be able to have a higher control over the tournament. <br />
|| The team received a list of requirements from client's client. Due to agreed upon requirements and team's limited time, team decided to complete this requirement. Team would have to allocate time to complete this. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| When sharing the Ranking page under Events feature via Facebook, those who click on the Ranking page link will only view Ranking for that Events and would not know what the Ranking is for. <br />
|| Client wants to add "I'd like to participate" and other buttons on the Ranking page so that those who access the shared link would know it is an event that they themselves might want to join, watch or keep updated about. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
<br />
<br />
<br />
|- style="background:white; color:black"<br />
|| 11/03/2014<br />
|| Events <br />
|| No check box available to send RSVP to those who signed up for Tournament at one shot.<br />
|| Client wants check box option "Select All" that let's school facilitators to send RSVP to all the students in an event. <br />
|| As this is a UI change, this will be taken into consideration<br />
|-<br />
|- style="background:white; color:black"<br />
|| 09/03/2014<br />
|| Mastery Based Coaching <br />
|| Client wanted 10 questions per game. <br />
|| Now Client wants 1 question per game. Logic will follow as such:<br/><br />
#Click Next problem<br/><br />
#New single problem game gets created<br/><br />
#Click run to solve problem<br/><br />
#Repeat until problem solved or player clicks "Skip Problem"<br/><br />
#Clear all boxes once game is over and wait for next problem to be pressed<br/><br />
|| As this is a major change in logic, team will only take into consideration a part of the change like taking the response per question and push it into the database<br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Registration & Tracking<br />
|| Map that allows user to see the number of players registered with respect to each school. <br />
|| Event ranking for event, display the people who have done mastery based coaching and purpose driven, badges, Events map, badges and levels completed.<br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current feature instead of trying to add on top of the existing feature. <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Easy Web Prototyping<br />
|| To do up a single page to implement simple Plunkr code. Save the text that people put in one box and insert it into an iFrame that renders it as a web page.<br />
|| Client changed feature name to 'Portfolio'. <br />
|| This feature will be <b>dropped</b>. The team realised that the scope of this change is of a large scale and it would be best for the team to focus on polishing the current features instead of adding new features <br />
|-<br />
<br />
|- style="background:white; color:black"<br />
|| 04/03/2014<br />
|| Web Dev Games<br />
|| To do up two modules, HTML and AngularJS on Practice page for users to learn. The games will be similar to Easy web prototyping by having live rendering of the codes as user codes. Client wanted users to code out HTML, JS and CSS file. <br />
|| There will no longer be multiple files. Instead, the feature will be implementing E2E (End to End) testing.<br />
|| Team took this requirement change into consideration since the task is deemed doable with team's current resources (sufficient time, manpower available, etc.)<br />
|-<br />
<br />
<br />
|}<br />
<br />
===Project Challenges===<br />
==== Challenges in General : Mid-Terms - Finals ====<br />
<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
# Numbered list item<br />
<br />
===Project Achievements:===<br />
<br />
<br />
* Successfully conducted 1 User Test and 1 Heuristic Evaluation By Mid Term<br />
* At least <font size=2>'''150'''</font> new users have registered with SingPath and indicated interest in participating in the tournament through our Events Page<br />
<br />
* Conducted Actual Tournament for Secondary (21/3) , Polytechnic(29/3) and JC students(29/3). A total of <font size=2>'''94''' </font> participants ( Sponsored by '''IDA''' & '''PayPal''' )<br />
* Successfully conducted 1 User Test as part of IS429 Cloud Computing lesson with <font size=2> '''40''' </font> SIS students. (19/3).<br />
* Conducted A/B Split Test (29/3) with '''74''' students to determine if original or our improved homepage will give better experience.<br />
* At leas 2 Research paper by client relating to our work.<br />
<br /><br /><br />
<br />
<!--Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.--><br />
<br />
==Project Management==<br />
<br />
===Project Schedule===<br />
<br />
==== Plan Vs Actual Timeline ====<br />
<center><br />
<br />
{| class="wikitable"<br />
|-<br />
! FINAL !! Mid-term !! Plan <br />
|-<br />
| [[Image:Genshyft_final_Timeline_Week13.png|800px]] ||[[Image:Genshyft is480 Time line Summary7.1.PNG|800px]] ||[[Image:Genshyft Acceptance timline.jpg|800px]]<br />
|}<br />
</center><br />
<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|| Iterations<br />
|colspan="2" align="center"| Planned<br />
|colspan="2" align="center"| Actual<br />
|| Comments<br />
|-<br />
<br />
==== Plan Vs Actual by iterations ( Beginning to End )====<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="3"| 3<br />
|| Purpose Driven - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Gathering New Requirements<br />
|| 5th Dec - 12th Dec<br />
|| <br />
* <span style="color:red"> Team discussed with clients new project scope from acceptance. </span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mastery Coaching - First Half<br />
|| 7th Nov - 11th Nov<br />
|| Creation of all paper prototypes<br />
|| 5th Dec - 12th Dec<br />
|| Client sign off prototypes<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team was delayed during iteration 3 as we were revising for finals. Iteration 3 started immediately after finals.<br />
|-<br />
<br />
<br />
|rowspan="4"| 4<br />
|| Purpose Driven - Second Half<br />
|| 22nd Dec<br />
|| Purpose Driven <br />
|| 31st Dec<br />
|| <br />
*Assigned to Yousof.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| Mastery Coaching- Second Half<br />
|| 22nd Dec <br />
|| Mastery Based Coaching<br />
|| 31st Dec<br />
|| <br />
*Assigned to Shanaaz.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Group Based Tournament<br />
|| 31st Dec<br />
||<br />
*Assigned to Glen.<br />
*Member originally assigned was away.(Notification only after acceptance)<br />
*Function was client top 3 priority.<br />
|-<br />
<br />
|colspan="5"| <br />
*Fariq , Wah Chun and Eng Sen were away for December. <br />
*Each available member had to be in charge of the development of each of the 3 functionalities in parallel in order to meet client's priority.<br />
*Project Manager and Business Analyst joined in the development temporarily due to a lack of resources.<br />
|-<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="5"| 5<br />
|| Co-organized event <br> Hour of Code<br />
|| 23 Dec <br />
|| Purpose Driven<br />
|| 15 Jan <br />
||<br />
*Yousof was coding both Purpose Driven and Mastery Based Coaching.<br />
* <span style="color:red"> Client made changes to UI on the features different from paper prototype. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| Recruit Participants for Singpath tournaments<br />
|| 23 Dec <br />
|| Mastery Based Coaching<br />
|| 15 Jan<br />
|| <br />
* Yousof was reassigned to this as Shanaaz faced difficulties with angularJS.<br />
* She was tasked to focus on her secondary role as co-PM.<br />
* <span style="color:red"> Client made changes to UI. </span> <br />
* <span style="color:red"> Client changed on the requirement of playing Mastery Base Coaching. User must complete a question before to master that question. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Group based tournament<br />
|| 15 Jan<br />
|| <br />
*Eng Sen was assigned 3rd week of December to assist - requires some time to learn. <br><br />
*Tournament which was planned to be held on the start of February was pushed back to 15 Feb, allowing the team to have more time to complete the functionality <br><br />
*As Glen was confident that the function was going well, only Eng Sen was assigned to assist.<br />
* <span style="color:red"> Client wanted a new JSON data structure for tournament instead of re-using client's existing data structure model. </span><br />
|-<br />
|- style="background:silver; color:black"<br />
|| <br />
|| <br />
|| Easy Web Prototyping<br />
|| 15 Jan<br />
|| <br />
*Fariq and Wah Chun joined on the 29th of December.<br />
*Both of them were tasked to develop this functionality and seize the opportunity to explore angularJS as much as possible.<br />
*<span style="color:red"> Client changed Collaborative Mode to Sharing of Codes Mode.</span><br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|colspan="5"| <br />
*Team has several changes in scope by client during this time, mainly for Purpose Driven Coding and Mastery Based Coaching.<br />
*Tournament group needed to create a brand new JSON data structure to support tournament. Development can continue after data structure is completed. Codes needed to be re-adapted to new data structure.<br />
|-<br />
<br />
<br />
|rowspan="8"| 6<br />
|| Predictive Analytics - ETL <br />
|| 10th Jan <br />
|| Group based tournament - Create Tournament<br />
|| 9th Feb<br />
|| <br />
*<span style="color:red"> Client changed the UI and logic flow of Create Tournament. </span><br />
*Eng Sen required to make changes to the UI.<br />
*As the Tournament was coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predictive Analytics - Statistical Application<br />
|| 10 Jan <br />
|| Group based tournament - Join Tournament<br />
|| 9th Feb<br />
|| <br />
*Glen encountered complication during creation of Join.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| Predict User's School <br />
|| 10 Jan <br />
|| Group based tournament - Live Ranking<br />
|| 9th Feb<br />
|| <br />
*As Tournament was behind, Fariq was reassigned from Web Development Prototyping to assist Tournament.<br />
*As competition is coming, this became top priority.<br />
*Client later postponed tournament to March which requires team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Register for Event<br />
|| 9th Feb<br />
||<br />
*<span style="color:red">As date is nearing, our client has a new requirement. To create an Events page.</span><br />
*<span style="color:red"> Client deemed this as high priority as currently, there is no means for people to register.<br />
*Wah Chun was reassigned to this.<br />
*<span style="color:red">Client added an Event-Ranking table requirement to display who will get in or get cut off from a particular event.</span><br />
*<span style="color:red">Client added Facebook Share requirement.</span><br />
*<span style="color:red">Client wanted current user's status to be shown requirement.</span><br />
*<span style="color:red">Client later postponed Tournament to March which required the team to re-prioritize.<br />
|-<br />
<br />
|| <br />
|| <br />
|| Mastery Based Coaching<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Mastery will now load 1 game. Mastery will not load new game. Mastery will determine the type of improvement user can make. </span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Purpose Driven<br />
|| 9th Feb<br />
|| <br />
* Republic polytechnic was interested on this function hence now became Client top priority after change in Tournament Competition date.<br />
* <span style="color:red"> Client recommended a different JSON data structure. </span><br />
* <span style="color:red"> Client change scope. Client wanted a Video-Gallery at the bottom of the page to allow user to see video progress.</span><br />
|-<br />
<br />
|| <br />
|| <br />
|| Developer's Documentation<br />
|| 9th Feb<br />
|| <br />
* Client wanted a technical documentation stating the API calls and explanation of codes.<br />
* Client wanted this ASAP.<br />
* Shanaaz, who was BA/Co-PM was assigned to do this documentation.<br />
<br />
|-<br />
|colspan="5"| <br />
* Client made several scope changes such as UI, Data structures and New Features. Almost every functionality had changes.<br />
* Tournament Competition had changed of dates which requires the team to re-prioritize while Client has different priorities along the way.<br />
* The team decided to put Web Development prototype on hold.<br />
|-<br />
<br />
<br />
<br />
|- style="background:silver; color:black"<br />
|rowspan="6"| 7<br />
|| UT<br />
|| 15th Feb<br />
|| UT<br />
|| 11th Feb<br />
|| <br />
* We moved forward the testing because more people were available on the 11th as opposed to 15th.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Mid-Term Preparation<br />
|| -<br />
|| Mid-Term Preparation<br />
|| -<br />
|| <br />
* The Slides and Wiki was updated throughout this iterations.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Events<br />
|| 17th Feb<br />
|| Events<br />
|| 11th Feb<br />
|| <br />
* As we agreed that events will be one of the feature presented during the presentation, we needed to re-arrange certain task in order to to make time for testing of the events feature. Our mid-term presentation drew the earlier slot, hence team just re-prioritise the task within the same iterations. Only what was completed for events was tested.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
|| Group Based Tournament<br />
|| 14th Feb<br />
|| -<br />
|| -<br />
|| <br />
* There was some hold-back due to the API web service. As we are dependent on our client with this aspect, we decided to just push it to the next iteration as we are subjected to our client's availability. What we can do was to simulate it on a local server, until the client's server is up, there is not much point merely waiting. We decided to use the time to better prepare for our mid-term.<br />
|-<br />
<br />
|- style="background:silver; color:black"<br />
||<br />
|| <br />
|| Mastery Based Coaching<br />
|| -<br />
||<span style="color:red"><br />
* Before Mid-term, the client changed from single problem game to 10 problem games. However, this time, he realized that he requires each game to be created separately (back-end) while functon the same(front-end) in order for him to derive the necessary data for his research. The data derived from this feature is <b> Valuable </b> for our client's current research progress. <br />
<br />
* This change was evaluate careful and an impact analysis was done.''Yousof'' code was initially designed for single problems, It took in a day of <b> free time </b> to revert part to the previous logic. We were still able to continue the iteration as per normal.<br />
<br />
</span><br />
|-<br />
|-style="background:silver; color:black"<br />
|colspan="5"| <br />
* Team pushes the UT earlier as we drew the earlier time slot of Mid-terms.<br />
* Focuses on what we aimed and was required to present for mid-terms.<br />
* Delays was on client's web service, hence nothing much the team could do.<br />
|-<br />
<br />
<br />
<br />
|- <br />
|rowspan="5"| 8<br />
|| Map and Registration ( new Features)<br />
|| 28th Feb<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to change. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Easy Web Prototyping<br />
|| 3rd March<br />
|| Actual<br />
|| Actual Date<br />
||<br />
* There were several issues that our client wanted to add. However, after mid-term, we had a discussion about proper prioritization. Client has agreed to remove these requirements.<br />
|-<br />
<br />
|- <br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
|| Events (Create & RSVP)<br />
|| 23rd Feb<br />
||<br />
* Create was completed but there was a delay with the RSVP with regards to the client's Web service. However, given the buffer, it was still completed within the iterations. <br />
|-<br />
<br />
|- <br />
|| Group based Tournament ( Mentor Assignment and Live Ranking )<br />
|| 23rd Feb<br />
|| Actual<br />
|| 23rd Feb<br />
||<br />
* As the team completed most of the content only localhost, the team here merely require to make changes and test the system as it goes life. <br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
|-<br />
<br />
|- <br />
|| <br />
|| <br />
|| Recruiting of Students for Live-Tournament Event<br />
|| <br />
||<br />
<span style="color: green"><br />
* On the side line, the team assited our client but making his Live-Tournament event bigger but contacting various institutions.<br />
* The team spoke to NP , TP ,DMHS and NJC representative and got them to took part in the Live-Tournament.<br />
* This was not a change request by our client, but this allows to conduct our UT with more user while adding <b>more value</b> to our client<br />
* Team took personal time to do this.<br />
<br />
* Majority of the function work accordingly to plan upon transferring to live server, better than anticipated.<br />
</span><br />
|-<br />
|}<br />
<br />
===Project Metrics===<br />
<br />
[[IS480 Team wiki: 2013T2 GENShYFT Project Management metric|<b> Click to View Project Metric </b>]]<br />
<br />
=== Project Risk ===<br />
[[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_risk| <b> Click to View Project Risk </b>]]<br />
<br />
===Technical Complexity:===<br />
# Testing and development is complex since team needs to code and test on 3 different platforms: localhost, development and live SingPath. Hence, higher scaled features like Tournament is complex to deploy. [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Deployment_Process|Click here to see SingPath's Deployment Process]] <br/><br />
<br />
# Need to compare users' scores from the levels they have practised under Practice section for Mastery-based coaching to measure the user's percentile. These statistics would also be used to find out the user's weak areas, based on the number of attempts with respect to a question and the time taken. <br />
<!--Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.--><br />
<br />
==Quality of product== <br />
<!--Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.--><br />
<br />
===Project Deliverables:===<br />
<br />
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.<br />
<br />
{| border="1"<br />
|- style="background:blue; color:white" <br />
|align="center"| Stage <br />
|align="center"| Specification<br />
|align="center"| Modules<br />
|-<br />
<br />
|rowspan="5"| Project Management<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Sponsor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Supervisor Minutes]]<br />
|-<br />
<br />
|| Minutes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_minutes|Group Minutes]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Bug metrics]]<br />
|-<br />
<br />
|| Metrics<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Management_metric|Schedule metrics]]<br />
|-<br />
<br />
|rowspan="2"| Requirements<br />
|| Paper Prototypes<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_proto|Paper prototype]]<br />
|-<br />
|| Business Requirement Document<br />
|| [[Media:GENShYFT Requirement Gathering 1.2.pdf|Requirement Gathering]]<br />
|-<br />
<br />
<br />
|rowspan="5"| Analysis and Design<br />
|| Use case<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Use_Case_Diagram|Use case]]<br />
|-<br />
<br />
|| State Diagrams<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#State_Diagram_for_Mastery_Based_Coaching|State diagrams]]<br />
|-<br />
<br />
|| Component Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#Component_Diagram|Component diagram]]<br />
|-<br />
<br />
|| Market Survey<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Project_Overview_motivation|Survey]]<br />
|-<br />
<br />
<br />
<br />
|| System Architecture Diagram<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_usecase#System_Architecture_Diagram |System Architecture Diagram ]]<br />
|-<br />
<br />
|rowspan="2"| Testing<br />
|| Test plan<br />
|| [[Media:GENShYFT Test Plan 140217.pdf|Test Plan]]<br /><br />
|-<br />
|| User Testing<br />
|| [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|Tests]]<br />
|-<br />
<br />
<br />
|rowspan="2"| Handover ( for Mid-term )<br />
<br />
|| Developers Documentation<br />
|| [[Media:GENShYFT_API_Doc.pdf|API Documentation (In progress)]]<br />
|-<br />
<br />
|| Code<br />
|| client server<br />
|-<br />
<br />
|}<br />
<br />
===Quality Attributes===<br />
====Availability====<br />
* SingPath is hosted on Google App Engine. The cloud infrastructure ensures a high up-time which currently stands at 97.05%. For the latest numbers, please refer to [https://code.google.com/status/appengine GAE Status Page].<br />
<br />
====Flexibility====<br />
* The utilization of angularJS enforces a strict MVC architecture that defines clear responsibilities for each component. Business logic can be edited in the controllers without affecting the other components. <br />
<br />
====Interoperability====<br />
* SingPath uses API calls to the backend server to retrieve data in JSON format. This approach allows for easy exchange and reuse of information with both new and old systems as long as they follow this widely accepted standard.<br />
<br />
====Usability====<br />
* We will be conducting a total of 5 User Tests to ensure that our application is well received/accepted by the final presentation.<br />
** After each User Test, we will collate all the feedback and tweak our application to make it even more user friendly.<br />
<br />
====Scalability====<br />
* Automatic Scalability (Infinitely Scalable) as advertised by GAE<br />
** "Automatic scaling is built in with App Engine, all you have to do is write your application code and we'll do the rest. No matter how many users you have or how much data your application stores, App Engine can scale to meet your needs." - [https://cloud.google.com/developers/starterpack/ Google App Engine]<br />
<br />
* Tournament<br />
** Approximately 40 concurrent users will be accessing SingPath at the same time during the Tournament<br />
** Will be conducting stress/load test prior to the actual Tournament to anticipate potential performance issues and rectify accordingly<br />
<!--http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20-%20Quality%20Attributes--><br />
<br />
===Testing:===<br />
<br />
# IS429<br />
# IDA <br />
# JC<br />
# POLY<br />
# A/B Split<br />
<br />
For more details - please refer to the [[IS480_Team_wiki:_2013T2_GENShYFT_Documentation_User|GENShYFT Tests Page]]<br />
<br />
==Reflection==<br />
<!--Compile common lessons and reflection for the team and for each team member. Be brief.--><br />
===Team Reflection:===<br />
'' To be Edited''<br />
<br />
''Knowledge Sharing Environment''<br />
The team has been able to accomplish thus far as members are helpful towards on another if they are unable to solve a critical bug or even understand how to implement certain frameworks or language like AngularJS.<br />
<!--Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.--><br />
<br />
===Individual Reflection:===<br />
<br />
[[Image:indReflection_final_GENSHYFT2.jpg | 1000px|center]]<br />
<br />
<br />
<!--Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.--><br />
<br />
<!--===Sponsor Comment:===<br />
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.--></div>Mohamedsh.2011