HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2016T1 PolyVision Midterm"

From IS480
Jump to navigation Jump to search
 
(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: Coming Soon...
+
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 100% on production server
+
| 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 100% on production server
+
| 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 100% on production server
+
| 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 100% on production server
+
| Fully deployed and tested on production server
 
| 100%
 
| 100%
 
| Completed
 
| Completed
Line 73: Line 73:
  
 
| 5
 
| 5
| Custom Notification
+
| Dashboard
| Fully deployed and tested 100% on production server
+
| 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
| Accepted change request
+
| Fully deployed and tested on production server
 
| 100%
 
| 100%
 
| Completed
 
| Completed
 
|-
 
|-
  
| 6
+
| 8
| VC Management
+
| Custom Notification
| Partially deployed and tested 100% on production server
+
| 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:
 
|-
 
|-
  
| 13
+
| 14
 
| Usability
 
| Usability
 
| Future Development
 
| Future Development
Line 128: Line 142:
 
|-
 
|-
  
| 14
+
| 15
 
| Workflow History
 
| Workflow History
 
| Removed upon negotiation
 
| Removed upon negotiation
Line 135: Line 149:
 
|-
 
|-
  
| 15
+
| 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===
Test
+
====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===
Test
+
[[IS480 Team wiki: 2016T1 PolyVision Risk Management| Click here to view more about our risk management]]
===Technical Complexity===
+
 
 
<center>
 
<center>
 
{| class="wikitable" style="text-align: center; width:1050px"
 
{| class="wikitable" style="text-align: center; width:1050px"
 +
|+
 
|-
 
|-
! style="background:#93001c; color:#ffffff" colspan="4" | Frontend Technical Complexities
+
! scope="col" style="background:#c60026; color:#ffffff"| Risk Event
|-
+
! scope="col" style="background:#c60026; color:#ffffff"| Probability
! scope="col" width="90px" style="background:#c60026; color:#ffffff"| Rank
+
! scope="col" style="background:#c60026; color:#ffffff"| Impact
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Complexity
+
! scope="col" style="background:#c60026; color:#ffffff"| Mitigation Plan
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Reason
 
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Solution
 
 
|-
 
|-
  
|1
+
| Incomplete deployment onto production server
|
+
| Medium
|
+
| High
|
+
| Immediate debugging session
 
|-
 
|-
  
|2
+
| Further changes to requirements
|
+
| Medium
|
+
| High
|
+
| Regular meetings and feedback from client to ensure timely delivery
 
|-
 
|-
 
|3
 
|
 
|
 
|
 
|-
 
 
 
|}
 
|}
</center><br />
+
</center>
  
 +
===Technical Complexity===
 
<center>
 
<center>
 
{| class="wikitable" style="text-align: center; width:1050px"
 
{| class="wikitable" style="text-align: center; width:1050px"
 
|-
 
|-
! style="background:#93001c; color:#ffffff" colspan="4" | Backend Technical Complexities
+
! scope="col" style="background:#c60026; color:#ffffff"| Rank
|-
+
! scope="col" style="background:#c60026; color:#ffffff"| Complexity
! scope="col" width="90px" style="background:#c60026; color:#ffffff"| Rank
+
! scope="col" style="background:#c60026; color:#ffffff"| Reason
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Complexity
 
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Reason
 
! scope="col" width="320px" style="background:#c60026; color:#ffffff"| Solution
 
 
|-
 
|-
  
 
|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 at:  
+
| All meetings with the sponsor, supervisor, and team are being documented.<br>
 +
[[IS480 Team wiki: 2016T1 PolyVision Prototypes | Meeting Minutes]]
 
|-
 
|-
  
| Risk Management
+
| Metrics
|  
+
| [[IS480 Team wiki: 2016T1 PolyVision Metrics | Metrics]]
 
|-
 
|-
  
|rowspan="6"| Design Diagrams
+
|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]]
 
|-
 
|-
  
| Class Diagram
+
| Prototype
|  
+
| [[IS480 Team wiki: 2016T1 PolyVision Prototypes | Paper Prototype<br>Hi-fidelity Prototype]]
|-
 
 
 
| System Sequence Diagram
 
|
 
|-
 
 
 
| AS-IS Business Process Diagram
 
|
 
|-
 
 
 
| TO-BE Business Process Diagram
 
|
 
|-
 
 
 
| Wireframes
 
|
 
 
|-
 
|-
  
 
| Testing
 
| Testing
| User (Students) Acceptance Test Case
+
| User Test Plan
|  
+
| [[IS480 Team wiki: 2016T1 PolyVision UT1 | User Testing 1]]<br>
 +
[[IS480 Team wiki: 2016T1 PolyVision UT2 | User Testing 2]]
 
|-
 
|-
 
 
|}
 
|}
</center><br />
+
</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===
Test
+
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

INSIGHT


Home About Us Project Overview Project Management Project Documentation


Midterm


Project Progress Summary

Deployed URL: https://vgpinsight.com
Midterm Deck: View

Project Highlights

  1. INSIGHT has been deployed and ready for clients to use since 20th September 2016
  2. Concluded UAT with 35 SMU students on 16th September 2016
  3. Tested & verified INSIGHT functionalities with sponsors on 14th September 2016
  4. Picked up interactive visualization tool - D3.js
  5. 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
INSIGHT Original Scope
INSIGHT Latest Scope
INSIGHT Original Timeline
INSIGHT Latest Timeline

Project Metrics

Task Metrics

Click here to view more about how we collect our tasks metrics.

INSIGHT Task-metrics.PNG


Bug Metrics

Click here to view more about how we collect our bug metrics.

INSIGHT bug-metrics.png


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.

Change Management

Meeting Minutes All meetings with the sponsor, supervisor, and team are being documented.

Meeting Minutes

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

User Testing 2

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

  • Date: 13th, 15th & 16th Sep
  • Users: 2 DBS VGP users, 36 SMU students
  • Scope: Account module, company management module, file upload module, deal management module
  • 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.