Overcoming obstacles to progress
I want to share with you an exciting project I recently had the opportunity to be part of, namely to help establish a virtual learning system at the University of Dodoma in Tanzania. Besides being technically interesting, what makes this story more compelling than most are the challenges that come with conducting such a project in a developing country.
For any country, giving its people the skills to be successful in an increasingly globalized world is critically important. This is especially true for developing countries that want to seek out opportunities for economic progress. In Tanzania, which ranks among the poorest nations in the world, work has been going on since 2007 to build what is -- already -- that country’s largest university; the goal is to make it the leading academic institution in all of East Africa. As part of this vision, the university plans to establish a learning management system (LMS) that will support students enrolling in courses and other offerings with a virtual platform for learning; in other words, students would not need to be physically present on campus to have access to education.
This article provides some background on the IBM corporate program and the team that provided assistance for this project, and describes the technical underpinnings for the proposed system, as well as the conditions and challenges that have to be overcome in the process.
The IBM Corporate Service Corps (CSC), often viewed as a "business version of the Peace Corps," synthesizes the 21st century context for business -- emerging markets, diverse cultures, global teaming, complex policy environments, cross functional collaboration, and increasing societal expectations -- into a leadership development program that involves projects in developing countries that are working on core societal challenges. In its first 18 months of operation, the CSC has deployed over 500 IBM employees from 47 countries on assignments in Brazil, China, Egypt, India, Ghana, Malaysia, Nigeria, the Philippines, Romania, South Africa, Tanzania, Turkey, and Vietnam.
Working in diverse, multi-national teams of 8-10 people, IBMers working on CSC projects have provided in-depth business and IT consulting support to clients in strategic emerging markets, including entrepreneurs, small and medium enterprises, non-profit organizations, educational institutions, and governmental agencies.
The project introduced here was conducted as part of the CSC at the University of Dodoma in Tanzania. Of the three teams that were engaged on this project, I was part of the third and last team, working at the university in October and November of 2009. See Resources for more information about the CSC.
University of Dodoma, Tanzania
The University of Dodoma (UDOM) is located in Dodoma, Tanzania (Figure 1). It was founded in 2007 and is now the largest university in Tanzania. The school currently has about 10,000 registered students, all of whom live on campus. Eventually, the university will have about 40,000 students. The campus covers a total area of approximately 6,000 hectares (15,000 acres).
Figure 1. Map of Tanzania
One of (eventually) six colleges within UDOM is the College of Informatics and Virtual Education, which is further divided into the School of Informatics and the School of Virtual Education. The latter is responsible for setting up, managing, and maintaining the learning management system discussed here.
Figure 2. The University of Dodoma
Implementing a learning management system at UDOM
After some use case analysis, a proof of concept was conducted to validate whether Moodle could satisfy UDOM’s requirements for the learning management system. Moodle (Modular Object-oriented Dynamic Learning Environment) is a free, open-source course management system (or virtual learning environment, or learning management system) that is used by many educational institutions worldwide. It supports the creation and delivery of online course material, including homework assignment submission, collaborative interaction between students and teachers, and online examination and ranking of students.
From a technical standpoint:
- The Moodle system is developed in PHP and runs on any platform that supports PHP. All data is stored in a relational database.
- As its name suggests, it has a modular structure that can be enhanced and expanded through the addition of plug-ins. Users can develop their own plug-ins, but many vendor plug-ins for exist for different purposes and can easily be added to an already deployed system.
- Even though it targets virtual (remote) learning, Moodle can also be used to complement traditional teaching environments. Students attending lectures in person can later use the Moodle system to download accompanying materials and submit questions or comments to the teachers online. While homework submissions can often be completed by uploading them onto the system, exams often have to be taken in person.
As a result of the proof of concept, it became clear that little or no modification to Moodle would be needed, at least for the initial pilot deployment, and possibly beyond that.
Next came an assessment of which platform and which software packages would be used to run the LMS. This quickly became an evaluation of open source versus commercial software, not just for the virtual learning environment, but for the IT landscape at UDOM in general. The available budget for both hardware and software is very limited, which, of course, greatly influences any such decision.
Requirements that described the non-functional aspects of the target system were collected and documented. These included data about expected load and performance, security, management, scalability, availability, and so on. All of these requirements would directly influence how the system would be designed. The selected run time environment was LAMP (see sidebar).
Based on the decision that the first pilot for the LMS is to be run in September of 2010 (the start of the academic year), concrete plans were made for the topology that has to be put in place, taking these challenges into consideration:
-
Regular power outages occur.
Even though plans exist to deploy backup power generators to ensure a constant supply of electricity, no such system is in place at the moment. This means that unplanned and unannounced server outages will happen.
-
Internet connectivity is extremely slow.
As of this writing, no high speed Internet connection exists at the university. Within the university, some limited network connections have been implemented, but not all buildings are connected.
-
No common security infrastructure is in place.
There is no central user registry that would support single sign-on for computer systems across the campus. Every existing server stores its own users locally.
-
No procedures or mechanisms for archiving, backup, restore, or
disaster recovery exist.
Server failures will have catastrophic consequences, since no formal and documented procedure exists for automated backups of relevant server systems.
These circumstances directly influenced some of the architectural decisions for the LMS. For example, no configuration for high availability was planned. If the availability of the server systems cannot be guaranteed due to lack of permanent power supply anyway, there is not much benefit in configuring failover between server systems.
Moreover, the pilot program will be run locally on campus, with existing UDOM students being the only participants. This will reduce the dependency on fast Internet connections. The network bandwidth on campus is considered sufficient for the pilot. This decision also implies that the system will be used to complement, rather than replace, existing face-to-face lectures.
Another important aspect of running the pilot within the local student community is the lack of an online payment system. A Moodle plug-in for PayPal exists, but PayPal is not commonly used in Tanzania -- neither are credit or debit cards, which means that a customized form of online payment support will have to be developed once the solution is rolled out to a bigger audience.
It is crucial that an approach and roadmap for non-functional aspects like security and maintenance and management (such as monitoring, backup, restore, and so on) be put in place and be implemented at least to some degree before the pilot deployment goes into production.
For the initial configuration, two PC servers will be deployed, running a LAMP environment. One server will host the application server and the core Moodle package, and the other one will host the database. The expected user load should be achieved by servers with 6GB of RAM and 2.26 GHz dual processors. Only limited disk storage capacity is needed, because only a limited number of online courses will be available in the first phase.
It would be desirable to be able to dynamically allocate hardware resources to applications and packages based on real needs, pending the ability of the UDOM IT team to establish a base for the virtualization of existing Linux servers. Several solutions for this exist, both free and commercial, but none have been evaluated or selected for UDOM yet. However, the designed system can satisfy the immediate needs without any virtualization solution in place.
All of these architectural decisions lead to a system that:
- Uses exclusively free software.
- Does not require fast Internet connections.
- Prioritizes functional characteristics over some non-functional characteristics, namely high availability and load balancing.
- Can easily serve the expected initial load.
- Is extensible and scalable to address future needs.
At the conclusion of our role in the project, the goals of the project with which we were there to assist had been successfully achieved:
- Architecture and design documentation for the LMS was created,
specifically:
- Functional requirements and test cases.
- Non-functional requirements.
- Architectural model describing the system.
- Proposed topology and run time environment.
- Server specifications for the first deployment.
- Proof of concept was conducted to validate Moodle.
- Detailed organizational model for the School of Virtual Education was proposed.
- Detailed project plan of future activities to bring the overall project to completion was outlined.
- Marketing plan was developed.
- Intensive skills transfer sessions with the UDOM teams was conducted.
With the technical roadmap and the skills they need to move forward no longer hindering their progress, the ultimate success of the university's overall objectives is within their power, and the achievement will be their own.
Usually, when describing a technical project, its challenges, and outcome, there is no room for comments of a personal nature. But Comment Lines columns allow a broader perspective, especially when it is about a rather unusual project. Thus, I’d like to share my views on two specific topics here that make this engagement stand out from all others I’ve been involved in.
First, I have never worked in a country as challenged and as challenging as Tanzania. While there, I had the opportunity to visit rural villages, an orphanage for HIV-positive children, and the local office of the UN World Food Programme, to name just a few places. All of these were rather intense experiences, showing the very basic needs that people there struggle with daily: food, shelter, healthcare. Given these problems, discussing things like a long term IT strategy seems trivial. However, I believe that progress must be achieved at all levels, and ensuring that good education opportunities exist is one critical thing that can help future generations overcome all these basic hardships.
Second, the team working on this project was very diverse: ten people coming from eight countries across the globe, with different skills and different perspectives on how to approach the task at hand. Despite my initial skepticism about how productive such a team could be, it turned out to be a winning formula. Having a team of cross-discipline experts (and we were all experts in our respective fields) actually helps everyone be more innovative -- and innovation was something we needed constantly. I have been around a while and so this certainly isn’t a new concept. But this project drove the point home for me like no other project has before.
Figure 3. IBM CSC Tanzania Team 6
Our team in Tanzania (left to right in Figure 3): Nesrien Redwan (Austria), Minh Le (USA), Camille Delesalle (France), Alejandro Mejia (Mexico), Yi Xin Zhao (China), Mitali Biswas (India), Jasmin Stelzer (Germany), Andre Tost (USA), Sonoko Hatakeyama (Japan), Shawn Fetterolf (USA).
This project at the University of Dodoma in Tanzania was different from most other IT projects. It was conducted as part of a corporate citizenship initiative specifically geared for developing countries. As a new academic institution with little existing infrastructure, the project was focused on maximizing the potential for building crucial skills for the population of Tanzania and elsewhere.
The architecture of the system, as well as the selected hardware and software packages, will have to be adjusted to the existing, severe limitations, which are not easily controlled and are not likely to change soon. However, the resulting system meets current needs, and can evolve over time to meet future needs. The basic principles employed to design and implement the system, including the methodology and approach that is used, are no different from any other system, even if targeted to a very different environment: collecting functional and non-functional requirements and coming up with an architecture and design that address these requirements, paired with solid project management and execution.
Learn
Discuss

Andre Tost works as a Senior Technical Staff Member in the IBM Software Services for WebSphere organization, where he helps IBM customers establishing Service-Oriented Architectures. His special focus is on Web services and Enterprise Service Bus technology. Before his current assignment, he spent ten years in various partner enablement, development and architecture roles in IBM software development, most recently for the WebSphere Business Development group. Originally from Germany, Andre now lives and works in Rochester, Minnesota. In his spare time, he likes to spend time with his family and play and watch soccer whenever possible.




