Difference between revisions of "IS480 Team wiki: 2013T2 Change-Makers Midterm Wiki"
Line 327: | Line 327: | ||
===Project Metrics:=== | ===Project Metrics:=== | ||
==== Sprint Backlog Metrics ==== | ==== Sprint Backlog Metrics ==== | ||
− | Click [[IS480_Team_wiki: | + | Click [[IS480_Team_wiki:Schedule_Metric_(Wiki).xlsx|here]] to find out how we calculate our sprint backlog score and the action plan. |
<br> | <br> | ||
Revision as of 13:14, 20 February 2014
Home | Team | Project Overview | Factor | Project Management | Project Documentation | Project Resources | Team Reflections |
Project Progress Summary
Download our Mid Term Slides in:
View our web application here.
For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy here.
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal or other wiki information here. However, keep a snapshot of the midterm state. Highlight changes since project acceptance.
Describe the project progress briefly here. Have the project continued as planned? If not, is the team confident to complete? This is a crossroad for the team to make a decision. Proceed with confident or file an incomplete.
Project Highlights:
What unexpected events occurred?
- Team members too busy with other work
- List of requirement changes
- CRUD items replaced with CU/Sync/Archive items
- Business analytics replaced with iPad client
- Took 8 weeks to learn Ruby on Rails
- etc.
Be brief.
Project Management
Provide more details about the status, schedule and the scope of the project. Describe the complexity of the project.
Project Status:
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 Tasks | Incomplete | 1 | |
Manage Appointments | Incomplete | 1 | |
Manage Email Notifications | Incomplete | 1 | |
Manage Statistics | Incomplete | 0.5 | |
Create Multiple Accounts | Incomplete | 0.5 |
Project Schedule (Plan Vs Actual):
Compare the project plan during acceptance with the actual work done at this point. Briefly describe a summary here. Everything went as plan, everything has changed and the team is working on a new project with new sponsors or the supervisor is missing. A good source for this section comes from the project weekly report.
Provide a comparison of the plan and actual schedule. Has the project scope expanded or reduced? You can use the table below or your own gantt charts.
Sprint | Planned | Actual | Comments | ||
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. |
Project Metrics:
Sprint Backlog Metrics
Click here to find out how we calculate our sprint backlog score and the action plan.
View our Sprint Backlog:
File:Change-makers Sprint Backlog.xlsx
Bug Metrics
Click here to find out how we calculate our bug score and the respective plan of action.
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
Outstanding Bugs
Sprint | Bug | Severity | Priority |
---|---|---|---|
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 |
Project Risks:
Top 3 Project Risks | |||
Risk | Probability | Impact | Mitigation |
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.
Technical Complexity:
Project Section
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.
Gantt Chart
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.
Point System
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.
Project Budget
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.
Intermediate Deliverables:
Stage | Specification | Modules |
Team Minutes | ||
Schedule Metrics | ||
UI Prototype | ||
Use Case Diagram | ||
ER Diagram | ||
User Testing Documentations | ||
User Test 1 Results |
Deployment:
System has been deployed to the school server.
Testing:
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.
Reflection
Team Reflection
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.
Rachel Reflection
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.
Benjos Reflection
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.
Kean Reflection
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.