IS480 Team wiki: 2011T1 Geographia

From IS480
Jump to navigation Jump to search

Logo wo-earth-shadow.png

Nowadays, as e-Learning gains immerse popularity due to its effectiveness in spreading knowledge, many electronic gadgets and learning materials have become widely available on the internet. However, most of the websites lack the flexibility to cater all the curriculum requirements needed for educational use in schools at one stop, and some are more oriented on making commercial profits with a lot of ads bombarding the user interfaces.

And there comes a chance for our team Geographia to help Ministry of Education (MOE) Singapore by developing a customized educational Geography courseware that has core topic-centric modules which are simple to use and easy to maintain. In close accordance with the curriculum specified by the Ministry of Education for teaching Geography in secondary and junior colleges, our team will be developing a Geography Courseware, dynamic enough to capture and visualize most updated subject related information available on the internet to instill longer attention during lessons and love for Geography in all students.

Team Geographia

Roles and Responsibilities

Emc.gif Eaint Myat Chyal Pyi Aye [1] System Analyst Co-developer
  • Translate clients’ needs to technical solutions.
  • Design the back-end architectures.
  • Co-develop project's functionalities.
  • Monitor and improve the performance of the system on server.
Ksm.gifKhine Su Mon [2] Project Manager Business Analyst
  • Liaises with project sponsor, clients and reviewers / users (students and teachers).
  • Plan, prepare and facilitate meetings of team, supervisor, sponsor and clients and give overall quality assurance on the system.
  • Foresee, keep track and manage the project related risks.
  • Assign tasks and manage to resolve conflicts.
  • Plan and update project timelines, documents and metrics.
Mth.gifMin Thu Han[3] Lead Developer Database Specialist
  • Lead the team in developing specified functionalities
  • Research on new technologies and coach the team on technical aspects
  • Conducts shared code ownership sessions
  • Set up, manage the database and optimize database's capacity.
Tm.gifThiri May[4] UI Designer Assistant Assistant Project Manager
  • Design application UI and front-end developments and improvements.
  • Take charge of deployment of application on server.
  • Assist the main developer in debugging.
  • Tracking of statistics (bug metrics, schedule metrics) for further improvements on features.
  • Update and monitor team wiki.
Ymn.gif Ye Min Naing[5] Usability Analyst UI Designer
  • Create test plans for User Acceptance Testing (UAT) and System Integration Testing (SIT)
  • Prepare and run test cases and give assurance on the system's stability and robustness.
  • Optimize the application's usability.
  • Assist in system integrations and modularizations

Project Overview


Pain Points

Geography subject has never been a fun subject to learn for students. As the motivation to learn Geography is extrinsic which is to get the grade only, they become passive learners, restrict themselves to gain the knowledge from textbooks only and they do not want to construct knowledge on their own. Since they lack the curiosity to learn and do not know how to apply their knowledge in exams, they only regurgitate the content that they memorize and so they can’t do well when the questions are tricked.

Geography subject is also a big challenge for teachers to teach the students to understand the concepts of the difference between weather and climate, classification of climates based on the location. Currently, the school heavily relies on the textbook to teach this subject. From a look into the upper secondary Geography textbook, we realize that the textbook only provides the table with a chunk of data with the help of text explanation to show the variation in the development level around the world.


1. ‘Dry’ learning experience

Without having visual representation such as charts, graphs and interactive features, it could be boring for the students to learn on advanced academic topics from the text only, leading them to memorize rather than understanding.

2. Do not ask questions

Textbook does not create room for discussions among the students as it has already provided the conclusion and the data in the textbook are static. Thus, students are not active in learning and do not ask questions to learn more.

Project Description

Geographia is a 5-in-1 web-based courseware application built to complement the traditional physical textbook and Physical Geography curriculum specified by the Ministry of Education.

Main features

1. Exercise

Students can get a sense of how climate experts collect weather data to observe climate patterns by doing exercises using the climograph module.

2. Visualize

With a satellite or thematic map accompanied by interactive features customized for the curriculum, students can observe the patterns of global climate and development statistics in a spatial context.

3. Customize lesson plan

Teachers know the learning capacity of each class better than anyone else. Our application allows the teachers to customize the students’ experience for each and every lesson.

4. Collaborate

Teachers can share their lesson content with other teachers in the same school.

5. Track

With the application’s built-in user behavior analytics, teachers can track whether each student successfully followed the lesson.

From system point of view, Geographia is like a 2 layer cake with the carefully crafted icing.

