Project Details
Problem:
The TIST (The International Small Group Tree Planting) program helps subsistence farmers in underdeveloped countries plant trees to help
sustain their community and reverse deforestation. The current method of information delivery returns the entire data set and does not
contain any useful tools for filtering results. The average user of TISTs data has a very slow and expensive internet connection. As
TISTs data set grows, it becomes more costly for the users to receive data relevant to them. This project aims to develop a new front
end for users to access data relevant to them.
Requirements:
Solution must meet the following criteria:
- Must Use MySQL 4.1
- Must be compatible with Apache 2.0.46
- Must use less than 25GB of disk space
- Must be optimized for frequent use over 8 kbps internet connection
Solution must contain:
- Authentication / Protected Content
- User Management
- Searching / Filtering Capabilites
- Make Project Assignments
- View Project Assignments
Solution:
The proposed solution is to create an easily accessible application that will allow its users to attain pertinent and relative information
in a straightforward manner. For this project, there is a large data set that contains information on the location, count, condition,
and other information for the program’s trees. It is necessary for this application to allow its users to only obtain information from
this data set that is relative to the user. The application must also be easily accessible from anywhere in the world. To solve this
problem the application will interface with a web portal that will be available to anyone with an Internet connection. Since this
application may be used globally where users may know English as a second language or not at all the solution must include capabilities
for translation and/or an interface that does not require written instruction.
Design Philosophy:
We used an iterative development process. We designed our solution to use the Model View Controller (MVC) paradigm.
In the MVC paradigm you have a model to represent the data. A controller to modify the data. And a View to display the data.
Timeline: