IS480 Team wiki: 2013T2 Change-Makers Midterm Wiki
|Home||Team||Project Overview||Factor||Project Management||Project Documentation||Project Resources||Team Reflections|
- 1 Project Progress Summary
- 2 Project Management
- 3 Quality of Product
- 4 Reflection
Project Progress Summary
Download our Mid Term Slides in:
View our web application here.
Total Number of Tasks: 286 Tasks
Total Number of Tasks Completed: 241 Tasks
Percentage Completed: 84%
Provide more details about the status, schedule and the scope of the project. Describe the complexity of the project.
Highlight changes to modules, the completion status (implemented, user testing done, client approved, deployed, etc), the confidence level (0-1 where 0 is no confident of getting it done, 1 is 100% confident in getting it done) and comments (who has been assigned to do it, new scope, removed scoped, etc). Please use a table format to summarize with links to function details.
|Task/function/features, etc||Status||Confident Level (0-1)||Comment|
|System Login||Fully deployed and tested 100%||1|
|Manage Organisations||Fully deployed and tested 100%||1|
|Manage Admin||Fully deployed and tested 100%||1|
|Manage Beneficiaries||Fully deployed and tested 100%||1|
|Manage Supervisors||Fully deployed and tested 100%||1|
|Manage Participants||Fully deployed and tested 100%||1|
|Manage Programmes||Fully deployed and tested 100%||1|
|Manage Projects||Fully deployed and tested 100%||1|
|Manage Sections - CRU||Fully deployed and tested 100%||1|
|Manage Forms (Section 1)||Fully deployed and tested 100%||1|
|Manage Forms (Section 2)||Fully deployed and tested 100%||1|
|Manage Forms (Section 3)||Fully deployed and tested 100%||1|
|Manage Forms (Section 4 - Upload/ Download Files)||Fully deployed and tested 100%||1|
|Manage Forms (Section 5)||Fully deployed and tested 100%||1|
|Manage Forms (Section 6)||Fully deployed and tested 100%||1|
|Manage Forms (Section 7)||Fully deployed and tested 100%||1|
|Gamification (Points System)||Fully deployed and tested 100%||1|
|Gamification (Progress Bar)||Fully deployed and tested 100%||1|
|Gamification (Leaderboard)||Fully deployed and tested 100%||1|
|Gamification (Inspiration Quotes)||Fully deployed and tested 100%||1|
|Update Accounts Settings||Fully deployed and tested 100%||1|
|Manage Notifications||Fully deployed and tested 100%||1|
|Manage Stage Photos||Fully deployed and tested 100%||1|
|Manage Email Notifications||Incomplete||1|
|Create Multiple Accounts||Incomplete||0.5|
Project Schedule (Plan Vs Actual):
|4||Manage Project Invitations||04 Nov 2013||04 Nov 2013||Functionality completed but dropped upon client's request.|
|5||Create Multiple Accounts||18 Jan 2014||10 Mar 2014||Moved from Core to Additional Functionality. Time reallocated to complete other functionalities.|
|Manage Statistics||18 Jan 2014||10 Mar 2014||Moved from Core to Additional Functionality. Time reallocated to complete other functionalities.|
|10||Discussion Board||27 Jan 2014||Nil||Functionality Dropped due to delay in schedule. Discussed with client.|
|13||Connect to Facebook||10 Mar 2014||Nil||Functionality Dropped upon client's request.|
|11||Manage Stage Photos||10 Feb 2014||Nil||Functionality Added (to sprint 11) upon client's request.|
Sprint Backlog Metrics
Click here to find out how we calculate our sprint backlog score and the action plan.
View our Sprint Backlog:
Click here to find out how we calculate our bug score and the respective plan of action.
Click here to download our bug logs.
Our bug metrics only quantifies the bugs that were found during our internal user testing after the end of each sprint.
Overall breakdown of bug score
Distribution of bug severity
Bug severity per sprint
|8||Page always goes to the top when user saves rather than remain at the anchor||1||Low|
|11||Spin-the-Wheel points are not always correct||5||Medium|
|Top 3 Project Risks|
|Change of requirements from Sponsor/ Misinterpretation of requirements||High||Medium||1. Increase the frequency of meeting with client
2. Evaluate with client the feasibility of new requirements
|Underestimation of the level of difficulty per task||High||Medium||1. Increase frequency of meetings with Lead Developer to gather instant feedbacks|
|Resource down due to unforeseen circumstances||High||Medium||1. Reallocation of tasks
2. Increase manhours of remaining members 3. Reschedule incomplete tasks
Click here to view the full list of our risks and mitigation.
Due to the different requirements and specific functionalities needed to be displayed to different users on the same Project Section Page, the page requires multiple checks to identify who the current user is in order to display the correct view with the correct functions to the users. This include the following:
- Participants only have the Submit button view with the feedback given by Administrator, Supervisor and/or Beneficiary.
- Beneficiaries are not required to approve all sections of the project as Administrators and Supervisors do. Therefore, for sections that they are not required to approve, they should not have the Approve or Reject button displayed to them.
- Administrators are given rights to approve or reject sections on behalf of Supervisors and Beneficiaries on top of themselves. Therefore, their view require the approval and reject buttons for Supervisors and Beneficiaries as well.
- Supervisor In-Charge (IC) are in charge of all projects in programmes under the same organisation. Therefore, they have access to approve or reject sections in any project.
- Supervisors only have access to approve or reject sections in projects that they are involved in. However, if a Supervisor IC has already approved or rejected a section, the supervisor would not need to do so any more.
As one of the forms by Envisage Education require a Gantt Chart, our team found an external jQuery plugin to customized and use. However, the jQuery plugin has a unique way of recognizing the data inputs, therefore, we had to convert the data we retrieve from our database to the format which the plugin can understand, and then convert that data back to the original format of our database for the editing of tasks. Further, because Envisage required the functionality to allow the assigning of participants to be in charge of the various tasks, we had to built upon the jQuery plugin to allow a task page that would list out all the tasks and the users that are assigned to them.
Different points are allocated to different projects rather than to the individual users. However, all point notifications are notified to all participants in the selected project with the points when they log into the system. Points are also allocated when a participant submits the different project sections and different points are allocated when the different sections are approved. In order to allocate the points to the different approved sections, there is a need to first check if the section had been submitted before.
Converting Paper Forms to Web Forms
The current business process of our client is done through the use of a paper-based system; which means, all forms that Envisage Education creates for the students to use are printed onto hard copy to be filled in via paper and pen. These forms are created and customized specifically by Envisage Education for the purpose of the Youth Social Entrepreneurship Programmes (YSEP) they conduct. Due to the fact that our clients themselves did not have a specific idea and were not sure of how the forms should look, our team had to customized and design the forms from scratch for them, which creates some technical complexity when we design the forms.
Due to the fact that Project Budget Form is a form that is interlinked to the other form which allows the users to create new products, this requires multiple SQL queries that have to be joined and retrieved from multiple tables in order to display out the necessary information for the form.
Quality of Product
Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.
|Use Case Diagram|
|User Testing Documentations|
|User Test 1 Results|
System has been deployed to the school server.
1 User Test conducted so far.
Summary of Findings
- Users are rather receptive to our gamification functionalities that we have implemented
- Users enjoy and feel encouraged to work on their project because of the point based system we have implemented
- Users generally find our system easy to use and intuitive
- Users complained about the pop up images that would pop up every time the page refreshes
- Users found the Leaderboard difficult to locate
Click here to view a more detailed view on our user test documentations and results.
We learnt the importance of time management, communication and teamwork. "A chain is only as strong as its weakest link". We leave no member behind when one is lagging behind by helping and learning from each other for the team to progress. Whenever miscommunication arise, we settle our differences amicably and move forward together. We also learnt how to manage the different stakeholders well by managing their expectations and communicating regularly.
Qian Bi Reflection
One cannot underestimate the importance of ensuring that the team stays motivated and healthy! Through my experience as PM, I have learnt that frequent communication is very important to keep the team on schedule. Understanding my team and the issues they are facing allow me to better manage and estimate the team schedule.
I have learnt that while we may almost always want to accommodate to all requests our clients makes, it is important for us to evaluate the difficulty of the functionality, our team's capabilities, time and properly manage expectations. Further, from our user test, I've learnt that what we as developers often think to be simple or easy to use, may not always be so to users.
Working in a team and being lead developer I learn the need to manage between requirements and development and allocating tasks according to the expertise of my developers. Because my developers have no prior expertise in the framework we are using, I pave way and lead them by providing them with the learning resources and guidance needed.
Creating an attractive user interface that is well-liked by students is challenging as everyone has their own preferences. I have learnt the importance of user testing and how to improve the user experience of the system with users feedback.
Keng Theng Reflection
I have learnt to think ahead on the system design pros and cons when considering client’s requests. While it is good to have cool features on the frontend, some will take up too much resource or require complex designs on the backend. Thinking ahead helps to clarify the requirements, explain the cons and propose alternative solutions quickly.