Difference between revisions of "IS480 Team wiki: 2015T2 6Sigma midterm wiki"
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== | ||
− | == | + | [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: | + | {| class="wikitable" style="margin: auto;width:80%; text-align:center" |
− | ! style="font-weight: bold;background: #16a085;color:#ecf0f1; width: | + | ! 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 | + | | 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. | ||
|- | |- | ||
− | | | + | | Scheduling Module |
− | + | | Integrate groups to sign up for slots instead of users | |
− | + | | Allow team to sign up for slots. | |
− | |||
− | |||
− | |||
− | | | ||
− | |||
− | |||
− | |||
− | | | ||
|- | |- | ||
− | |||
− | |||
|} | |} | ||
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 | + | | 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 | + | 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 | + | | 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]] |
− | | 6Sigma has decided to remove CRUD Comments, iterations | + | | 6Sigma has decided to remove CRUD Comments, iterations from our project scope, |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
+ | |||
<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== | ||
− | |||
− | |||
===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
Home | Midterm | Finals |
---|
Contents
Documents
Mid Term Presentation
IS480 Management System II List of APIs
In A Nutshell
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
Actual Schedule
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. |
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 |
---|---|---|
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.
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
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
Coding Hours
Non Coding Hours
Total Hours
Punch Card (GIT)
Risks
Risks
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
Technical Complexity
Learning Outcomes
Link to our Knowledge Based Contribution :here