HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2015T2 6Sigma midterm wiki"

From IS480
Jump to navigation Jump to search
 
(36 intermediate revisions by 3 users not shown)
Line 45: Line 45:
  
 
<!--------------------------- Content Starts here ------------------>
 
<!--------------------------- Content Starts here ------------------>
 +
==Documents==
  
==In a nutshell==
+
[https://www.dropbox.com/s/8l7y4ooosjxezz5/MidTerm.pptx?dl=0 Mid Term Presentation] <br>
 +
[https://www.dropbox.com/s/he4xf97hjvm7wc1/6Sigma%20-%20List%20of%20APIs%20for%20IS480%20System%202.pdf?dl=0 IS480 Management System II List of APIs]
  
 +
==In A Nutshell==
 +
[[File:6Sigma Overall Midterm.png | center | 700px ]]
  
 
==Project Management==
 
==Project Management==
 
===Functions achieved===
 
===Functions achieved===
 
<br>
 
<br>
{| class="wikitable" style="margin: auto;width:70%; text-align:center"
+
{| class="wikitable" style="margin: auto;width:80%; text-align:center"
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:150px" | Iteration
+
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:100px" | Iteration
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:150px" | Module
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:150px" | Module
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:200px" | Function
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:200px" | Function
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Description
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Description
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:100px" | Confidence
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:500px" | Comments
 
|-
 
|-
 
| rowspan="4" | 1
 
| rowspan="4" | 1
Line 62: Line 68:
 
| CRUD Student Profile
 
| CRUD Student Profile
 
| Allows students to CRUD their profiles.
 
| Allows students to CRUD their profiles.
 +
| 1
 +
| -
 
|-
 
|-
 
| rowspan="2" | Team Module
 
| rowspan="2" | Team Module
 
| CRUD Team Profile
 
| CRUD Team Profile
 
| Allows a student to CRUD a team profile.
 
| Allows a student to CRUD a team profile.
 +
| 1
 +
| -
 
|-
 
|-
 
| CRUD Team member
 
| CRUD Team member
 
| Allows a student to CRUD team members.
 
| Allows a student to CRUD team members.
 +
| 1
 +
| -
 
|-
 
|-
 
| General Module
 
| General Module
 
| SSO
 
| SSO
 
| Allows all users with SMU domain credentials to login to the system.
 
| Allows all users with SMU domain credentials to login to the system.
 +
| 1
 +
| Initially faced some issue configuring the SSO to suit our application, but it was resolved quickly.
 
|- <ITERATION 2>
 
|- <ITERATION 2>
 
| rowspan="3" | 2
 
| rowspan="3" | 2
Line 78: Line 92:
 
| CRUD Faculty
 
| CRUD Faculty
 
| Allows faculty to CRUD their profiles.
 
| Allows faculty to CRUD their profiles.
 +
| 1
 +
| -
 
|-
 
|-
 
| rowspan="2" | Sponsor Module
 
| rowspan="2" | Sponsor Module
 
| CRUD Accounts
 
| CRUD Accounts
 
| Allows new sponsors to request an account and propose a project.
 
| Allows new sponsors to request an account and propose a project.
 +
| 1
 +
| -
 
|-
 
|-
 
| Login
 
| Login
 
| Allows external sponsors to login as they do not have SSO accounts.
 
| Allows external sponsors to login as they do not have SSO accounts.
 +
| 1
 +
| -
 
|- <ITERATION 3>
 
|- <ITERATION 3>
 
| 3
 
| 3
Line 90: Line 110:
 
| CRUD Projects
 
| CRUD Projects
 
| Allows sponsors to CRUD projects for students to take
 
| Allows sponsors to CRUD projects for students to take
 +
| 1
 +
| -
 
|- <ITERATION 4>
 
|- <ITERATION 4>
 
| rowspan="3" | 4
 
| rowspan="3" | 4
Line 95: Line 117:
 
| CRUD Project Teams
 
| CRUD Project Teams
 
| Allows sponsor to approve or reject teams for their projects.
 
| Allows sponsor to approve or reject teams for their projects.
 +
| 1
 +
| -
 
|-
 
|-
 
| Team Module
 
| Team Module
 
| CRUD Project Status
 
| CRUD Project Status
 
| Allows the course coordinator/supervisor to update the status of the team’s project. (i.e. accepted or rejected)
 
| Allows the course coordinator/supervisor to update the status of the team’s project. (i.e. accepted or rejected)
 +
| 1
 +
| -
 
|-
 
|-
 
| Coordinator Module
 
| Coordinator Module
 
| CRUD Term
 
| CRUD Term
 
| Allows the Course Coordinator to CRUD terms in the system.
 
| Allows the Course Coordinator to CRUD terms in the system.
 +
| 1
 +
| -
 
|- <ITERATION 5>
 
|- <ITERATION 5>
 
| rowspan="3" | 5
 
| rowspan="3" | 5
Line 108: Line 136:
 
| Assign Supervisor/Reviewer to Team
 
| Assign Supervisor/Reviewer to Team
 
| Allows Course Coordinator to a specific supervisor and assign him to a specific team manually.
 
| Allows Course Coordinator to a specific supervisor and assign him to a specific team manually.
 +
| 1
 +
| -
 
|-
 
|-
 
| Coordinator Module
 
| Coordinator Module
 
| Suspend Team
 
| Suspend Team
 
| Suspend the team users so that they will not be a nuisance to the other users. Team will be unsuspended once the Course Coordinator deemed its ok. There is a user status attached to all the users (active/ suspended) which is only viewable by the admin.
 
| Suspend the team users so that they will not be a nuisance to the other users. Team will be unsuspended once the Course Coordinator deemed its ok. There is a user status attached to all the users (active/ suspended) which is only viewable by the admin.
 +
| 1
 +
| -
 
|-
 
|-
 
| Coordinator Module
 
| Coordinator Module
 
| Assign Sponsor Role
 
| Assign Sponsor Role
 
| Course coordinator can assign sponsor roles to faculty.
 
| Course coordinator can assign sponsor roles to faculty.
 +
| 1
 +
| -
 
|- <ITERATION 6>
 
|- <ITERATION 6>
 
| rowspan="3" | 6
 
| rowspan="3" | 6
Line 121: Line 155:
 
| Request Project Approval
 
| Request Project Approval
 
| Allows students to request the sponsor to accept the team for the project.
 
| Allows students to request the sponsor to accept the team for the project.
 +
| 1
 +
| -
 
|-
 
|-
 
| Team Module
 
| Team Module
 
| CRUD Proposal/Mid- Term/Final Review
 
| CRUD Proposal/Mid- Term/Final Review
 
| Allows course coordinators, supervisors, reviewers and sponsors to add their proposal/mid-term/final reviews
 
| Allows course coordinators, supervisors, reviewers and sponsors to add their proposal/mid-term/final reviews
 +
| 1
 +
| -
 
|-
 
|-
 
| Project Module
 
| Project Module
 
| CRUD Project Details/Documents
 
| CRUD Project Details/Documents
 
| Allows team to use the website as a replacement for wiki for their project.
 
| Allows team to use the website as a replacement for wiki for their project.
 +
| 1
 +
| -
 
|-
 
|-
 
|- <ITERATION 7>
 
|- <ITERATION 7>
Line 135: Line 175:
 
| Download statistics
 
| Download statistics
 
| User must be able to download IS480 statistics.
 
| User must be able to download IS480 statistics.
 +
| 1
 +
| UI Layout is still a bit messy, but it is fully functional
 
|-
 
|-
 
| Search Module
 
| Search Module
 
| Search Student / Faculty / Project / Sponsor / Team
 
| Search Student / Faculty / Project / Sponsor / Team
| Search for Student / Faculty / Project / Sponsor / Team based on what user entered into the search bar so that he can retrieve the information  
+
| Search for Student / Faculty / Project / Sponsor / Team based on what user entered into the search bar so that he can retrieve the information
 +
| 1
 +
| -
 +
|- <ITERATION 8>
 +
| 8
 +
| General Module
 +
| Generation of Email to Sponsors
 +
| Generate an email to sponsor upon signing up for the system
 +
| 1
 +
| -
 +
|- <ITERATION 9>
 +
|  9
 +
| Analytics Module
 +
| Clustering of Similar teams
 +
| Use of algorithm to find out the similar teams in IS480 based on technology & skills
 +
| 1
 +
| Bala initially wanted to use R programming for this, but realized that it was too difficult to implement. This is now implemented through the use of Java
 
|}
 
|}
 
<br>
 
<br>
 +
 
===Functions To Be Achieved===
 
===Functions To Be Achieved===
  
Line 148: Line 207:
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:200px" | Function
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:200px" | Function
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Description
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Description
 +
|- <ITERATION 10>
 +
| rowspan="4" | Iteration 10
 +
| rowspan="3" | General Module
 +
| View Statistics
 +
| Must be able to view statistics. This is coupled together with the learning analytics module.
 +
|-
 +
| Manipulate Statistics
 +
| Must be able to manipulate statistics based on inputs for viewing.
 
|-
 
|-
| rowspan="3" | Iteration 8
+
| Audit
 +
| Keeps a track record of all important actions performed by all users in the system.
 +
|-
 +
| Analytics Module
 +
| Learning Analytics
 +
| Through the use of algorithms, generate actionable insights for teams, projects, technology, or skills
 +
|- <ITERATION 11>
 +
| rowspan="3" | Iteration 11
 
| rowspan="2" | General Module
 
| rowspan="2" | General Module
 
| Send Notifcations to users  
 
| Send Notifcations to users  
Line 157: Line 231:
 
| View all the important announcements on home page so that students can be updated on the latest news regarding the FYP projects.
 
| View all the important announcements on home page so that students can be updated on the latest news regarding the FYP projects.
 
|-  
 
|-  
| UI
+
| Scheduling Module
| Integrated Grid View for Grading
+
| Integrate groups to sign up for slots instead of users
| Allows faculty to easily access past grades given and review grades easily.
+
| Allow team to sign up for slots.
|- <ITERATION 9>
 
| rowspan="3" | Iteration 9 - 12
 
| rowspan="3" | General Module
 
| View Statistics
 
| Must be able to view statistics. This is coupled together with the learning analytics module.
 
|-
 
| Manipulate Statistics
 
| Must be able to manipulate statistics based on inputs for viewing.  
 
 
|-
 
|-
| Audit
 
| Keeps a track record of all important actions performed by all users in the system.
 
 
|}
 
|}
  
