IS480 Team wiki: 2010T1 Maxco

From IS480
Jump to navigation Jump to search
Est 2010
Type Underground IT Group
Area Data Mining
Social Application
Data Visuliazation
Web 2.0
Industry Non-Profit Organization
Product B1G1 World
Team members TAI Khang Wei
CHER Boon Chin Robin
Shawn FONG Sai Yean
Benjamin WOON Tian Yew
GUO Jinchuan
YEO Boon Yee Stephanie
FB App Link http://apps.facebook.com/buyonegiveone/
B1G1 World Link http://www.b1g1.com/facebook/b1g1world/app/

Team MaxCo Poster


Team MaxCo

Team MaxCo Group Photo


Team MaxCo comprises of 6 like-minded Information System undergraduates possessing a flair for all things IT. Having worked with each other at one point of time or another, the forming of MaxCo was imminent because of our positive chemistry and good-humoured nature. Our team name, MaxCo, is an abbreviation for Maximum Consultancy, and makes known the standard of quality and excellence we aim to attain during the course of this project. With our motto, “To the Max”, we indeed carry high aspirations to deliver client satisfaction aplenty.

Les Membres

Project Manager

  • TAI Khang Wei
  • Proactively managing project scope and overall schedule to ensure work is assigned and completed on time
  • In-charge of disseminating project information to all stakeholders and Resource management


  • CHER Boon Chin Robin
  • Assistant Project Manager that take responsibility of the wiki update
  • Back-End Coding
  • Issues Tracking


  • Shawn FONG Sai Yean
  • Visualization algorithms and interface design
  • Delegation of Development Tasks and Back-End Coding

Subject Expert (Database)

  • YEO Boon Yee Stephanie
  • Database schema design and Prepare or review physical database designs
  • Support the project development in the field of data mining

System Architect

  • GUO Jinchuan
  • Develop the Application Architecture and back-end coding (Social Application)
  • Responsible in developing test cases and facilitating User-Acceptance Test and Heuristic Evaluation
  • Interface Design

Business Analyst

  • Benjamin WOON Tian Yew
  • Ensure that documentation are adhere to the highest quality and standard.
  • Identifying, managing and mitigating project risk
  • Public relations guru and back-end coding (Social Application)



B1G1 logo medium.png

Changing our world one transaction at a time

Buy1GIVE1[1] is a non-profit social enterprise established in 2007. It is a simple idea positively trying to cultivate the world into a world of giving, through a very specific transaction-based giving model. B1G1 gives businesses the power to change our lives. B1G1 moves giving from an ad-hoc, event-driven model to a very specific transaction-based giving model — a world where every transaction gives back and makes a difference. It means that giving becomes an effortless habit, changing our lives and making a difference every second, every day and in every way.


Masami Sato

Masami Sato
Founder, Buy1Give1

Paul Dunn

Paul Dunn
Chairman, Buy1Give1


Professor Zhu

Professor Zhu Feida
Assistant Professor
School of Information Systems

Technical Advisors

Previous FYP teams that worked with B1G1

Stakeholders Coordination and Management

We meet our Supervisor every week to keep him up to date on our project progress, and also getting valuable feedbacks from him that will enhance our project. Our team have meetings on Friday, Saturday , Sunday or all three days to develop the project's functions and also discuss the next steps for our project. We also conduct joint meetings between our supervisor and client to ensure that we have a consistent level of expectations amongst everyone.

Meetings Coordination Overview

Project Overview

Project Description

Working closely with non-profit organization Buy1GIVE1 (B1G1), team MaxCo aims to do its part for the community by raising awareness on pertinent world issues like famine and extreme poverty by leveraging on the immense outreach capabilities that the internet and social networking websites provide.

