HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2012T1 STEEP Mid Term Wiki"

From IS480
Jump to navigation Jump to search
 
(46 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Project Progress Summary</b></font></div></div></div>==
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Project Progress Summary</b></font></div></div></div>==
 +
 +
[[Media:STEEP_Midterm_Final.pptx‎|Mid Term Slides]]
 +
 +
=== <font color="#FF3366">Progress Description</font> ===
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
 +
Our team has progressed slowly but steadily since our acceptance presentation. We faced issues along the way. However, we have managed to resolve them and have completed most of the core features. Initially, we planned to deploy our application on Google Play after User Testing 2. However, we are happy to state that as of 25 September 2012, we have deployed our application to the Google Play Store.
 +
 +
We are currently approaching 5th Milestone : '''Midterm Presentation'''. We are confident that we would be able to complete all remaining functions/features before our User Testing 2 on 17 November 2012.
 +
 +
</div>
 +
[[Image:STEEPMilestonesProgress.png|center|1090px]]
  
  
 
=== <font color="#FF3366">Project Highlights</font> ===
 
=== <font color="#FF3366">Project Highlights</font> ===
 +
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
'''What unexpected events occurred?'''
 +
* Our team faced issues with Amazon EC2 Cloud.
 +
** Hence, we had to switch to Microsoft Azure which required starting from scratch for the web.
 +
* Microsoft Azure updated its version causing our system to fail.
 +
**We had to spend time researching and trying different methods to make the functions work again.
 +
* Our Microsoft Azure account got suspended the day before presentation unexpectedly.
 +
**We communicated with the relevant people at Microsoft Azure but have not find the reason for it.
 +
**We had to resort to using our backup website for presentation while resolving the reason.
 +
</div>
  
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Project Management</b></font></div></div></div>==
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Project Management</b></font></div></div></div>==
  
 
=== <font color="#FF3366">Project Status</font> ===
 
=== <font color="#FF3366">Project Status</font> ===
 +
 +
{| class="wikitable" cellpadding="15"
 +
|-
 +
| style="background: #FF3366; color: #FFFFFF; padding: 5px 0 5px 12px; font-weight: bold; font-size: 13px; text-indent: 18px; width: 25%;" valign="top" | Function / Features
 +
| style="background: #FF3366; color: #FFFFFF; padding: 5px 0 5px 12px; font-weight: bold; font-size: 13px; text-indent: 10px; width: 10%;" valign="top" | Status
 +
| style="background: #FF3366; color: #FFFFFF; padding: 5px 0 5px 12px; font-weight: bold; font-size: 13px; text-indent: 8px; width: 15%;" valign="top" | Confident Level
 +
| style="background: #FF3366; color: #FFFFFF; padding: 5px 0 5px 12px; font-weight: bold; font-size: 13px; text-indent: 18px; width: 20%;" valign="top" | Comments
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''1. Sign up''' (Web API, Mobile, Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''2. Login using Email''' (Web API, Mobile, Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''3. Login using Facebook''' (Web API, Mobile, Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''4. Create Clue''' (Web API, Mobile, Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''5. Edit Clue''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''6. Create Quest''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''7. Edit Quest''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''8. Download Quest''' (Web API,Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''9. Play Quest''' (Web API,Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''10. Save/Publish Quest''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''11. Photo Gallery''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''12. Manage Profile''' (Web API,Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 100%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''13. Invitation''' (Web API,Web, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 20%
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''14. Feedback''' (Web API,Web, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''15. Rating''' (Web API,Web, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''16. Ranking''' (Web API,Web, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 1
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''17. Revamping User Interface'''
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.8
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''18. Certification'''(Web API, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.8
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''19. Like/Dislike'''(Web API, Web)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.7
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''20. Achievements'''(Web API, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.7
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''21. Wifi/3G Upload feature'''(Web API, Mobile)
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.5
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|-
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | '''22. Security Features'''
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" | 0.5
 +
| style="background: #FFFFFF; padding-bottom: 20px; padding: 5px 10px 0 18px; " valign="top" |
 +
|-
 +
 +
|}
 +
 
=== <font color="#FF3366">Project Schedule(Plan vs. Actual)</font> ===
 
=== <font color="#FF3366">Project Schedule(Plan vs. Actual)</font> ===
 +
 +
'''Milestones'''
 +
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
 +
[[Image:STEEPPlanvsActualMilestones.PNG|center|800px]]
 +
 +
'''Acceptance :''' We had issues with Amazon EC2 Cloud deployment a week before acceptance. Hence, we felt that it would be better to have abit more time.
 +
 +
'''Google Play Deployment:''' We were challenged by Prof Gan to have it deployed to Google Play by Midterm and we wanted to achieve it. Furthermore, we felt that it would be better for users to test on their own mobile phone.
 +
</div>
 +
 +
'''Functions'''
 +
 +
''By Acceptance Presentation''
 +
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
[[Image:STEEPAcceptancePlanActual.png|center|500px]]
 +
For our Acceptance, all functions/features were completed as planned in the schedule.
 +
</div>
 +
 +
''By User Testing 1''
 +
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
[[Image:STEEPUserTesting1PlanActual.png|center|500px]]
 +
 +
We brought forward the Manage Profile feature to before User Testing as we felt it was important for testing. We had uncompleted features that we had to push to the next iteration as Microsoft Azure updated its version and we needed time to fix it.
 +
</div>
 +
 +
''By Midterm Presentation''
 +
 +
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
[[Image:STEEPMidTermPlanActual.png|center|500px]]
 +
 +
</div>
 +
 
=== <font color="#FF3366">Project Metrics</font> ===
 
=== <font color="#FF3366">Project Metrics</font> ===
 +
 +
{| class="wikitable" cellpadding="15"
 +
|-
 +
| style="background: #FF3366; color: #FFFFFF; font-weight: bold; padding: 10px 15px 0 15px; font-size: 14px; width: 10%;" valign="top" rowspan="1" | [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Metrics|<span style="color: #000000;text-decoration:underline;">Link: Metrics</span>]]
 +
| style="background: #FFFFFF; color: #000000; padding-bottom: 20px; width: 40%;" valign="top" |
 +
:<b>1. Metrics</b>
 +
::1.1 Bug Metric
 +
::1.2 Schedule Metric
 +
|-
 +
|}
 +
 
=== <font color="#FF3366">Project Risks</font> ===
 
=== <font color="#FF3366">Project Risks</font> ===
 +
 +
{| class="wikitable" cellpadding="15"
 +
|-
 +
| style="background: #FF3366; color: #FFFFFF; font-weight: bold; padding: 10px 15px 0 15px; font-size: 14px; width: 10%;" valign="top" rowspan="1" | [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Risks|<span style="color: #000000;text-decoration:underline;">Link : Risks</span>]]
 +
| style="background: #FFFFFF; color: #000000; padding-bottom: 20px; width: 40%;" valign="top" |
 +
:<b>1. Risks</b>
 +
::1.1 Risks Assessment
 +
::1.2 Risks & Mitigation Strategy
 +
|-
 +
|}
 +
 
=== <font color="#FF3366">Technical Complexity</font> ===
 
=== <font color="#FF3366">Technical Complexity</font> ===
 +
 +
As uploading of the photos are a huge component of the gameplay, we had to implement a system where the user's game experience will not be affected by network constraints, especially when the user is roaming. This would be implemented by network connection detectors and timeouts, resizing of photos, with necessary data being saved if the photos cannot be uploaded and uploaded when there is a stable connection.
 +
 +
As mobile devices are limited in the memory space, it is important to implement memory management in the mobile devices, especially when the application is required to manage number of photos during the gameplay. Research has to be taken to find the best method to load and display photos in the mobile devices.
  
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Quality of Product</b></font></div></div></div>==
 
==<div style="border-left: #FF3366 solid 10px; padding: 0px;"><div style="background: #FAF8CC; font-family:Tahoma; line-height: 0.4em; border-left: #000000 solid 10px;"><div style="border-left: White solid 10px; padding: 10px; text-indent: 20px;"><font color= #000000><b>Quality of Product</b></font></div></div></div>==
 +
 +
Currently the photos are downsized and compressed when uploading to ensure that as little network connection is required. However, as high quality photos are desired. This will be continued on the later stage with the network management.
 +
 +
Photos are being uploaded are on a seperate thread and will be recycled after the task is done. Also, the photos displayed are optimised for screen size, to ensure no photo stretching.
  
 
=== <font color="#FF3366">Intermediate Deliverables</font> ===
 
=== <font color="#FF3366">Intermediate Deliverables</font> ===
 +
 +
{| border="1"
 +
|- style="background:#FF3366;color:white"
 +
|align="center"| '''Stage'''
 +
|align="center"| '''Specification'''
 +
|align="center"| '''Modules'''
 +
|-
 +
 +
|rowspan="3"| Project Management
 +
|| Minutes
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Minutes|Meeting Minutes (Team, Sponsors, Supervisor)]]
 +
|-
 +
 +
|| Metrics
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Bug_Metric|Bug Metrics]], [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Schedule_Metric|Schedule Metrics]]
 +