Line 188: Line 252:
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
|-
 
|-
| Previously, we had resource files (File containing end points) which groups all business functions together, regardless of the role of the executor. <br>
+
| Previously, we had resource files (File containing end points) which separated the different roles from their business functions (Eg: Faculty's business functions on teams were classified into FacultyTeamResource). <b>this did not conform the the REST API standards</b>, and resulted in repeated codes.
This resulted in each resource file extending up to 500 lines, and it was difficult to trace code and fix bugs, resulting in delay. This has also frustrated a lot of teammates. <br>
+
This resulted in many different resource files, and it was difficult to trace code and fix bugs, resulting in delay. This has also frustrated a lot of teammates. <br>
 
<b>Our team foresaw that maintainability was going to be a problem in the long run. </b>  
 
<b>Our team foresaw that maintainability was going to be a problem in the long run. </b>  
|  It was decided for individual resource / endpoint files to be developed for each function for each particular role. Eg: Functionalities involving teams for the Faculty role would be classified under facultyteam resources.
+
|  It was decided for all business functions to be grouped together under a same resource file, with different roles executing different tasks through the use of If-Else blocks. Eg: Functionalities involving teams would be classifed under TeamResource.
 
| rowspan="2" | <b> This resulted in a delay of 2 days.</b> As we previously had an increase in buffer day from iteration 3, <b>this resulted in a deduction of 2 days from our buffer.</b>
 
| rowspan="2" | <b> This resulted in a delay of 2 days.</b> As we previously had an increase in buffer day from iteration 3, <b>this resulted in a deduction of 2 days from our buffer.</b>
 
|-
 
|-
Line 206: Line 270:
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
|-
 
|-
| After much discussion with sponsors during the sponsor test on 16th Jan 2015, Fiona has suggested to the team that it would be advisable for the team to remove functions which are of less priority and without much value add such that more can be achieved by focusing on the core functionalities / functionalities with the most value add.
+
| Although we have finished the main functionalities required according to our sponsor’s requirements, our sponsors suggested many usability improvements which we tried to cater to. As a result, we found ourselves working harder and harder. This is a significant signal of a creep of scope. Moreover, our supervisor Prof. Chris Boesch reminded us that the ultimate aim of the system should be to benefit all stakeholders. <br><br> After much discussion with sponsors during the sponsor test on 16th Jan 2015, Fiona has suggested to the team that it would be advisable for the team to remove functions which are of less priority and without much value add such that more can be achieved by focusing on the core functionalities / functionalities with the most value add.  
in order to find out whether this would be much of a value add to our main target users (Students), our team has actually conducted a survey and we’ve summarized the results in the surveys page [[IS480 Team wiki: 2015T2 6Sigma User Surveys | HERE]]
+
In order to find out whether this would be much of a value add to our main target users (Students), our team has actually conducted a survey and we’ve summarized the results in the surveys page [[IS480 Team wiki: 2015T2 6Sigma User Surveys | HERE]]
| 6Sigma has decided to remove CRUD Comments, iterations and the blue front page implantations from our project scope.
+
| 6Sigma has decided to remove CRUD Comments, iterations from our project scope,  
|-
 
| Currently, our team has looked into the viability of implementing learning analytics, and we felt that it  would be too challenging to properly implement a fully functional learning analytics modulate within the short duration of 2 months
 
| As such, our team would like to replace this Good to have functionality, and improve on the existing secondary functionalities (Audit Trail, View Statistics, and Manipulate Statistics) for the rest of the iterations.
 
| rowspan='2' | <b> Audit Trail, View Statistics </b>(Previously scheduled in iteration 8) and <b>Manipulate Statistics</b> (Scheduled in Iteration 7) would be spread across the remaining iterations. Also, the extra 5 days of buffer would be used, if there's a need.
 
|-
 
| After the last sponsor meeting which was held on 16th Jan 2015, it was evident that the basic core functionalities of our application was still not up to standard, and the basic functionalities require more work to be added on. Apart from that, the user test was to be conducted 2 weeks’ time, on Jan 30th.  <br>
 
<b>Our team felt that it would be wiser to prioritize on fixing the basic core functionalities of our application before moving on to tackle secondary functionalities. </b>
 
| Therefore, our team felt that more effort should be dedicated to the core functionalities to ensure the application is stable enough for user testing on 30th Jan. As a result, our team has decided to postpone manipulate statistics to further iterations.
 
 
|}
 