By identifying and graphically representing the network of individual and corporate donors linked to each other, we hope to build a strong philanthropic community of followers, and also aim to increase the visibility and membership numbers of B1G1. Creating a Facebook application and a website add-on, MaxCo seeks to propagate the notion of compassionate giving, as well as to give sympathetic individuals an avenue to pledge their support for charitable causes of their choice and tell their friends about it.

The B1G1 Network


  • Worthy Cause Partners - They are organisations that organizes Worthy Cause Projects.
  • Worthy Cause Projects - Theses are change-making activities such as providing people access to clean water.
  • Businesses That Give - They are businesses that are participate in giving to Worthy Cause Projects whenever they sell a product that they pledge.


B1G1 is managed by a small team of dedicated individuals, and operates on the concept of having member businesses donate a predetermined amount of money to help underpriviledged people for every X number of business items sold. Both MaxCo and B1G1 feel that with such an interesting and beneficial scheme, more can be done to let businesses in various industries become aware of this win-win offering and allow them and their customers to play their part in helping the poverty stricken.

B1G1 also has a large amount of data that our team intends to represent in a more attractive and user-friendly way to attract the attention of the mainstream. We hope to educate the public in a subtle yet effective way by showing statistics and interesting visual representations of certain data pertaining to the many unfortunate parties around the world. Also, because of the presence of a growing number of outspoken youths and individuals who feel strongly about the above mentioned world issues, MaxCo wants to provide an avenue on Facebook for them to pledge their support for the charitable cause(s) of their liking and to invite their contacts to do so too. Hopefully this cycle of pledging support and inviting contacts would be continued, exponentially increasing peoples’ awareness about poverty and the part they can play to staunch it.



Maxco aims to build B1G1 World, a topographical depiction of B1G1's list of business donors, and link them all together to form a web-like network of business owners, business users, individual users, and beneficiaries on an interactive global map. To represent corporate contributors and their recipients in an accurate and visually interesting manner, businesses will be graphically linked to their beneficiaries by arrows to show all contributions made out of the company. Making use of the existing network, our interactive global map will additionally allow the discovery of other like-minded individuals or corporate entities supporting the same project or that share the same geographical location or upstream invites etc.

Value Statement

Our team’s goal is ultimately to present hard data in an appealing way, as well as to better represent all the relevant stakeholders by showing a comprehensive nexus of business members and their beneficiaries on a computer generated map. We also aim to expand B1G1’s outreach capabilities by leveraging on social networking site Facebook.


In this project, we will develop B1G1 World, an interactive visualization tool of B1G1’s network of members. The members mainly include:


  • Business Members - Companies/organization that support projects (pay a subscription fee)


  • Employee Members – invited by Business Members (free)


  • Friends – invited by Business Members and other users (free)
  • Free Users – individuals who own a free account (free)

B1G1 Suite of Applications


How our suite of products will create value for our client B1G1

Our suite of products would enable us to fulfill our objectives of creating visuals [WOW!] and spreading the joy of giving [SPREAD].

B1G1 World

Prototype of B1G1 World Application

Early Prototype of the B1G1 World Application

The visualisation would be based on a world map, where members and projects would be marked on it. Flash would be used to animate. The diagram on the right shows a rough prototype of what this tool will look like with the arrows infering network of relationships. On top of that, a Facebook application would be developed to enlarge B1G1’s base number of members as well as to widen outreach and exposure for B1G1.

Display of Entities located at the Purple Markers

Display of Entities located at the Purple Markers

Clicking upon the Purple Markers on the map will displayed the different entities(Businesses That Give, Worthy Cause Partners and Worthy Cause Projects) that are located at that particular region. The user can zoom into an entity and view its details just simply by clicking on the entity. The different capabilities of each different entity types filter will be explained below.

Filter: Businesses That Give

Contributions made by a Business That Gives

Display of the information of the Giving Impact

Hovering the cursor over the Polyline will display the giving impact to the specific Worthy Cause Project made by the Business That Gives. If there are more than one Worthy Cause Project in the same area, the users would be able to scroll through the various giving impact details by a left and right button; otherwise, the information would refresh itself periodically.