The icing is the user interface for students to learn about concepts in climate and geography of development, from 3 modules namely Climograph, Global Climate Map and Geography of Development . Like decorating the icing of a cake, this part of our system requires as much art as technicality. As the teacher will use each module for at most 45 minutes to teach the concepts, we need to build the user interface that is not only appealing to the young user group but also intuitive and effective enough for the students to grasp the several concepts within the short span of time. Hence, we have carefully crafted this part of our system ,with multiple iterations, based on the curriculum specified by the Ministry of Education, geospatial and visual analytics designs recommended by our Sponsor and geospatial technologies expert Prof. Kam Tin Seong and most important of all, user behavior and teaching methodology we observed during their lesson.


As students in Singapore are less exposed to various weather conditions and disasters around the world, learning on those subjects in classrooms through traditional text-books could be static and limited in terms of visual aspect and data timeliness.

With the primary purpose of transforming the way of learning geography, this project aims to deliver an interactive web-based courseware with timely data along with the hope of instilling stronger passion for Geography in students.



Application Users


Project Scope

The first layer below the icing is our advanced admin module which enables the teacher,who knows the learning capacity of each class better than anyone else, to customize the content down to each class with ease. Freshness of data is kept in the hand of the teachers too. The same module also allows the teachers to share the content they have uploaded among themselves. This sharing capability not only allows the substitute teacher to easily take on the lesson plan created by the absent teacher but also foresees collaboration in lesson planning.

The second layer is our user behavior tracking module which tracks each user interaction down to the component level. From the time spent on each component data, teachers can get rich insights on whether each student has successfully followed the lesson.

Module 1 : Climograph

This module will enable the students to key in the climate data of a particular city they have observed and visualize the climate pattern in climograph - a multi-axis dynamic chart featuring temperature and rainfall and humidity in line graph, bar graph and area graph respectively. The students will be able to save the data they have keyed in and the graphs generated with those data locally and continue their analysis or exercise later by simply uploading the file they saved.


Module 2: Global Climate

In this module, the students can explore and compare live weather information and past climographs of different cities at the world level, continent level or country level. Students will be able to easily recognize weather patterns inheriting to different location on the world and make comparisons among different cities or continents.


Module 3: Geography of Development

In this module, the students will be able to explore the different development levels around the world with the help of choropleth map which provides an easy and convenient way to compare and contrast among countries. Moreover, they can explore the development of a country over the past 50 years with line graph and compare countries for a particular year with bar graph.

Module 4: Advanced Admin Lesson Customization

with this advanced admin, the teachers are provided with the flexibility to customize their lessons according to their needs. For example, to teach the students Geography of Development, there could be many different indicators which measure the development of a country, such as, death rate, literacy rate, etc. The ability to upload and select a particular indicator for different classes is therefore essential. So, with our advanced admin, the teachers could easily upload, edit, delete and set the indicator files and also collaborate with another teacher as she can make use of the indicator files uploaded by another teacher without the need to get the file with thumbdrive.

WorldDevelopmentModule UseCaseDiagram.jpg

Module 5: Super Admin

This module will provide convenience for the application owner to create the user accounts for different schools and manage the application by being able to see the log files of the actions done by the teachers. Moreover, he could also set the default files for the application to be used for the general public or by the school which does not upload the new indicator files.


Module 6: User behavior tracking and analysis

This module is behind-the-scene tracking feature for not only application usage but also clickstream analysis to assess student interactions and understanding on the learning material, which will be a platform for educators to assess effectiveness of the courseware to make learning more impactful. The module will be integrated to all modules throughout the project. The raw application usage data will be translated into meaningful analysis graphs and charts and this meta information will help teachers to better assess students' participation level and improve on the conduct of the lesson.

Project Management

Project Meetings

Team have regular meetings within team for the development of required modules and monitoring of progress.We also had weekly or bi-weekly meetings with the sponsor for updating the progress of the project and clarification on detailed requirements on modules if there were additional special just-in-time requests. Team conducted UATs at least 3 times with the three group of users of the system so as to improve and enhance further as requested.

Team will also have weekly or bi-weekly meetings with the supervisor.

Click here to view the Meeting Minutes .

System Diagrams









One of the good code design feature of our project is that we have maximized the reuse to codes within our project. We try to keep the need to rewrite similar codes at minimal level so that when we make changes our codes at one point, we do not have to refactor a whole lot of related codes spread around many places. We aim to break down our application into as small a code fragments as possible and arrange neatly. This approach let us focus on smaller pieces of the puzzle at any one time, and also makes the codes easier to maintain. As our familiarity with code modularization increases,we try to construct our functions into reusable group of codes shared by many component mxml.

Line graph in Climograph and Development Studies Modules

One of our main achievements in modularizing the codes is the reuse of code for our line graphs in Climograph application and Line graph in our Development studies application. In Climograph, the temperature graph is represented by a line graph which contains Lowest Temperature, Highest Temperature and Mean Temperature. However, in development studies module, we have to accommodate up to five countries data to be selected at any one time.

In order to accomplish this, we have to write a function that takes six parameters which are:


The most important part was to prepare and pass the ArrayCollection containing all the prepared data for feeding the graphs which are two extremely different ArrayCollection with different keys used.

In Development Studies module:


where ...

In Temperature graph for Climograph Module:



climateDataList.addItem({ meanTemp:strMeanTemp,lowestTemp :strLowestTemp,highestTemp :strHighestTemp});

By modularizing and reusing codes, we have reduced lines of codes significant as we do not have to rewrite for UI components on the application as well as data processing of ArrayCollection. This helped us maintain codes more easily and ensure design consistency within our application.

Project Status

  • Our midterm wiki is available here
  • Our final wiki is available here

Project Metrics

Bugs Metric


  • To assure our courseware quality


  • To enable the project team to keep track of and analyze the bugs found during testing of each function or integrated.
  • To ensure that the bug will be resolved efficiently)

Formula: Bug Severity Index (BSI) = Σ ( Bug Severity x No. of bugs)



Schedule Metric


  • To ensure that project is complected on time & respond to change effectively.


  • To enable the project team to keep tracked of their project schedule.
  • To ensure that their project completion dates stay closely to the planned dates.
  • To efficiently adjust project schedule and take actions needed for the project.

Formula: No of Days Deviated = Estimated Days – Actual Days


Project Resources and References




Resources and References Purpose Remarks
Application Development Tools
Adobe Flash Builder 4.5 Integrated development environment(IDE) Registered and downloaded from http://www.adobe.com/devnet-apps/flex/free/
Flex SDK 4.5 Software development kit for application development Provided in Flash Builder
Action script 3 Programming language for the Adobe Flash Platform Provided in Flash Builder
Microsoft Office Excel 2007 Data source and manipulation for location marks Downloaded from smu blue website MSDN http://blue.smu.edu.sg/software/
MySQL open-source database Database for logging of user application usage Downloaded free from http://www.mysql.com/downloads/
Modest Map Library Modest map action script 3 library for map Downloaded free from http://modestmaps.com/download/
YouTube API YouTube API for embedding and streaming videos from application Online Resources
Weather.com Web service Web service API call for streaming live weather data for the weather stations on the map http://www.weather.com/
Learning Resources
Modest Map API documentation Modest map related examples and tutorials Provided in the SDK
References for Flex application development Tutorials for flex applications Online resources Tourdeflex http://www.adobe.com/devnet/flex/tourdeflex.html
References for XML data manipulation Tutorials and samples Online resources
Other Resources
IS480: IS Application Project wiki page Project description and team progress updates http://blue.smu.edu.sg/IS480/2008-2009/index.asp
Project rooms Team meetings Provided by school
Deployment Server Deploying the application on the web server Provided by sponsor

Project Summary

Project Achievements

1. Being able to build from scratch Thematic map in Flex despite the lack of well developed library

2. Performance Optimization through Dictionary

3. Reusable and Modularized Architecture

4. Innovative way to encrypt/decrypt url parameters

How Our Application Benefited Students

During the final UAT with teachers from Geography Teachers Association, our pilot user group, Anglican High School shared their experiences of software usage and how our courseware helped them. The teachers conducted two lessons of 45 minutes each to teach the climate concepts to students with our courseware. We were glad to hear the feedback that allowing the students to explore themselves first on their own was easier to follow the lesson than instructing the students on what to do with our application. After two lessons, the teacher mentioned that the students gained benefits in the following areas.

1. Learn new concepts through spatial lens

Our courseware provided a visual and kinesthetic learning environment for the students to grasp the new concepts such as maritime effect, continental effect and temperate lines effect through the spatial lens. After the students learnt how to interpret the data from the graph and read map, they were able to see vividly the difference in weather patterns of the cities depending on their locations. Thus, they became to understand that the location of a country matters which decides the weather pattern of a city, for example, the cities nearer to equator line tend to have higher temperature. In addition to the increase in content knowledge, they could also discover some of their misconceptions, for instance, all the western countries have cold seasons.

2. Independent learning and Peer-to-peer learning

The students were given a chance to be able to explore the climate patterns of different cities data on their own. Since the students were not given the answer unlike the textbook, they came up with their own arguments on their findings and discussed with their friends. After two sessions of lesson, they were able to describe a city weather with proper terms and ask more relevant questions such as why some countries have winter in June instead of December.

Sponsor's Testimonial

"It is more than four months since I started to work with the team on early July this year. Despite of their limited experience of real world project design and implementation, I am extremely pleased with the highly quality work given by the team. By and large, the team members are self-reliant, absolutely dependable and fully capable of coping and meeting with new situations and problems realistically. They are also highly motivated and committed to their work. Difficulties have not discouraged them from giving off their best to the work. As a person, I found them conscientious, diligent, courteous and of good conduct and character."