|}
 +
  
 
<br>
 
<br>
 
<br>
 
<br>
 +
<div style="text-align: center;"><font size="4" color=green> ''' Iteration 8 : 24 Jan 2015 to 7 Feb 2015'''</font></div>
 +
{| class="wikitable" style="margin: auto;width:90%; text-align:center"
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width 400px" | Issues
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 400px" | Solution
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 +
|-
 +
| After a series of user tests (Student and Faculty) conducted on 28 - 30th Jan, our team realized that usability was a huge issue to all of our stakeholders. Most of our users found that our fonts and colors were difficult to read, functionalities were difficult to find as they were not intuitively displayed.
 +
|  While our team understand that it would not be feasible to develop a UI which suits the needs of all members in the IS480 Community, we decided to research more about the best practices of UI Designing. Hence, we discovered Angular Material, a library built for AngularJS, which implements Google's material design principles. Angular Material provides a set of reusable, well-tested, and accessible UI components based on the Material Design system. We decided to adopt this because the elements in Material Design is based on Google's empirical research on the best design principles.  <br><br> <b>Google Material Design</b> is a comprehensive guide for visual, motion, and interaction design across platforms and devices.To find out more about Material Design, click [http://www.google.com/design/spec/material-design/introduction.html here]
 +
| 6Sigma has decided to replace the previously scheduled Integrated Grid View for faculty. Also, our team has finished the "send email notifications to sponsors upon creation" function. However, the rest of the notifications functions and view notifications would be pushed to iteration 11. If need be, our team would use our Iteration 12 buffer to handle this functionality.
 +
|}
 +
 +
===User Tests===
 
<div style="text-align: center;"><font size="4" color=green> ''' User Tests'''</font></div>
 
<div style="text-align: center;"><font size="4" color=green> ''' User Tests'''</font></div>
 
{| class="wikitable" style="margin: auto;width:50%; text-align:center"
 
{| class="wikitable" style="margin: auto;width:50%; text-align:center"
Line 255: Line 324:
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: 300px" | Mitigation towards schedule
 
|-
 
|-
| <b>Integrated Grid View for grading </b>. <br><br>After gathering feedback from Prof. Jason Woodard, he suggested that an integrated grid view for grading would be useful for the faculty members.
+
| <strike><b>Integrated Grid View for grading </b>. <br><br>After gathering feedback from Prof. Jason Woodard, he suggested that an integrated grid view for grading would be useful for the faculty members. </strike> <br><br> <b> UPDATE: </b> The grading view is pushed back after mid term and was replaced by Google (Angular) Material Design due to usability concerns which was one of the reason why the previous project failed. Angular Material Design provides a set of reusable, well-tested, and accessible UI components based on the Material Design system, which is a researched and well tested visual language for users that synthesizes the classic principles of good design. This is done so as to benefit all stakeholders through a more usable application based on best UI design practices.
 +
 
 +
 
 
| Iteration 8
 
| Iteration 8
| ?????
+
| Send notifications to users and View Notifications would be scheduled to iteration 11. If need be, we would use the 2 weeks buffer (Iteration 12), which was previously allocated for bug fixing before full time rollout
 
|}
 
|}
 
  
 
===Removal===
 
===Removal===
Line 274: Line 344:
  
 
==Project Metrics==
 
==Project Metrics==
===Bug Metrics===
 
 
  
 
===Schedule Metrics===
 
===Schedule Metrics===
 +
<div style="text-align: center;"><font size="4"> We've adopted the following schedule metrics guidelines to help us track the progress of our project.</font></div>
  
 +
[[File:6Sigma Schedule Metrics.png|center| 800px]]
 +
<br>
 +
[[File:6 Sigma Schedule Metrics timeline.png | center | 900px ]]
  
 +
{| class="wikitable" style="margin: auto;width:70%; text-align:center"
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:50px" | Iteration
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:70px" | Planned Days
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:70px" | Actual Days
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:50px" | Score
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Actions Taken
 +
|-
 +
| 1
 +
| 14
 +
| 14
 +
| 100%
 +
| None. We are on schedule
 +
|-
 +
| 2
 +
| 14
 +
| 14
 +
| 100%
 +
| None. We are on schedule
 +
|-
 +
| 3
 +
| 14
 +
| 13
 +
| 107%
 +
| Add one day to buffer
 +
|-
 +
| 4
 +
| 14
 +
| 14
 +
| 100%
 +
| None. We are on schedule
 +
|-
 +
| 5
 +
| 14
 +
| 16
 +
| 87.5%
 +
| As we previously had an increase in buffer day from iteration 3, this resulted in a deduction of 1 day from our buffer. For more information on the problems and solutions for this iteration, refer to the [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| "Issues Faced"]] tab.
 +
|-
 +
| 6
 +
| 14
 +
| 14
 +
| 100%
 +
| None. We are on schedule
 +
|-
 +
| 7
 +
| 14
 +
| 14
 +
| 100%
 +
|Decided to push Manipulate Statistics to further iterations. For more information on the problems and solutions for this iteration, refer to the [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| "Issues Faced"]] tab.
 +