Filter: Worthy Cause Partner

The Projects that the Worthy Cause Partner is organising

Filter: Worthy Cause Project

This displays the Businesses That Give that is giving to the Project and also the Worthy Cause Partner that is organisizing it. User can share about the project on Facebook too.

Filter: By Regions

To view the activities in a particular continent of the world

Filter: Leverage of a Business That Gives

This force directed graph shows the network of impact of the Business That Gives

Keyword Search Function

Going through the markers on the map to find a particular member or project might be a hassle. Search allows users to find what they want quickly on the map

I Recommend!

Imagine that the shops that you frequent daily are part of B1G1. Whenever you make a spending there, you would be contributing back to the society. I Recommend! would allow users to recommend businesses that they think would do B1G1 good.

Users can browse through the recommendations that were made by others. Also, it gives the top 3 recommendations made by people

As users enter the company's information, the system would display recommendations that were already made, and can click on it so that he does not need to fill in the information again.

Entering personal information
Preview of the recommendation

B1G1 World Facebook Application

We want to spread the joy of giving at B1G1 to everybody in the world, but how can we do so? Hence, we decided to leverage on the 524,000,000 users on Facebook!

Overall look of B1G1 Facebook Application

The B1G1 World Facebook Application Main Page

Pledge support for Worthy Cause Projects

When users see projects that they feel strongly for, they can pledge their support by liking and share it on their newsfeed.

Share Latest Giving

Whenever a Business That Gives member does a contribution to a project, he would be prompted to share on his Facebook newsfeed.

Synchronization of B1G1 Account with Facebook

This enables B1G1 members to invite their friends in their Facebook network to join them in B1G1.

Did you know

Shows interesting fun facts about giving.

B1G1 World Widgets

These widgets are developed to allow users (B1G1 members or not) to place it on their own sites to show their giving or support to B1G1. The visually appealing widget would spread the word of giving, when other people see on the member's site.

Visualization & Spread with the B1G1 World Widget.

Customized Widget

Widget is customized depending on the Business That Gives member. It will display the direct giving impact information
Users can also retrived the embed codes by clicking on the Embed Icon.

Generic Widget

The Generic Widget displays random facts about giving impacts. Similarly, ysers can also retrieved the embed codes like the Customized Widget‎

Administrative Module

The administrative module gives administrators control over our B1G1 World Application, Facebook page and Widget. We aim to provide B1G1 administrators convenience with this module. It has mainly 3 functions:

Manage Geocodes

Sometimes the addresses of the Businesses That Give, Worthy Cause Projects or Worthy Cause Partners might be incomplete or cannot be geocoded. Hence, this administrative module would give B1G1 administrator the ability to correct the address by re-entering or pointing it out on the map.

Manage Recommendations

Recommendations made by users are useful data such that B1G1 Administrator are able to keep track of the highly recommended businesses and send invitations based on the recommendations to invite the business to join B1G1.

Manage Did You Know

The information shown via the "Did you know?" function on the B1G1 World Facebook and the Generic Widget could be controlled by B1G1 Administrators. They can choose to enable or disable specific facts with the help of the administrative module.


Story Board

Idea of B1G1 Giving Data In Relation To Networks

Initial idea when we are thinking how can we display giving details of a particular company to different projects globally.

Idea of B1G1 Widgets For Every B1G1 Business Givers

The first concept when we think of displaying the company giving details via a wiki.

Initial B1G1 World Concept

Our very first concept of B1G1 world before we developed the application. It consist of a Navigation panel on the right, and the giving details are displayed below on the bottom panel.

Use Case Diagram



Technical Diagrams

Overview Diagram


