IS480 Team wiki: 2011T1 Motiva
Contents
- 1 Team Members
- 2 Project Scope
- 3 Project Management
- 4 LOMS
- 5 Project Progress Summary
- 6 Reflection
- 7 Software Tools and References
Team Members
Name | Role |
---|---|
Tay Hui Juan | Project Manager |
Ong Wee Chian | Assistant Project Manager & UAT Administrator |
Chong Liang Jin Eugene | Lead Developer |
Ting Wen Zhong | Technical lead & Creative Designer |
Ong Shin Jie Daniel | Business Analyst & Communication Director |
Click here for role description.
Project Scope
Project Description
Buy One Give One is a not-for-profit organization which provides systems and structure to inspire the community about a world full of giving. Buy1Give1 is currently registered and headquartered in Singapore. B1G1 currently works with businesses in 15 countries. Through B1G1, these businesses now support close to 700 projects in 29 countries.
To make giving part of one's lifestyle and to move away from the normal guilt-driven or event-driven fund raising, B1G1 uses a transactional based business model. As such, businesses and individuals can continuously contribute to various projects which does NOT focus on the funds donated but on the IMPACT created. The current B1G1 online portal serves as a platform for businesses to enroll in these programs. As a result of this most recent IS480 project, B1G1 is now moving its focus from SMEs towards attracting more personal users. This movement is the ‘Design Your Giving Life’ initiative.
Objective of project
- Encourage people to see giving as part of their lives
- Create convenience for current users
- Create an impact on those in need
Stakeholders
Organisation | Name | Position |
---|---|---|
Buy One Give One | Masami Sato | Founder, Director |
Buy One Give One | Paul Dunn | Chairman |
Modules
User Management
New and existing users will be able to create a new contributor account at B1G1. With Facebook and Twitter connected, users may use their existing social media account to log into the application. Mandatory data such as names and email will be collected and stored in B1G1 database for bookkeeping. All user information is linked to the B1G1 customer database; any activity done through the web and iPhone application will be automatically synced. Additional privacy settings are also available in the user profile. The account management tool allows users to manage their account settings such as changing and resetting of their passwords. |
Project Listing Management
All funding projects are listed by different lifestyles (Eg. dining, shopping, etc) or pre-defined categories (Eg. Country, organization, types of targeted beneficiaries such as education, health and welfare, environment and so on — broadly in line with the UN Millennium development goals). |
Contribution Management
A major (and new) key of the application is user-personalisation. We aim to create ‘Giving Goals’ to allow users to link giving to personally defined goals (Example of such could be weight loss, gym attendance or even kissing a spouse!). It means that users can create fun challenges and link them directly to giving.
Once a goal is selected, users can, through iPhone dials or drop down lists, link to major giving areas (Eg. 8 UN Millennium goals) or to specific projects. This feature serves as the central management for all contributions by B1G1 users. Users will also be able to make payment for all selected projects. Information such as donation preferences (e.g. for every coffee purchased), the project you embarked on and the amount to donate will be automatically saved in user’s preset profile. This module will trigger an update to the achievement module and the live feeds on his/her profile. When a user initializes a contribution, the information stated on the presets will be tagged together with their location, taken from the in-app location based services. Once the user accumulates the donation amount, he/she can check out to the payment module. The user will also be able to set a wide variety of reminders to aid in making giving a as part of his/her lifestyle(in a fun way as well). |
Connectivity & Engagement
Our team plans to utilize the location-based elements, already built in the current B1G1 platform, to allow individual users to locate and shop with business users. Information from the App can also be used as a resource to share across social networking sites such as Facebook and Twitter with the help simple APIs. For each contribution, users tag photos with information gathered from its GPS location, lifestyle activity and related project details. These data will be updated into a database and all users from the B1G1 Facebook group would be able to view these information as wall feeds. User may also choose to post it on their personal walls as well. In addition, we will also design a new web-based dashboard to keep track of real-time contributions and activities from B1G1 users worldwide. |
Achievement Management
User achievements are directly related to the number of projects they have helped and their total monetary contributions. Medals and Trophy will be awarded to users based on the pre-determined levels. User may view all their contribution histories. For the application to have more interactivity with the users and to include more challenging factors, there will be different numbers of achievements for users to attain. |
Deliverables
With the iPhone Application:
- Users can login, logout, register and set privacy settings
- Users can view projects in categories and information on each project
- Users can make donation for a specific project
- Users are able to set their goals and set reminders to donate
- Users can define their donating lifestyle
- Users can make donation through a donating lifestyle preset
- Users can view their past contributions and achieved goals
With Donation Dashboard on B1G1 Website:
- Users can view all donation activities of other users
- Users can view the project status (Eg. project completed, project still requires how much funds, etc.)
Deployment
- Application to be deployed to iPhone & Apple App Store
- Dashboard webpage to be deployed to B1G1 website
X-Factor
- Launch of application to Apple App Store
- Revolutionary style of donating
Project Documentation
Application Architecture Diagram
Use Case
Storyboard
User Interface (UI)
Schema Diagram
ERD Diagram
Project Management
Scope Management
Scope management is one that plays a crucial part in project management. Managing the scope well would prevent the team from doing unnecessary rework. It allows us to plan ahead and to prevent breakdowns if there are scope changes. Drawing out the scope would enable everyone to have a clear picture of project and gets work done more efficiently. We have to know what is to be built before building it.
Scope Management Process
I. Collect Requirements
We collected requirements through interviews with the client and through brainstorming.
II. Define Scope
Scope:
Click here to view our project scope.
Deliverables:
Click here to view our project deliverables.
III. Create Work Breakdown Structure (WBS)
Work Breakdown Structure (WBS) - Abstract:
IV. Control Scope
There are bound to be changes in the scope during the course of the project. We are unable to predict when will a change occur. As such, we would adopt the following process if a change needs to happen.
Date Scope Change Document 16th Jul 2011 Scope Change 01
V. Verify Scope
To verify the scope, we have to compare the deliverables with the project requirements. This is crucial to ensure that the project does meet the requirements. This will be done before the UAT where the client evaluates our deliverables.
Time Management
To ensure that work is done and deadlines are met, time management is important. In order to prevent overruns and inefficiency in our course of project, we made use of a project schedule. The project schedule is important in helping us plan ahead and estimate the amount of time we have for each function. Proper time management would be a key to success.
Process Description Actions to be taken Define Activities Adopted the decomposition technique by further breaking down the core functions into tasks Sequence Activites Determine the precedence of each tasks by numbering the sequence of each task Estimate Activity Resources Discussion as a team Estimate Activity Duration Discussion as a team Develop Schedule Draw up schedule and timeline with milestones indicated Control Schedule Adopt a schedule metric to determine whether we are Early/On-time/Late
Project Timeline
Project Schedule
Click here to view the detailed project schedule.
Schedule Metric
Rationale:
The schedule metric serves as an indicator of how late/early we are in our schedule. The metric helps us determine our next approach if our schedule were to be too late or too early.
Use:
The Schedule Performance Index (SPI) will be calculated by the Project Manager after each iteration. After which, depending on the value of the SPI, the Project Manager will take the necessary actions to ensure that the team is back on track. Planned End Date refers to the end date stated in the project schedule. Actual End Date refers to the date the specific task is completed.
Calculation:
Schedule Performance Index (SPI) = Actual End Date - Planned End Date
SPI Action Plan SPI < -1 Consider addtion of functions or improve user experience. -1 <= SPI <= 1 On Time. Keep up this SPI. 1 < SPI < 4 May use allocated buffer time. Project Manager to adjust project schedule accordingly where necessary. 3 < SPI < 7 Find out the reason for lateness. Project Manager to adjust project schedule accordingly where necessary. May consider allocating available resources to ease bottleneck. SPI >= 7 Find out the reason for lateness. Project Manager to adjust project schedule accordingly where necessary. Last resort to consider dropping functions.
Quality Management
It is important that we understand the quality expectations of the client. As such, we manage the quality of our project by settings goals and taking measurements.
Process Description Actions to be taken Plan Quality Set goals (Eg. Number of bugs, bug metric), Test cases Perform Quality Control Constant testing after each iteration, Track bugs using Bug Metric Perform Quality Assurance Obtain feedback from UAT and Client Evaluation
Bug Metric
Rationale:
The bug metric serves as an indicator of the number of defects in the application. The number of bug points allows us to determine the next step to take according to our action plan.
Use:
A bug is to be recorded each time the developer commits a code. Bugs detected during a development session would not be counted. Each bug will be classified into 3 different levels of severity. Bugs of the same severity level will be added and multiplied by the corresponding severity point. The summation of the severity points will be calculated at the end of each iteration.
Calculation:
Bug points = Σ(No. of bugs with same Severity Level X Severity Points)
Serverity Level Severity Point(s) Description Low 1 Typo error or user interface bugs. Standalone bugs that do not affect other parts of the same function. Moderate 7 Application runs and does not crash. However, some non-critical functionalities are not working. Critical 14 Critical functionalities not working properly. Application is down and crashes. Affects the progression of the next iteration.
Bug Points Action Plan Bug Points =< 7 Fix bug during the next development session. 7 < Bug Points < 14 Isolate the functionality where the bug exists while development on other functionalities continues. Make use the planned debugging time. Bug Points >= 14 Stop current development and resolve the bug immediately. Make use of planned buffer time. Project Manager reschedules the project when necessary.
User Acceptance Test (UAT)
- coming soon
Test Plans
- coming soon
Test Cases
Iteration Test Cases Iteration 1 Login and Logout Register users User preferences
Communications Management
To ensure that everyone in the team is aware of the event and tasks, we make use of a communication plan. Communication is important in preventing any breakdowns or errors.
Communication Plan
Event Rationale Frequency Deliverables Team Meetings Project discussions, updates on project development Weekly Meeting minutes to be uploaded Client Meetings Clients’ feedbacks, project updates Weekly Meeting minutes to be uploaded Supervisor Meetings Supervisor feedbacks, update on project progress Fortnightly Meeting minutes to be uploaded Client Updates Update client on deliverables after each milestone After each milestone Meeting minutes to be uploaded Sharing Sessions Peer feedbacks, comments and thoughts about the team Monthly Resolved issues, Peer feedback Team Bonding Sessions To maintain team cohesion Monthly Have dinner/movies/outings
Meeting Minutes
Click here to view all minutes.
Risk Management
Risk Breakdown Structure
Risk Analysis
Technical Risk
Risk Description Impact (Low/Medium/High) Probability (Low/Medium/High) Rating Mitigation Strategy Impact of Strategy Minimal professional training on Cocoa (API) and Objective-C programming language used in Mac application development Medium Medium B Source for Apple training program and reading up eBooks from library and internet More time spent on research, peer sharing sessions and self-learning for the team. Quality issues like application bugs and synchronization with B1G1 database may surface. Medium Medium B Design more test cases and increase testing frequencies each iteration. Engage a higher number of users during User Acceptance Test (UAT) More time incurred for carrying out more tests and design more test cases
Business Risk
Risk Description Impact (Low/Medium/High) Probability (Low/Medium/High) Rating Mitigation Strategy Impact of Strategy Conflicting clauses in placing charitable transaction based services in the application for Apple AppStore billing system High Medium A Use an external link which brings user out from the application to a web browser for further payment process Reduces user experience.
External Risk
Risk Description Impact (Low/Medium/High) Probability (Low/Medium/High) Rating Mitigation Strategy Impact of Strategy Client requirements may change during the course of project resulting in change of scope High High A Enforce the scope change process. Ensure that all documentations are up to date and that all members of the team are aware of the scope changes. More time required on ensuring proper documentation for each change.
Risk Metric
LOMS
Click here to view.
Project Progress Summary
Highlights
- To be filled
Challenges
- To be filled
Achievements
- To be filled
Reflection
Team Reflection
- To be filled
Individual Reflection
Hui Juan
Roger Ong
Eugene Chong
Vyane Ting
Daniel Ong
Sponsor Comment
- To be filled
Software Tools and References
Software Tools
- Tortoise SVN
- Dropbox
- PHPMyAdmin
- MYSQL
- Xcode
- Astah Community
References
- To be filled