|-
 +
| 8
 +
| 14
 +
| 14
 +
| 100%
 +
| We completed the sending of email notification to sponsors. However, other notifications would be pushed to further iterations such that we can focus on Angular Material. For more information on the problems and solutions for this iteration, refer to the [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| "Issues Faced"]] tab.
 +
|-
 +
| 9
 +
| 14
 +
| 14
 +
| 100%
 +
| None. We are on schedule. However, it is important to note that there were still many bugs in this iteration, which is due to the Angular Material UI change
 +
|}
  
 +
===Bug Metrics===
  
 +
[[File:6Sigma Bug Metrics.png | center | 900px]]
  
 +
{| class="wikitable" style="margin: auto;width:80%; text-align:center"
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:50px" | Iteration
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:50px" | Score
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Notable reasons
 +
! style="font-weight: bold;background: #16a085;color:#ecf0f1; width:300px" | Actions Taken
 +
|-
 +
| 1
 +
| 26
 +
| -
 +
|Stop current development and resolve the bug immediately. However, as we completed the functionalities early, we managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
 +
|-
 +
| 2
 +
| 6
 +
| -
 +
| Use scheduled debugging time for debugging
 +
|-
 +
| 3
 +
| 30
 +
| -
 +
| Stop current development and resolve the bug immediately. However, as we completed the functionalities early, we managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
 +
|-
 +
| 4
 +
| 35
 +
| -
 +
| Stop current development and resolve the bug immediately.We managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
 +
|-
 +
| 5
 +
| 95
 +
| Previously, we had resource files (File containing end points) which groups all business functions together, regardless of the role of the executor. Our team foresaw that maintainability was going to be a problem in the long run with the adoption of this structure. <br><br>A major overhaul of codes was done in this iteration, and hence, the high bug count.
 +
| Stop current development and resolve the bug immediately. We are unable to complete bug fixing on time, and hence, we decided to use up 2 days of our buffer. Currently, we are left with 5 days of buffer after this iteration.
 +
|-
 +
| 6
 +
| 30
 +
| -
 +
| Stop current development and resolve the bug immediately. We managed to solve the bugs before the end of iteration. Hence, project was not rescheduled.
 +
|-
 +
| 7
 +
| 42
 +
| It was evident that the basic core functionalities of our application was still not up to standard, and the basic functionalities require more work to be added on. Apart from that, the user test was to be conducted 2 weeks’ time, on Jan 30th.
 +
| Stop current development and resolve the bug immediately. As too many funactionalties was breaking at this point in time, we decided to reschedule "Manipulate Statistics" to later iterations.  Click [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| HERE]] to find out more
 +
