HeaderSIS.jpg

IS480 Team wiki: 2015T2 6Sigma midterm wiki

From IS480
Jump to navigation Jump to search
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