|-
 +
 +
|| Risks
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_MANAGEMENT#Risks|Risks & Mitigation Strategy]]
 +
|-
 +
 +
|rowspan="2"| Analysis
 +
|| Use case
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Use_Case_Diagram|Use Case Diagram]]
 +
|-
 +
 +
|| UI Mockup
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Mobile|Mobile]], [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Web|Web]]
 +
|-
 +
 +
|rowspan="3"| Design
 +
|| Process Flow
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Process_Flow_Diagram|Process Flow Diagrams]]
 +
|-
 +
 +
|| System Architecture Diagram
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Process_Flow_Diagram|System Architecture Diagram]]
 +
|-
 +
 +
|| Deployment Diagram
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_PROJECT_SCOPE#Deployment_Diagram|Deployment Diagram]]
 +
|-
 +
 +
|rowspan="2"| Testing
 +
||  User Testing 1
 +
|| [[IS480_Team_wiki:_2012T1_STEEP_USER_TESTING#User_Testing_1|User Testing Process & Results]]
 +
|-
 +
 +
|}
 +
 
=== <font color="#FF3366">Deployment</font> ===
 
=== <font color="#FF3366">Deployment</font> ===
  
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
  
Our application Gr8Quest has been published on Google Play since 25 September 2012. We were required to create an account, pay for a developer account and upload the relevant APK file into the Google Play Store.
+
'''Mobile''' <br/>
 +
Our Mobile application Gr8Quest has been published on Google Play since 25 September 2012. We were required to create an account, pay for a developer account and upload the relevant APK file into the Google Play Store.
  
 +
Users with android devices are able to download and use our application.
 +
 +
 +
[http://play.google.com/store/apps/details?id=great.quest.android Get our app now on Google Play]<br/>
 +
[[Image:STEEPGooglePlay.png‎ |left]]<br/><br/><br/><br/>
 +
 +
'''Web''' <br/>
 +
Our Website has been deployed using Microsoft Azure.
 +
 +
[http://gr8questtest.azurewebsites.net// Visit our website]<br/>
 
</div>
 
</div>
  
Line 45: Line 359:
 
{| class="wikitable" cellpadding="15"
 
{| class="wikitable" cellpadding="15"
 
|-
 
|-
| style="background: #FF3366; center; padding: 8px 15px 0 15px; font-weight: bold; color: #FF3366;" valign="top" rowspan="1" | [[IS480_Team_wiki:_2012T1_STEEP_LOMS_REFLECTION|<span style="color: #000000;text-decoration:underline;">Link : Learning Outcomes Page</span>]]
+
| style="background: #FF3366; color: #FFFFFF; font-weight: bold; padding: 10px 15px 0 15px; font-size: 14px; width: 10%;" valign="top" rowspan="1" | [[IS480_Team_wiki:_2012T1_STEEP_LOMS_REFLECTION|<span style="color: #000000;text-decoration:underline;">Link : Learning Outcomes Page </span>]]
| style="background: #FFFFFF; color: #000000; padding-bottom: 20px; width: 50%;" valign="top" |  
+
| style="background: #FFFFFF; color: #000000; padding-bottom: 20px; width: 40%;" valign="top" |  
 
:<b>1. LOMS & Reflections</b>
 
:<b>1. LOMS & Reflections</b>
 
::1.1 Learning Outcomes
 
::1.1 Learning Outcomes
 
|-
 
|-
 
|}
 
|}
 +
 
=== <font color="#FF3366">Team Reflection</font> ===
 
=== <font color="#FF3366">Team Reflection</font> ===
  
Line 84: Line 399:
  
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
 +
As an system analyst, I believe that FYP has pushed my limits. There were various issues that we faced with the server (e.g. errors, slow, updating version, suspension of account). Each time, time was taken from creating functions into solving server issues including recoding when the version was updated.
 +
 +
Through FYP, I also realised the importance of communication is getting the right message across, to the team and the relevant server contact people.
 
</div>
 
</div>
  
Line 98: Line 417:
  
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
The past 3 months doing FYP has been challenging for me. There were many issues that I faced as an app developer e.g. trying to find solutions for the problems. It was frustrating at time spending hours on researching but unable to find the solution.
 +
 +
I realised the importance of prioritization having to juggle other modules, FYP and CCA. In all, it has been a great experience and I am glad that our app is on Google Play store.
 
</div>
 
</div>
  
Line 103: Line 425:
  
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 
<div style="border-left: LightPink solid 10px; padding: 0px 30px 0px 18px; font-family: Arial, Helvetica;">
 +
 +
Teamwork: For me, teamwork and communication among team members are the most vital skill that I have learnt during FYP. In our group, each of us is responsible for one part of either application development or project management, so we need to communicate and work together closely to ensure the quality of the end-product at the same time keeping track of the project schedule.
 +
 
</div>
 
</div>
  

Latest revision as of 15:06, 9 October 2012

STEEPTeamMainMidTerm.png

Project Progress Summary

Mid Term Slides

Progress Description

Our team has progressed slowly but steadily since our acceptance presentation. We faced issues along the way. However, we have managed to resolve them and have completed most of the core features. Initially, we planned to deploy our application on Google Play after User Testing 2. However, we are happy to state that as of 25 September 2012, we have deployed our application to the Google Play Store.

We are currently approaching 5th Milestone : Midterm Presentation. We are confident that we would be able to complete all remaining functions/features before our User Testing 2 on 17 November 2012.

STEEPMilestonesProgress.png


Project Highlights

What unexpected events occurred?

  • Our team faced issues with Amazon EC2 Cloud.
    • Hence, we had to switch to Microsoft Azure which required starting from scratch for the web.
  • Microsoft Azure updated its version causing our system to fail.
    • We had to spend time researching and trying different methods to make the functions work again.
  • Our Microsoft Azure account got suspended the day before presentation unexpectedly.
    • We communicated with the relevant people at Microsoft Azure but have not find the reason for it.
    • We had to resort to using our backup website for presentation while resolving the reason.

Project Management

Project Status

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

Project Schedule(Plan vs. Actual)

Milestones

STEEPPlanvsActualMilestones.PNG

Acceptance : We had issues with Amazon EC2 Cloud deployment a week before acceptance. Hence, we felt that it would be better to have abit more time.

Google Play Deployment: We were challenged by Prof Gan to have it deployed to Google Play by Midterm and we wanted to achieve it. Furthermore, we felt that it would be better for users to test on their own mobile phone.

Functions

By Acceptance Presentation

STEEPAcceptancePlanActual.png

For our Acceptance, all functions/features were completed as planned in the schedule.

By User Testing 1

STEEPUserTesting1PlanActual.png

We brought forward the Manage Profile feature to before User Testing as we felt it was important for testing. We had uncompleted features that we had to push to the next iteration as Microsoft Azure updated its version and we needed time to fix it.

By Midterm Presentation

STEEPMidTermPlanActual.png

Project Metrics

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

Project Risks

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

Technical Complexity

As uploading of the photos are a huge component of the gameplay, we had to implement a system where the user's game experience will not be affected by network constraints, especially when the user is roaming. This would be implemented by network connection detectors and timeouts, resizing of photos, with necessary data being saved if the photos cannot be uploaded and uploaded when there is a stable connection.

As mobile devices are limited in the memory space, it is important to implement memory management in the mobile devices, especially when the application is required to manage number of photos during the gameplay. Research has to be taken to find the best method to load and display photos in the mobile devices.

Quality of Product

Currently the photos are downsized and compressed when uploading to ensure that as little network connection is required. However, as high quality photos are desired. This will be continued on the later stage with the network management.

Photos are being uploaded are on a seperate thread and will be recycled after the task is done. Also, the photos displayed are optimised for screen size, to ensure no photo stretching.

Intermediate Deliverables

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

Deployment

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

Users with android devices are able to download and use our application.


Get our app now on Google Play

STEEPGooglePlay.png




Web
Our Website has been deployed using Microsoft Azure.

Visit our website

Testing

Our User Testing 1 was conducted on 2 separate occasions, 28 September 2012 (in SIS) and 1 October 2012 (in Fort Canning).

Link : User Testing
1. User Testing
1.1 User Testing 1

Reflections

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

Team Reflection

Our FYP has been an amazing journey for our team so far.

We definitely went through many hurdles along the way to reach where we are right now. There were various instances when we had to prove ourselves to move forward. For instance, we submitted our names for FYP after the deadline resulting in us having to move faster to confirm our project details with Prof Ben Gan in order to confirm a place for FYP.

3 key reflections for us are:

1. Teamwork: We should be supportive to one another which would ensure a proper working environment for the team. By sharing the workload and taking on tasks when there is nothing on hand, we can work faster.

2. Communication: The key to a successful team is communication. As a team, we should not be afraid to voice out our thoughts and opinions to each other. With proper communication, various misunderstandings can be avoided.

3. Prioritization: FYP is not the only module for us and some members are working part-time as well. Hence, we have to prioritize our workload in order to meet deadlines. At times, this includes cancelling or rescheduling our personal outings / interests in order to complete tasks for FYP.

We are indeed very grateful to our sponsors and supervisor who gave us their feedback and suggested improvements.

Individual Reflections

Sunita

The FYP journey so far has been an amazing one for me. Having friends as group members can be both good and bad. Being the Project Manager, there were various times initially where I could not be stern with the team as they are my friends and I do not want to stress them out as well.

It is definitely a challenge being a Project Manager in ensuring everything is up to schedule and being answerable to the questions by the Sponsors. The lessons learnt are invaluable for future careers when taking on leadership roles.

Minh Tri

As an system analyst, I believe that FYP has pushed my limits. There were various issues that we faced with the server (e.g. errors, slow, updating version, suspension of account). Each time, time was taken from creating functions into solving server issues including recoding when the version was updated.

Through FYP, I also realised the importance of communication is getting the right message across, to the team and the relevant server contact people.

Qian Ying

It has been an incredible 3 months since we first embarked on this project. Our group faced many challenges in different aspects of the project. We had to juggle between meeting deadlines of IS480 and other modules as well as lifting up to different expectations set by group members, sponsors and professors.

Being the usability analyst, I was tasked to design an application which is user friendly and aesthetically attractive. To accomplished that, I had several elements to take into consideration such the layout of data and the amount of the information displayed to the user. Designing a “treasure hunt” theme and choosing appropriate naming conventions for the game are also part of my job. From all the problems I faced thus far, it has been indeed intellectually challenging and pushing the limits of my creativity.

Eileen

The past 3 months doing FYP has been challenging for me. There were many issues that I faced as an app developer e.g. trying to find solutions for the problems. It was frustrating at time spending hours on researching but unable to find the solution.

I realised the importance of prioritization having to juggle other modules, FYP and CCA. In all, it has been a great experience and I am glad that our app is on Google Play store.

Emerald

Teamwork: For me, teamwork and communication among team members are the most vital skill that I have learnt during FYP. In our group, each of us is responsible for one part of either application development or project management, so we need to communicate and work together closely to ensure the quality of the end-product at the same time keeping track of the project schedule.

Project Sitemap

STEEP Main Page