|-
 +
| 8
 +
| 75
 +
| We decided to revamp our UI to adopt the best practices and principles of design through the use of Angular Material. As such, there were many UI bugs which were discovered with the re-designing of our UI.
 +
| Stop current development and resolve the bug immediately. Click [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| HERE]] to find out more about the change management plan for Angular Material
 +
|-
 +
| 9
 +
| 80
 +
| We decided to revamp our UI to adopt the best practices and principles of design through the use of Angular Material. As such, there were many UI bugs which were discovered with the re-designing of our UI.
 +
| Stop current development and resolve the bug immediately. Click [[IS480 Team wiki: 2015T2 6Sigma Issues Faced| HERE]] to find out more about the change management plan for Angular Material
 +
|}
 +
 +
== Team's Metrics ==
  
 +
===Coding Workload===
 +
[[File:6Sigma Coding workload.png | center | 1000px]]
  
 +
===Coding Hours===
 +
[[File:6Sigma Coding Hours.png | center | 1000px]]
  
 +
===Non Coding Hours===
 +
[[File:6Sigma Non Coding Hours.png | center | 1000px]]
 +
 +
===Total Hours===
 +
[[File:6Sigma Total Hours.png | center | 1000px]]
 +
 +
===Punch Card (GIT)===
 +
[[File:6Sigma Punch card.png | center | 1000px]]
  
 
==Risks==
 