The diagram on the left shows a overview of the design of the whole suite of B1G1 World Applications. On the one hand, the B1G1 World Application and Widget are made possible using Flash and get access to the database through XML files created by custom-coded PHP files we have done to extract the relevant data from our client, B1G1's database. On the other hand, the B1G1 World Facebook Application and Administration Application is made possible using PHP. Both of these have direct access to the B1G1 database.

How it works? - B1G1 World Application & Widget


The diagram on the right shows the technical overview diagram of the B1G1 World Application and Widget. With a modular design planned right from the start, the B1G1 World Widget reuses a lot of the modules that was created for the B1G1 World Application. Some of these modules are the Event Actionscript Classes which supports custom events, Datacontroller.as which acts as the interface which interacts with the database, and also the ItemDisplayModule.mxml Flex class which handles all the flashy animations and tweening found in both the B1G1 World Application and Widget. This helps us as we can focus more on refining the codes rather than building things from scratch again.

How it works? - B1G1 World Facebook & Administration Application


The diagram on the left shows the technical overview diagram of the B1G1 World Facebook and Administration Application. A Database.php file is commonly shared across both applications. This is the file that provides the access to the B1G1 database. The difference between the set of files in the Facebook and Administration Applications is that one of them communicates with the Facebook API and the other with Google Map API. Other than this, another PHP file, Geocode.php is also modularized because it is used by the B1G1 giving engine and also the admin module which reduces our time spent on creating duplicate versions of codes that does the same thing and this in turn gives us more time to refine our codes to maximize the efficiency of codes that we have developed.

Project Workplan

Workplan Breakdown




Project Management and Tracking

Project Development Status

Communication Channels

  • Email
  • Wiki
  • MSN

Risk and Mitigation Strategy


Progress Summary


To have a better overview and measurement,through quantitative methods, we adopted Bug metric and Schedule metric to help us evaluate our project process. It is good way for aligning measurements with business requirements and goals.

Bug Metric

Software bugs are error flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or causes it to behave in unintended ways. And it is every software project team’s goal to reduce the number of bugs that can be found in their software that they are doing to develop.

Maxco mantis.png

The Bug Metric serves as a tool to help reduce the number of bugs that can be found in the software. Each bug is given a severity level which is tied to a severity score. At the end of each iteration, the functions would be tested and bugs would be reported to the Mantis bug tracking System. The project manager then assigns the bugs to the team to solve. The type of attention would be according to the severity of the bug, which would be described in our action plan.

The proposed severity level and score and formula for the cumulative bug severity score is as follow:


The Bug Severity Point (BSP) is caculating the summation of the number of bugs of each severity level. The formula is as follow:

BSP = ∑ (B x S)

BSP - Bug Severity Point (BSP)
B - Number of Bugs found of the severity level in the interation
S - Severity Level

Action Plan


Schedule Metric

The schedule metric measures how well is the schedule planned. The schedule metrics is updated on a weekly basis by the project manager. The project manager will check the Schedule Performance Index weekly and also after every iteration.

This measurement of actual against estimated time in days is called the Schedule Performance Index (SPI) and the calculation or formula is as follow:

Maxco schedule formula.png

SPI - Schedule Performace Index (SPI)
AT - Actual time (in days) taken for task completionn
ET - Estimated time (in days) taken for task completion

Weekly Action Plan


Per Iteration Action Plan


Resources and Tools

Software Development Kit

  • Adobe Flex SDK
  • Facebook SDK
  • Google Maps SDK
  • Flare ActionScript library


  • Eclipse Java EE Edition
  • Notepad++

Build Tool

  • Apache Ant

File Share & Storage

  • Dropbox
  • Filezilla FTP Client

Tracking Tools

Project Deliverables

User Acceptance Test 1
User Acceptance Test 1 B1G1 World
User Acceptance Test 1 Facebook
User Acceptance Test 2
User Acceptance Test 2 Admin Module
User Acceptance Test 2 B1G1 World
User Acceptance Test 2 Facebook

Learning Outcome

Maxco Learning Outcome