Difference between revisions of "IS480 Team wiki: 2016T1 PolyVision Midterm"
(27 intermediate revisions by 2 users not shown) | |||
Line 21: | Line 21: | ||
==Project Progress Summary== | ==Project Progress Summary== | ||
Deployed URL: <u>https://vgpinsight.com</u> <br /> | Deployed URL: <u>https://vgpinsight.com</u> <br /> | ||
− | Midterm Deck: | + | Midterm Deck: [[Media:FYP Midterm.pdf|View]] |
===Project Highlights=== | ===Project Highlights=== | ||
<ol> | <ol> | ||
Line 46: | Line 46: | ||
| 1 | | 1 | ||
| Administrator | | Administrator | ||
− | | Fully deployed and tested | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 53: | Line 53: | ||
| 2 | | 2 | ||
| User Account | | User Account | ||
− | | Fully deployed and tested | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 60: | Line 60: | ||
| 3 | | 3 | ||
| Company Management | | Company Management | ||
− | | Fully deployed and tested | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 67: | Line 67: | ||
| 4 | | 4 | ||
| Deal Management | | Deal Management | ||
− | | Fully deployed and tested | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 73: | Line 73: | ||
| 5 | | 5 | ||
− | | | + | | Dashboard |
− | | Fully deployed and tested | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 80: | Line 80: | ||
| 6 | | 6 | ||
+ | | VC Management | ||
+ | | Fully deployed and tested on production server | ||
+ | | 100% | ||
+ | | Completed | ||
+ | |- | ||
+ | |||
+ | | 7 | ||
| Event-Triggered Notification | | Event-Triggered Notification | ||
− | | | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
|- | |- | ||
− | | | + | | 8 |
− | | | + | | Custom Notification |
− | | | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 95: | Line 102: | ||
| 9 | | 9 | ||
| Reporting | | Reporting | ||
− | | | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 102: | Line 109: | ||
| 10 | | 10 | ||
| Newsfeed | | Newsfeed | ||
− | | | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 109: | Line 116: | ||
| 11 | | 11 | ||
| Backup | | Backup | ||
− | | | + | | Fully deployed and tested on production server |
| 100% | | 100% | ||
| Completed | | Completed | ||
Line 115: | Line 122: | ||
| 12 | | 12 | ||
+ | | Search | ||
+ | | Accepted change request | ||
+ | | 100% | ||
+ | | Future Development | ||
+ | |- | ||
+ | |||
+ | | 13 | ||
| Name Card Recognition | | Name Card Recognition | ||
| Future Development | | Future Development | ||
Line 121: | Line 135: | ||
|- | |- | ||
− | | | + | | 14 |
| Usability | | Usability | ||
| Future Development | | Future Development | ||
Line 128: | Line 142: | ||
|- | |- | ||
− | | | + | | 15 |
| Workflow History | | Workflow History | ||
| Removed upon negotiation | | Removed upon negotiation | ||
Line 135: | Line 149: | ||
|- | |- | ||
− | | | + | | 16 |
| Usability | | Usability | ||
| Removed upon negotiation | | Removed upon negotiation | ||
Line 144: | Line 158: | ||
|} | |} | ||
</center><br /> | </center><br /> | ||
+ | |||
===Project Schedule=== | ===Project Schedule=== | ||
<center> | <center> | ||
Line 163: | Line 178: | ||
</center> | </center> | ||
===Project Metrics=== | ===Project Metrics=== | ||
− | + | ====Task Metrics==== | |
+ | [[IS480 Team wiki: 2016T1 PolyVision Metrics | Click here to view more about how we collect our tasks metrics.]]<br> | ||
+ | <center>[[File:INSIGHT Task-metrics.PNG]]</center><br /> | ||
+ | |||
+ | ====Bug Metrics==== | ||
+ | [[IS480 Team wiki: 2016T1 PolyVision Metrics | Click here to view more about how we collect our bug metrics.]]<br><br> | ||
+ | <center>[[File:INSIGHT bug-metrics.png|800px]]</center><br /> | ||
+ | |||
===Project Risks=== | ===Project Risks=== | ||
− | + | [[IS480 Team wiki: 2016T1 PolyVision Risk Management| Click here to view more about our risk management]] | |
− | + | ||
<center> | <center> | ||
{| class="wikitable" style="text-align: center; width:1050px" | {| class="wikitable" style="text-align: center; width:1050px" | ||
+ | |+ | ||
|- | |- | ||
− | + | ! scope="col" style="background:#c60026; color:#ffffff"| Risk Event | |
− | + | ! scope="col" style="background:#c60026; color:#ffffff"| Probability | |
− | ! scope="col | + | ! scope="col" style="background:#c60026; color:#ffffff"| Impact |
− | ! scope="col | + | ! scope="col" style="background:#c60026; color:#ffffff"| Mitigation Plan |
− | ! scope="col | ||
− | ! scope="col | ||
|- | |- | ||
− | | | + | | Incomplete deployment onto production server |
− | | | + | | Medium |
− | | | + | | High |
− | | | + | | Immediate debugging session |
|- | |- | ||
− | | | + | | Further changes to requirements |
− | | | + | | Medium |
− | | | + | | High |
− | | | + | | Regular meetings and feedback from client to ensure timely delivery |
|- | |- | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
− | </center | + | </center> |
+ | ===Technical Complexity=== | ||
<center> | <center> | ||
{| class="wikitable" style="text-align: center; width:1050px" | {| class="wikitable" style="text-align: center; width:1050px" | ||
|- | |- | ||
− | + | ! scope="col" style="background:#c60026; color:#ffffff"| Rank | |
− | + | ! scope="col" style="background:#c60026; color:#ffffff"| Complexity | |
− | ! scope="col | + | ! scope="col" style="background:#c60026; color:#ffffff"| Reason |
− | ! scope="col | ||
− | ! scope="col | ||
− | |||
|- | |- | ||
|1 | |1 | ||
− | | | + | | D3.js |
− | | | + | | Change of library from Chart.js to D3.js. Found that suitability of chart.js for visualisation is inadequete, thus the change. However, due to the limited time and steep learning curve in addition to other unfamiliar technologies and libraries we had to use, the dashboard development was quite challenge. |
− | |||
|- | |- | ||
|2 | |2 | ||
− | | | + | | FullCalendar V3 |
− | | | + | | Customize some additional features which are not included in the library. So in this case, one of our feature would be to show a tooltip when a user hover over an event. So in order to do so, we need to learn and pick-up JavaScript, and make changes to existing method provided in the library. |
− | |||
|- | |- | ||
|3 | |3 | ||
− | | | + | | Quartz.net |
− | | | + | | Scheduling of different threading’s to run at different timing of the days to perform automated tasks. Complex because certain automated jobs need to take place before another thread can trigger other jobs. |
− | |||
|- | |- | ||
|} | |} | ||
</center><br /> | </center><br /> | ||
− | |||
==Quality of Product== | ==Quality of Product== | ||
Line 249: | Line 257: | ||
| Risk Management | | Risk Management | ||
− | | | + | | [[IS480 Team wiki: 2016T1 PolyVision Risk Management | Risk Management]] |
|- | |- | ||
| Change Management | | Change Management | ||
− | | Change requests are raised after every meeting with the sponsor at the end of each Iteration. These requests are maintained within a spreadsheet then evaluated as a team on the priority, complexity before being included in the schedule by the PM. | + | | Change requests are raised after every meeting with the sponsor at the end of each Iteration. These requests are maintained within a spreadsheet then evaluated as a team on the priority, complexity before being included in the schedule by the PM.<br> |
+ | [[IS480 Team wiki: 2016T1 PolyVision Change Management | Change Management]] | ||
|- | |- | ||
| Meeting Minutes | | Meeting Minutes | ||
− | | All meetings with the sponsor, supervisor, and team are being documented | + | | All meetings with the sponsor, supervisor, and team are being documented.<br> |
+ | [[IS480 Team wiki: 2016T1 PolyVision Prototypes | Meeting Minutes]] | ||
|- | |- | ||
− | | | + | | Metrics |
− | | | + | | [[IS480 Team wiki: 2016T1 PolyVision Metrics | Metrics]] |
|- | |- | ||
− | |rowspan=" | + | |rowspan="2"| Design Diagrams |
− | | Use Case | + | | Use Case, Class Diagram, Sequence Diagram, As-Is Process Diagram, To-Be Process Diagram |
− | | | + | | [[IS480 Team wiki: 2016T1 PolyVision Project Documentation | Use Case<br>Class Diagram<br>Sequence Diagram<br>As-Is Process Diagram<br>To-Be Process Diagram]] |
|- | |- | ||
− | | | + | | Prototype |
− | | | + | | [[IS480 Team wiki: 2016T1 PolyVision Prototypes | Paper Prototype<br>Hi-fidelity Prototype]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |- | ||
− | |||
− | |||
− | |||
|- | |- | ||
| Testing | | Testing | ||
− | | User | + | | User Test Plan |
− | | | + | | [[IS480 Team wiki: 2016T1 PolyVision UT1 | User Testing 1]]<br> |
+ | [[IS480 Team wiki: 2016T1 PolyVision UT2 | User Testing 2]] | ||
|- | |- | ||
− | |||
|} | |} | ||
− | </center | + | </center> |
===Deployment=== | ===Deployment=== | ||
INSIGHT application can be found at this URL: https://vgpinsight.com <br /> | INSIGHT application can be found at this URL: https://vgpinsight.com <br /> | ||
<p><b>Note: Please ensure that you are using the latest version of Google Chrome browser with Javascript enabled to enjoy the full INSIGHT experience.</b></p> | <p><b>Note: Please ensure that you are using the latest version of Google Chrome browser with Javascript enabled to enjoy the full INSIGHT experience.</b></p> | ||
+ | |||
===Testing=== | ===Testing=== | ||
− | + | We have conducted one user testing.<br> | |
+ | |||
+ | <b>User Testing 2:</b><br> | ||
+ | [[IS480 Team wiki: 2016T1 PolyVision UT2 | <u>Click here for more details on our UT2</u>]]<br> | ||
+ | <li><b>Date: </b>13th, 15th & 16th Sep<br></li> | ||
+ | <li><b>Users: </b>2 DBS VGP users, 36 SMU students<br></li> | ||
+ | <li><b>Scope: </b>Account module, company management module, file upload module, deal management module<br></li> | ||
==Reflections== | ==Reflections== | ||
Line 307: | Line 308: | ||
<i>Collectively, Team PolyVision have a better understanding of their individual capabilities and limitations. The team has managed to pick up ASP .NET Razor markup language as a result of having every member responsible and accountable for a portion of INSIGHT application to foster greater ownership. And when the occasion arise that business needs are not fully aligned with the initial set of requirements, effective communication is paramount to align every stakeholder involved. </i> | <i>Collectively, Team PolyVision have a better understanding of their individual capabilities and limitations. The team has managed to pick up ASP .NET Razor markup language as a result of having every member responsible and accountable for a portion of INSIGHT application to foster greater ownership. And when the occasion arise that business needs are not fully aligned with the initial set of requirements, effective communication is paramount to align every stakeholder involved. </i> | ||
===Fusen Li=== | ===Fusen Li=== | ||
− | <i>As the Backend Developer of PolyVision, </i> | + | <i>As the Backend Developer of PolyVision, I learn to better plan and manage my schedule. Juggling between IS480 and other school related activities.</i> |
===Joleen Lee=== | ===Joleen Lee=== | ||
− | <i>As the Frontend Developer of PolyVision, </i> | + | <i>As the Frontend Developer of PolyVision, I learn how to optimize the web application for different devices adhering to best coding practices for consistency and reusability.</i> |
===Jonathan Lee=== | ===Jonathan Lee=== | ||
<i>As the Project Manager of PolyVision, I learn that it is important to grasp the optimum working preference and environment for the team to be productive. Most importantly, it is to enforce the above to ensure that the team can work more efficiently together. </i> | <i>As the Project Manager of PolyVision, I learn that it is important to grasp the optimum working preference and environment for the team to be productive. Most importantly, it is to enforce the above to ensure that the team can work more efficiently together. </i> | ||
===Kong Song Wei=== | ===Kong Song Wei=== | ||
− | <i>As the Database Architect of PolyVision, </i> | + | <i>As the Database Architect of PolyVision, I learn the importance of good application and database design, with frequent feedbacks to limit the impact of change requests.</i> |
===Ong Wee Tiong=== | ===Ong Wee Tiong=== | ||
− | <i>As the Backend Developer of PolyVision, </i> | + | <i>As the Backend Developer of PolyVision, I learn how to deal with unexpected situations especially the change requirements to better fit the client business needs.</i> |
Latest revision as of 15:19, 20 November 2016
Home | About Us | Project Overview | Project Management | Project Documentation |
Midterm
|
Project Progress Summary
Deployed URL: https://vgpinsight.com
Midterm Deck: View
Project Highlights
- INSIGHT has been deployed and ready for clients to use since 20th September 2016
- Concluded UAT with 35 SMU students on 16th September 2016
- Tested & verified INSIGHT functionalities with sponsors on 14th September 2016
- Picked up interactive visualization tool - D3.js
- Constantly aligning INSIGHT development according to business needs (translating feedback into actions)
Project Management
Project Status
S/N | Module | Description | Confidence (%) | Status |
---|---|---|---|---|
1 | Administrator | Fully deployed and tested on production server | 100% | Completed |
2 | User Account | Fully deployed and tested on production server | 100% | Completed |
3 | Company Management | Fully deployed and tested on production server | 100% | Completed |
4 | Deal Management | Fully deployed and tested on production server | 100% | Completed |
5 | Dashboard | Fully deployed and tested on production server | 100% | Completed |
6 | VC Management | Fully deployed and tested on production server | 100% | Completed |
7 | Event-Triggered Notification | Fully deployed and tested on production server | 100% | Completed |
8 | Custom Notification | Fully deployed and tested on production server | 100% | Completed |
9 | Reporting | Fully deployed and tested on production server | 100% | Completed |
10 | Newsfeed | Fully deployed and tested on production server | 100% | Completed |
11 | Backup | Fully deployed and tested on production server | 100% | Completed |
12 | Search | Accepted change request | 100% | Future Development |
13 | Name Card Recognition | Future Development | 100% | Future Development |
14 | Usability | Future Development | 100% | Future Development |
15 | Workflow History | Removed upon negotiation | N.A. | Removed upon negotiation |
16 | Usability | Removed upon negotiation | N.A. | Removed upon negotiation |
Project Schedule
Plan | Actual |
---|---|
Project Metrics
Task Metrics
Click here to view more about how we collect our tasks metrics.
Bug Metrics
Click here to view more about how we collect our bug metrics.
Project Risks
Click here to view more about our risk management
Risk Event | Probability | Impact | Mitigation Plan |
---|---|---|---|
Incomplete deployment onto production server | Medium | High | Immediate debugging session |
Further changes to requirements | Medium | High | Regular meetings and feedback from client to ensure timely delivery |
Technical Complexity
Rank | Complexity | Reason |
---|---|---|
1 | D3.js | Change of library from Chart.js to D3.js. Found that suitability of chart.js for visualisation is inadequete, thus the change. However, due to the limited time and steep learning curve in addition to other unfamiliar technologies and libraries we had to use, the dashboard development was quite challenge. |
2 | FullCalendar V3 | Customize some additional features which are not included in the library. So in this case, one of our feature would be to show a tooltip when a user hover over an event. So in order to do so, we need to learn and pick-up JavaScript, and make changes to existing method provided in the library. |
3 | Quartz.net | Scheduling of different threading’s to run at different timing of the days to perform automated tasks. Complex because certain automated jobs need to take place before another thread can trigger other jobs. |
Quality of Product
Intermediate Deliverables
Stage | Specifications | Work Products |
---|---|---|
Project Management | Schedule Management | A customized spreadsheet is maintained by the PM that is revised at the beginning of each Iteration ensuring that tasks are being completed. |
Risk Management | Risk Management | |
Change Management | Change requests are raised after every meeting with the sponsor at the end of each Iteration. These requests are maintained within a spreadsheet then evaluated as a team on the priority, complexity before being included in the schedule by the PM. | |
Meeting Minutes | All meetings with the sponsor, supervisor, and team are being documented. | |
Metrics | Metrics | |
Design Diagrams | Use Case, Class Diagram, Sequence Diagram, As-Is Process Diagram, To-Be Process Diagram | Use Case Class Diagram Sequence Diagram As-Is Process Diagram To-Be Process Diagram |
Prototype | Paper Prototype Hi-fidelity Prototype | |
Testing | User Test Plan | User Testing 1 |
Deployment
INSIGHT application can be found at this URL: https://vgpinsight.com
Note: Please ensure that you are using the latest version of Google Chrome browser with Javascript enabled to enjoy the full INSIGHT experience.
Testing
We have conducted one user testing.
User Testing 2:
Click here for more details on our UT2
Reflections
PolyVision
Collectively, Team PolyVision have a better understanding of their individual capabilities and limitations. The team has managed to pick up ASP .NET Razor markup language as a result of having every member responsible and accountable for a portion of INSIGHT application to foster greater ownership. And when the occasion arise that business needs are not fully aligned with the initial set of requirements, effective communication is paramount to align every stakeholder involved.
Fusen Li
As the Backend Developer of PolyVision, I learn to better plan and manage my schedule. Juggling between IS480 and other school related activities.
Joleen Lee
As the Frontend Developer of PolyVision, I learn how to optimize the web application for different devices adhering to best coding practices for consistency and reusability.
Jonathan Lee
As the Project Manager of PolyVision, I learn that it is important to grasp the optimum working preference and environment for the team to be productive. Most importantly, it is to enforce the above to ensure that the team can work more efficiently together.
Kong Song Wei
As the Database Architect of PolyVision, I learn the importance of good application and database design, with frequent feedbacks to limit the impact of change requests.
Ong Wee Tiong
As the Backend Developer of PolyVision, I learn how to deal with unexpected situations especially the change requirements to better fit the client business needs.