==Risks==
  
 
+
===Risks===
 
[[File:6Sigma Risk Table.png |center| 800px]]
 
[[File:6Sigma Risk Table.png |center| 800px]]
  
Line 332: Line 532:
 
|}
 
|}
  
 +
 +
===Mitigation===
 +
 +
[[File:6Sigma Risk mitigation.png | center | 900px]]
  
 
==Technical Complexity==
 
==Technical Complexity==
 +
 +
[[File:6Sigma Technical Complexity.png | center | 800px]]
 +
 +
==Learning Outcomes==
 +
 +
Link to our Knowledge Based Contribution :[https://wiki.smu.edu.sg/is480/Knowledge_base#Angular_JS here]
 +
[[File:6Sigma Learning outcomes.png | center | 700px]]

Latest revision as of 15:20, 24 February 2015

6Sigma Logo.png

Home

About Us

IS480 Management System

Project Management

Project Documentation

Home Midterm Finals

Documents

Mid Term Presentation
IS480 Management System II List of APIs

In A Nutshell

6Sigma Overall Midterm.png

Project Management

Functions achieved


Iteration Module Function Description Confidence Comments
1 Student Module CRUD Student Profile Allows students to CRUD their profiles. 1 -
Team Module CRUD Team Profile Allows a student to CRUD a team profile. 1 -
CRUD Team member Allows a student to CRUD team members. 1 -
General Module SSO Allows all users with SMU domain credentials to login to the system. 1 Initially faced some issue configuring the SSO to suit our application, but it was resolved quickly.
2 Faculty Module CRUD Faculty Allows faculty to CRUD their profiles. 1 -
Sponsor Module CRUD Accounts Allows new sponsors to request an account and propose a project. 1 -
Login Allows external sponsors to login as they do not have SSO accounts. 1 -
3 Project Module CRUD Projects Allows sponsors to CRUD projects for students to take 1 -
4 Project Module CRUD Project Teams Allows sponsor to approve or reject teams for their projects. 1 -
Team Module CRUD Project Status Allows the course coordinator/supervisor to update the status of the team’s project. (i.e. accepted or rejected) 1 -
Coordinator Module CRUD Term Allows the Course Coordinator to CRUD terms in the system. 1 -
5 Faculty Module Assign Supervisor/Reviewer to Team Allows Course Coordinator to a specific supervisor and assign him to a specific team manually. 1 -
Coordinator Module Suspend Team Suspend the team users so that they will not be a nuisance to the other users. Team will be unsuspended once the Course Coordinator deemed its ok. There is a user status attached to all the users (active/ suspended) which is only viewable by the admin. 1 -
Coordinator Module Assign Sponsor Role Course coordinator can assign sponsor roles to faculty. 1 -
6 Project Module Request Project Approval Allows students to request the sponsor to accept the team for the project. 1 -
Team Module CRUD Proposal/Mid- Term/Final Review Allows course coordinators, supervisors, reviewers and sponsors to add their proposal/mid-term/final reviews 1 -
Project Module CRUD Project Details/Documents Allows team to use the website as a replacement for wiki for their project. 1 -
7 General Module Download statistics User must be able to download IS480 statistics. 1 UI Layout is still a bit messy, but it is fully functional
Search Module Search Student / Faculty / Project / Sponsor / Team Search for Student / Faculty / Project / Sponsor / Team based on what user entered into the search bar so that he can retrieve the information 1 -
8 General Module Generation of Email to Sponsors Generate an email to sponsor upon signing up for the system 1 -
9 Analytics Module Clustering of Similar teams Use of algorithm to find out the similar teams in IS480 based on technology & skills 1 Bala initially wanted to use R programming for this, but realized that it was too difficult to implement. This is now implemented through the use of Java


Functions To Be Achieved

Iteration Module Function Description
Iteration 10 General Module View Statistics Must be able to view statistics. This is coupled together with the learning analytics module.
Manipulate Statistics Must be able to manipulate statistics based on inputs for viewing.
Audit Keeps a track record of all important actions performed by all users in the system.
Analytics Module Learning Analytics Through the use of algorithms, generate actionable insights for teams, projects, technology, or skills
Iteration 11 General Module Send Notifcations to users Allows users to send notification to users via the system and/or email when there are important announcements to make.
View Notifications View all the important announcements on home page so that students can be updated on the latest news regarding the FYP projects.
Scheduling Module Integrate groups to sign up for slots instead of users Allow team to sign up for slots.

Planned Schedule

6Sigma OldPlan.png

Actual Schedule

6Sigma Timeline.png

Issues Faced And Reasons for Change in Schedule


Iteration 5 : 8 December 2014 to 23 December 2014
Issues Solution Mitigation towards schedule
Previously, we had resource files (File containing end points) which separated the different roles from their business functions (Eg: Faculty's business functions on teams were classified into FacultyTeamResource). this did not conform the the REST API standards, and resulted in repeated codes.

This resulted in many different resource files, and it was difficult to trace code and fix bugs, resulting in delay. This has also frustrated a lot of teammates.
Our team foresaw that maintainability was going to be a problem in the long run.

It was decided for all business functions to be grouped together under a same resource file, with different roles executing different tasks through the use of If-Else blocks. Eg: Functionalities involving teams would be classifed under TeamResource. This resulted in a delay of 2 days. As we previously had an increase in buffer day from iteration 3, this resulted in a deduction of 2 days from our buffer.
Our team was still new to the technology of JPA, and we developed our business logics in the resource files.
This resulted in repeated codes.
After researching on the best practices online, we discovered that business logics were best to be encapsulated in the service files, in order to achieve a Service Oriented Architecture. This resulted in refactoring of business logics into the service files.



Iteration 7 : 9 Jan 2015 to 24 Jan 2015
Issues Solution Mitigation towards schedule
Although we have finished the main functionalities required according to our sponsor’s requirements, our sponsors suggested many usability improvements which we tried to cater to. As a result, we found ourselves working harder and harder. This is a significant signal of a creep of scope. Moreover, our supervisor Prof. Chris Boesch reminded us that the ultimate aim of the system should be to benefit all stakeholders.

After much discussion with sponsors during the sponsor test on 16th Jan 2015, Fiona has suggested to the team that it would be advisable for the team to remove functions which are of less priority and without much value add such that more can be achieved by focusing on the core functionalities / functionalities with the most value add.
In order to find out whether this would be much of a value add to our main target users (Students), our team has actually conducted a survey and we’ve summarized the results in the surveys page HERE 6Sigma has decided to remove CRUD Comments, iterations from our project scope,




Iteration 8 : 24 Jan 2015 to 7 Feb 2015
Issues Solution Mitigation towards schedule
After a series of user tests (Student and Faculty) conducted on 28 - 30th Jan, our team realized that usability was a huge issue to all of our stakeholders. Most of our users found that our fonts and colors were difficult to read, functionalities were difficult to find as they were not intuitively displayed. While our team understand that it would not be feasible to develop a UI which suits the needs of all members in the IS480 Community, we decided to research more about the best practices of UI Designing. Hence, we discovered Angular Material, a library built for AngularJS, which implements Google's material design principles. Angular Material provides a set of reusable, well-tested, and accessible UI components based on the Material Design system. We decided to adopt this because the elements in Material Design is based on Google's empirical research on the best design principles.

Google Material Design is a comprehensive guide for visual, motion, and interaction design across platforms and devices.To find out more about Material Design, click here
6Sigma has decided to replace the previously scheduled Integrated Grid View for faculty. Also, our team has finished the "send email notifications to sponsors upon creation" function. However, the rest of the notifications functions and view notifications would be pushed to iteration 11. If need be, our team would use our Iteration 12 buffer to handle this functionality.

User Tests

User Tests
Event Previous Date Re-scheduled to Re-scheduled date
Sponsor Test 1 2 Jan 2015 Faculty Test 30 Jan 2015
Student Test 1 12 Jan 2015 Student Test 30 Jan 2015
Student Test 2 2 Feb 2015 User Test 2 12 Feb 2015
Faculty Test 2 9th Feb 2015

Changes in Scope

Addition

Function Scheduled into: Mitigation towards schedule
Integrated Grid View for grading .

After gathering feedback from Prof. Jason Woodard, he suggested that an integrated grid view for grading would be useful for the faculty members.


UPDATE: The grading view is pushed back after mid term and was replaced by Google (Angular) Material Design due to usability concerns which was one of the reason why the previous project failed. Angular Material Design provides a set of reusable, well-tested, and accessible UI components based on the Material Design system, which is a researched and well tested visual language for users that synthesizes the classic principles of good design. This is done so as to benefit all stakeholders through a more usable application based on best UI design practices.


Iteration 8 Send notifications to users and View Notifications would be scheduled to iteration 11. If need be, we would use the 2 weeks buffer (Iteration 12), which was previously allocated for bug fixing before full time rollout

Removal

Function Mitigation towards schedule
Sponsor Comments

We conducted a survey to find out whether sponsor comments would be beneficial to the student community. The results of the survey suggests that majority of the students preferred communicating with the sponsors on a face to face basis, and they were also worried about the privacy of their comments. Hence, we decided not to proceed with the development of this function.

More information about the survey
The time allocated for developing this function would be allocated into Integrated Grid View and Analytics module
Iterations

We conducted a survey to find out whether students would prefer to upload their iteration information onto the system such that analysis results could be provided to them for better project management. The results of the survey suggests that majority of the students did not welcome this as they felt that the increase in workload outweighs the added advantage it brings.

More information about the survey
The time allocated for developing this function would be allocated into Integrated Grid View and Analytics module.

Project Metrics

Schedule Metrics

We've adopted the following schedule metrics guidelines to help us track the progress of our project.
6Sigma Schedule Metrics.png


6 Sigma Schedule Metrics timeline.png
Iteration Planned Days Actual Days Score Actions Taken
1 14 14 100% None. We are on schedule
2 14 14 100% None. We are on schedule
3 14 13 107% Add one day to buffer
4 14 14 100% None. We are on schedule
5 14 16 87.5% As we previously had an increase in buffer day from iteration 3, this resulted in a deduction of 1 day from our buffer. For more information on the problems and solutions for this iteration, refer to the "Issues Faced" tab.
6 14 14 100% None. We are on schedule
7 14 14 100% Decided to push Manipulate Statistics to further iterations. For more information on the problems and solutions for this iteration, refer to the "Issues Faced" tab.
8 14 14 100% We completed the sending of email notification to sponsors. However, other notifications would be pushed to further iterations such that we can focus on Angular Material. For more information on the problems and solutions for this iteration, refer to the "Issues Faced" tab.
9 14 14 100% None. We are on schedule. However, it is important to note that there were still many bugs in this iteration, which is due to the Angular Material UI change

Bug Metrics

6Sigma Bug Metrics.png
Iteration Score Notable reasons Actions Taken
1 26 - Stop current development and resolve the bug immediately. However, as we completed the functionalities early, we managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
2 6 - Use scheduled debugging time for debugging
3 30 - Stop current development and resolve the bug immediately. However, as we completed the functionalities early, we managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
4 35 - Stop current development and resolve the bug immediately.We managed to solve the bugs before the end of iteration. Hence, project was not rescheduled
5 95 Previously, we had resource files (File containing end points) which groups all business functions together, regardless of the role of the executor. Our team foresaw that maintainability was going to be a problem in the long run with the adoption of this structure.

A major overhaul of codes was done in this iteration, and hence, the high bug count.
Stop current development and resolve the bug immediately. We are unable to complete bug fixing on time, and hence, we decided to use up 2 days of our buffer. Currently, we are left with 5 days of buffer after this iteration.
6 30 - Stop current development and resolve the bug immediately. We managed to solve the bugs before the end of iteration. Hence, project was not rescheduled.
7 42 It was evident that the basic core functionalities of our application was still not up to standard, and the basic functionalities require more work to be added on. Apart from that, the user test was to be conducted 2 weeks’ time, on Jan 30th. Stop current development and resolve the bug immediately. As too many funactionalties was breaking at this point in time, we decided to reschedule "Manipulate Statistics" to later iterations. Click HERE to find out more
8 75 We decided to revamp our UI to adopt the best practices and principles of design through the use of Angular Material. As such, there were many UI bugs which were discovered with the re-designing of our UI. Stop current development and resolve the bug immediately. Click HERE to find out more about the change management plan for Angular Material
9 80 We decided to revamp our UI to adopt the best practices and principles of design through the use of Angular Material. As such, there were many UI bugs which were discovered with the re-designing of our UI. Stop current development and resolve the bug immediately. Click HERE to find out more about the change management plan for Angular Material

Team's Metrics

Coding Workload

6Sigma Coding workload.png

Coding Hours

6Sigma Coding Hours.png

Non Coding Hours

6Sigma Non Coding Hours.png

Total Hours

6Sigma Total Hours.png

Punch Card (GIT)

6Sigma Punch card.png

Risks

Risks

6Sigma Risk Table.png


We've classified the risks we've identified into 3 categories: A, B and C.

'A' risks need the most attention and most well developed mitigation or recovery strategies,

'C' risks can occur but deserve the least amount of planning.


Top 3 risks identified
Risk Type Risk Event Occurrence Impact Category Mitigation
Adoption Risk Our system might not be well received by the IS480 Community for usage and efforts to capture user's data for analytics might fail High High A We intend to roll the system out in week 7, such that the next IS480 Batch can start using our system. Also, our team would be conducting numerous user tests and survey to improve usability.
Regulatory Risk Analytics and statistics used in this project may require the use of personal data and may violate the Personal Data Protection Act (PDPA). High High A The use of any personal data will be declared to the sponsor and all data will be protected from unauthorized access/use.
Technology Risk As mediawiki is highly unfavorable to crawling, crawling efforts might fail High High A The development for learning analytics is kept to the end so as to cater time to manually extract data in the event the wiki is uncrawlable.


Mitigation

6Sigma Risk mitigation.png

Technical Complexity

6Sigma Technical Complexity.png

Learning Outcomes

Link to our Knowledge Based Contribution :here

6Sigma Learning outcomes.png