Difference between revisions of "IS480 Team wiki: 2016T1 Hungrymen FinalWiki"
Cycheng.2014 (talk | contribs) |
|||
(47 intermediate revisions by 2 users not shown) | |||
Line 30: | Line 30: | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Finals Slides, Video and Poster</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Finals Slides, Video and Poster</font></div>=== | ||
− | + | ||
* [[Media: Hungrymen-finals.pdf | Hungrymen's Finals Slides ]]<br> | * [[Media: Hungrymen-finals.pdf | Hungrymen's Finals Slides ]]<br> | ||
* [https://drive.google.com/drive/u/0/folders/0B6OCZKI6rntRdF9sY2NDblFwZm8 Hungrymen's Video and Poster] | * [https://drive.google.com/drive/u/0/folders/0B6OCZKI6rntRdF9sY2NDblFwZm8 Hungrymen's Video and Poster] | ||
Line 37: | Line 37: | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Highlights</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Highlights</font></div>=== | ||
− | + | * Conducted Market Survey to review feasibility, problems and potential solutions. | |
− | * | + | * Conducted two Expert Testing to gain insights about Smart Hawker App's interface and two UATs |
− | + | * Conducted two User Acceptance Tests to validate and collate feedback according to Hawker's surveyed, to make necessary app improvements. | |
+ | * Deployed onto testflight on the 8th of April 2016 | ||
+ | * Deployed onto App Store on the 27th of September 2016 | ||
+ | * Smart Hawker iOS Application compatible for iOS 9.3 and above | ||
+ | * Backend migrated from Parse to self-hosted AWS | ||
<br> | <br> | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Challenges</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Challenges</font></div>=== | ||
− | < | + | |
− | + | * <u>Finding Users:</u> | |
− | * | + | <p></p> |
− | * | + | Our team had to find the correct timing to go down and conduct our UATs as well as promoting our app. Initially, we went down around noon which was the lunch period and they were all busy. Hence our team handle this situation by going down at off-peak hours. |
− | < | + | <p></p> |
+ | * <u>Learning New Programming Languages:</u> | ||
+ | <p></p> | ||
+ | Our team find it particularly challenging when there was no one to guide us. However, we dealt with this by watching Youtube tutorials, Google and consulting friends that had done an iPhone App before. | ||
+ | <p></p> | ||
+ | * <u>Communication:</u> | ||
+ | <p></p> | ||
+ | The most challenging area of is480 project is the communication between team members, sponsors and supervisors. To ensure that there is no conflicts, tension or miscommunication, our team abide by the rule of speaking up and also constant communication with our sponsors and supervisors of our progress. | ||
+ | <p></p> | ||
<br> | <br> | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Achievements</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Achievements</font></div>=== | ||
− | + | ||
− | *Available | + | *Available on [https://itunes.apple.com/us/developer/edmund-foo/id1139427248 App Store] |
− | * | + | *Application features and ideas validated with the target market and improved to fit their preferences. |
+ | *More than 70 users sign ups | ||
*More than 15 weekly users consistent usage for 1-Month | *More than 15 weekly users consistent usage for 1-Month | ||
+ | |||
+ | <b>Project X-Factor</b> | ||
+ | [[File:Hungrymen_Xfactor.png|500px|center]] | ||
<br> | <br> | ||
Line 83: | Line 99: | ||
|- | |- | ||
| 1 | | 1 | ||
− | | Added | + | | Added sync function in iteration 9 upon midterm review feedback |
|- | |- | ||
|- | |- | ||
| 2 | | 2 | ||
+ | | 1. Added iOS10 upgrade in iteration 10. Initially our team did consider a possibility of an iOS10 upgrade but was not sure if it would be release during our FYP period as apple did not give a concrete date. So when they release iOS10 upgrade, our team wanted to make sure that xcode 8 IDE is stable before we planned it into our schedule. <br><br> 2. Added migration in iteration 10 | ||
+ | |- | ||
+ | |- | ||
+ | | 3 | ||
| Included poster and video into our documentation at Iteration 10 | | Included poster and video into our documentation at Iteration 10 | ||
|- | |- | ||
|- | |- | ||
− | | | + | | 4 |
− | | | + | | At the end of iteration 10, our team realize that backend admin module and migration was more complex than expected hence we will delay backend admin module to iteration 11 and migration to iteration 12 |
+ | |- | ||
+ | |- | ||
+ | | 5 | ||
+ | | At the end of iteration 11, there was additional function for backend admin module and hence our team delay it till iteration 12 | ||
|- | |- | ||
|} | |} | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Metrics</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Project Metrics</font></div>=== | ||
− | + | ||
====Task Metrics==== | ====Task Metrics==== | ||
<font size= 25><center>Task Metrics</center></font> | <font size= 25><center>Task Metrics</center></font> | ||
Line 159: | Line 183: | ||
| 20 | | 20 | ||
| | | | ||
− | <b><u>Functionality</u></b> | + | <b><u>Functionality</u></b><br> |
After iOS 10 upgrade: | After iOS 10 upgrade: | ||
* After login, the main tab bar is missing. Application functionalities fail to load and unable to change tab. | * After login, the main tab bar is missing. Application functionalities fail to load and unable to change tab. | ||
Line 179: | Line 203: | ||
<br> | <br> | ||
<b>After:</b> | <b>After:</b> | ||
− | [[Image: Hungrymen- | + | [[Image: Hungrymen-TechnicalDiagram.png|center|800px]] |
+ | <hr> | ||
+ | [[Image: Hungrymen-FaultTolerance.png|center|600px]] | ||
+ | <hr> | ||
+ | [[Image: Hungrymen-FaultTolerance2.png|center|500px]] | ||
<br> | <br> | ||
With no prior knowledge on server architecture, migration of Parse challenges us as we will have to study typical architecture before we are able to set up the server. We will have to understand which layer to setup the database, which layer to host Parse API server, as well as how to configure each individual layer. | With no prior knowledge on server architecture, migration of Parse challenges us as we will have to study typical architecture before we are able to set up the server. We will have to understand which layer to setup the database, which layer to host Parse API server, as well as how to configure each individual layer. | ||
Line 187: | Line 215: | ||
<br> | <br> | ||
We will be hosting the backend of our application on AWS EC2. Our DB will be on node.js server. The learning curve is steep as we have no experience in node.js, especially on AWS where there is no GUI for us to work on, only linux commands. | We will be hosting the backend of our application on AWS EC2. Our DB will be on node.js server. The learning curve is steep as we have no experience in node.js, especially on AWS where there is no GUI for us to work on, only linux commands. | ||
+ | [[Image: Hungrymen-ParseSetup.jpg|center|700px]] | ||
<br> | <br> | ||
<br> | <br> | ||
Line 245: | Line 274: | ||
<br> | <br> | ||
+ | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Quality</font></div>=== | ||
+ | |||
+ | <b><center>Interface change from our Expert Test I to Expert Test II</center></b> | ||
+ | <br> | ||
+ | [[Image: Hungrymen-expert1to2.png|center|400px]] | ||
+ | <br> | ||
+ | <b><center>Interface change from our Expert Test II to UAT 1</center></b> | ||
+ | <br> | ||
+ | [[Image: Hungrymen-expert2touat1.png|center|400px]] | ||
+ | <br> | ||
+ | [[Image: Hungrymen-expert2touat1-2.png|center|400px]] | ||
+ | <br> | ||
+ | [[Image: Hungrymen-expert2touat1-3.png|center|400px]] | ||
+ | <br> | ||
+ | <b><center>Interface change from our UAT 1 to UAT 2: Onboard Launch Screen Tutorials</center></b> | ||
+ | <br> | ||
+ | [[Image: Hungrymen-uat2touat1.png|center|400px]] | ||
+ | <b><center>Interface change UAT 2 to Current: Added contact us at login page and reset of admin pin function</center></b> | ||
+ | <br> | ||
+ | [[Image: Hungrymen-uat2tocurrent.png|center|400px]] | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Deployment</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Deployment</font></div>=== | ||
Line 260: | Line 309: | ||
|| 5th - 7th August 2016 | || 5th - 7th August 2016 | ||
|| Singapore Management University | || Singapore Management University | ||
− | || | + | || 30 iOS users who use applications on a daily basis. |
|- | |- | ||
|| Expert Test 2 | || Expert Test 2 | ||
Line 274: | Line 323: | ||
|| User Acceptance Test 2 | || User Acceptance Test 2 | ||
|| 29th October to 1st November 2016 | || 29th October to 1st November 2016 | ||
− | || Various Locations (Kovan Hawker Centre, Eunos Hawker Centre | + | || Various Locations (Kovan Hawker Centre, Eunos Hawker Centre, Albert Centre) |
|| 30 hawkers who operate small businesses in Singapore. | || 30 hawkers who operate small businesses in Singapore. | ||
|- | |- | ||
Line 285: | Line 334: | ||
===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Team Reflection</font></div>=== | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Team Reflection</font></div>=== | ||
[[Image: Hungrymen-team.JPG|center|600px]] | [[Image: Hungrymen-team.JPG|center|600px]] | ||
+ | <br> | ||
+ | <center><small>From left to right: Kay ZongWei, Cheng Ching Yi, Chua Weilun, Goh Gui Xiang Wendy, Gao Min</small></center> | ||
<br> | <br> | ||
<center>IS480 give students a taste of the realistic experience when handling projects out in the working field. Out of the many things that IS480 train us, our determination was one of the most important aspect that we found that IS480 taught us.</center> | <center>IS480 give students a taste of the realistic experience when handling projects out in the working field. Out of the many things that IS480 train us, our determination was one of the most important aspect that we found that IS480 taught us.</center> | ||
Line 293: | Line 344: | ||
<br> | <br> | ||
− | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF> | + | ===<div style="background: #9A3334; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px; font-size:18px; font-family:helvetica"><font color= #FFFFFF>Sponsors Comment</font></div>=== |
− | [[Image: Hungrymen-sponsors.JPG|center|600px]] | + | [[Image: Hungrymen-sponsors.JPG |center|600px]] |
− | |||
<center><small>From left to right: Mr Boon Teck Tan, Mr Edmund Foo, Mr Marcus Lee</small></center> | <center><small>From left to right: Mr Boon Teck Tan, Mr Edmund Foo, Mr Marcus Lee</small></center> | ||
<br> | <br> | ||
− | <center>"It was a pleasure developing Smart Hawker (iOS) with The Hungrymen. They are a bright and resourceful group of students. Over the course of the semester, they have managed to help us develop an app that is not only functionally stable, but also aesthetically pleasing. The user interface is clean, direct and easy to use, which benefit our target customers i.e. hawkers, tremendously. The have helped us create an excellent platform upon which we can further enhance our product and service moving forward. From start to end, it was a great experience with a great team. Well done!" - Mr Edmund Foo, Mr Boon Teck Tan, Mr Marcus Lee</center> | + | <center>"It was a pleasure developing Smart Hawker (iOS) with The Hungrymen. They are a bright and resourceful group of students. Over the course of the semester, they have managed to help us develop an app that is not only functionally stable, but also aesthetically pleasing. The user interface is clean, direct and easy to use, which benefit our target customers i.e. hawkers, tremendously. The have helped us create an excellent platform upon which we can further enhance our product and service moving forward. From start to end, it was a great experience with a great team. Well done!" <br> |
+ | - Mr Edmund Foo, Mr Boon Teck Tan, Mr Marcus Lee</center> | ||
<br> | <br> |
Latest revision as of 16:57, 20 November 2016
HOME | ABOUT US | PROJECT OVERVIEW | PROJECT MANAGEMENT | DOCUMENTATION |
Project Progress Summary
Finals Slides, Video and Poster
Project Highlights
- Conducted Market Survey to review feasibility, problems and potential solutions.
- Conducted two Expert Testing to gain insights about Smart Hawker App's interface and two UATs
- Conducted two User Acceptance Tests to validate and collate feedback according to Hawker's surveyed, to make necessary app improvements.
- Deployed onto testflight on the 8th of April 2016
- Deployed onto App Store on the 27th of September 2016
- Smart Hawker iOS Application compatible for iOS 9.3 and above
- Backend migrated from Parse to self-hosted AWS
Project Challenges
- Finding Users:
Our team had to find the correct timing to go down and conduct our UATs as well as promoting our app. Initially, we went down around noon which was the lunch period and they were all busy. Hence our team handle this situation by going down at off-peak hours.
- Learning New Programming Languages:
Our team find it particularly challenging when there was no one to guide us. However, we dealt with this by watching Youtube tutorials, Google and consulting friends that had done an iPhone App before.
- Communication:
The most challenging area of is480 project is the communication between team members, sponsors and supervisors. To ensure that there is no conflicts, tension or miscommunication, our team abide by the rule of speaking up and also constant communication with our sponsors and supervisors of our progress.
Project Achievements
- Available on App Store
- Application features and ideas validated with the target market and improved to fit their preferences.
- More than 70 users sign ups
- More than 15 weekly users consistent usage for 1-Month
Project X-Factor
Project Management
Project Status
Project Schedule
Planned Schedule
Actual Schedule
Highlights of Schedule Changes
S/N | Changes |
---|---|
1 | Added sync function in iteration 9 upon midterm review feedback |
2 | 1. Added iOS10 upgrade in iteration 10. Initially our team did consider a possibility of an iOS10 upgrade but was not sure if it would be release during our FYP period as apple did not give a concrete date. So when they release iOS10 upgrade, our team wanted to make sure that xcode 8 IDE is stable before we planned it into our schedule. 2. Added migration in iteration 10 |
3 | Included poster and video into our documentation at Iteration 10 |
4 | At the end of iteration 10, our team realize that backend admin module and migration was more complex than expected hence we will delay backend admin module to iteration 11 and migration to iteration 12 |
5 | At the end of iteration 11, there was additional function for backend admin module and hence our team delay it till iteration 12 |
Project Metrics
Task Metrics
Bugs Metrics
Mitigation Plan
Iteration | Bug Score | Summary of Bugs and Issue | Action Taken |
---|---|---|---|
2 | 15 | Functionality
User Interface
|
Stopped progress for Iteration 3 to resolve bugs that were unsolved by end of iteration 2. All bugs were resolved within 1 day (4th July). |
6 | 18 |
Functionality
User Interface
|
Stopped progress for Iteration 7 to resolve bugs that were unsolved by end of iteration 6. All bugs were resolved within 1 day (29th Aug). |
7 | 38 |
Functionality
User Interface
|
Stopped progress for Iteration 8 to resolve bugs that were unsolved by end of iteration 7. All bugs were resolved within 2 days (12-13th Sept). |
9 | 20 |
Functionality
|
Stopped progress for Iteration 10 to resolve bugs that were unsolved by end of iteration 9. All bugs were resolved within 2 days (10-11th Oct). |
Technical Complexity
Migration of Parse
1. Understand of System Architecture
Before:
After:
With no prior knowledge on server architecture, migration of Parse challenges us as we will have to study typical architecture before we are able to set up the server. We will have to understand which layer to setup the database, which layer to host Parse API server, as well as how to configure each individual layer.
2. Configuring node.js
We will be hosting the backend of our application on AWS EC2. Our DB will be on node.js server. The learning curve is steep as we have no experience in node.js, especially on AWS where there is no GUI for us to work on, only linux commands.
3. MailGun Adaptor
While testing on the migration of our application, one major functionality failed when we are running our testing server on AWS. The emailing function is not working and users will not be able to receive the email to reset their password. After investigation, we realized that Parse Server does not provide emailing functionality, and we will have to set up our own emailAdaptor on our Parse server. After setting up our MailGun account, we set up the adaptor, and finally use the adaptor in our Parse server.
Quality of Product
Project Deliverables
Stage | Specification | Modules |
---|---|---|
Project Management | Minutes | Minutes |
Metrics | Metrics | |
Risk Management | Risk Management | |
Change Management | Change Management | |
Project Overview | Project Overview | Project Overview |
Project Scope | Project Scope | |
SmartHawker App Design | SmartHawker App Design | |
Testing | Expert Test 1 | Expert Test I |
Expert Test 2 | Expert Test II | |
User Acceptance Test 1 | User Acceptance Test I | |
User Acceptance Test 2 | User Acceptance Test II | |
User Guide Documentation | User Guide Documentation |
Quality
Deployment
- Smart Hawker is deployed and available at: https://itunes.apple.com/us/app/smarthawker/id1139427249?mt=8
Testing
User Testing | Date | Venue | Users |
---|---|---|---|
Expert Test 1 | 5th - 7th August 2016 | Singapore Management University | 30 iOS users who use applications on a daily basis. |
Expert Test 2 | 9th September 2016 to 11th September 2016 | Various Locations | 30 iOS users who are closer to hawkers age range of above 30 years old. |
User Acceptance Test 1 | 23th September 2016 to 25th September 2016 | Various Locations (Tanjong Pajar Food Centre, Golden Mile Food Centre etc) | 30 hawkers who operate small businesses in Singapore. |
User Acceptance Test 2 | 29th October to 1st November 2016 | Various Locations (Kovan Hawker Centre, Eunos Hawker Centre, Albert Centre) | 30 hawkers who operate small businesses in Singapore. |
Reflections
Team Reflection
Individual Reflection
Sponsors Comment
- Mr Edmund Foo, Mr Boon Teck Tan, Mr Marcus Lee