Educational Toolkit for OLPC
There was a nice project done in Chile using Ipacks: the "teacher" would pose a problem and the children would formulate an answer. Then they'd gather in groups of four and pool their answers. Each group of four would then reach consensus on an answer they thought was correct. All of the group answers would be shared with the entire class. Then a class discussion would ensue: why did Group A come up with that answer? The role of the computer and the teacher was to facilitate the discussion among the students and to focus discussion around problem areas that revealed themselves in discussion. A nice use of collaboration that has nothing to do with taking control or "all eyes forward". - Walter Bender
The educational toolkit is a software to facilitiate discussion in classroom with the help of technology. The software will aim at providing teachers and students with a tool to pose problems and then compare and discuss solutions. It will also be used as a formal testing tool for class tests and provide a better gauge of a student's progress to the teacher.
The software will be developed in Python with emphasis on easy User Interface and will aim to act like a tool which does not take over the job of teaching, but promotes natural class environment and will aim to fit in the classroom environment. The choice of Python as a programming language gives us the power of Object Oriented Design and Implementation along with lots of libraries and easy integration with Sugar.
- Simple creation of problems with a visual editor. The editor will be able to add images, problem text, and answers.
- Simultaneous distribution of the problem/test to every student with the facility for typing and marking answers.
- Automatic Checking of objective answer sheets and manipulation of results.
- Demo mode from the teacher's device useful during a class discussion.
- Usage of DBus to communicate with other applications such as browser and calculators.
- XML to share the data for which an XML schema has been defined.
- PyGTK for the frontend of the application.
- Using DBus Tubes for sending/receiving data and calling methods.
Please find the links to the system diagrams for the three scenarios with the various features coded in different colors to show the version number with which they will be shipped.
- System Diagram 1 : To Share Question Papers
- System Diagram 2 : To Submit Answer Sheets
- System Diagram 3 : Demo/Collaboration Mode
Also find links to the two use-case diagrams for the two common modes of operation.
Please find the links to the XML schema documents for the question and response file formats at the following links :
Please note that these documents are still under the design stages and are subject to changes
This is the link to the git repository : http://dev.laptop.org/git/activities/Educational_toolkit
These are some of the links which are being useful in the development for the project and are documented here for reference purposes only.
The current code for the project is now hosted on the OLPC git hosting (see above).
- Model Module - DONE
- Parse Module - DONE
- Viewer Module - TESTING
- Connection Module - TESTING
- Results Module - DONE
- Database - DONE
- GUI - In Progress
A detailed description of the various modules along with their functionality is as follows :
- Model Module : Stores the question and answer classes and is used for all the data manipulation.
- Parse Module : Parses a question file and generates an answer file in the standard XML formats for the project.
- Viewer Module : This module is being made in PyGTK and uses a standard notebook widget. The development is being done on the various types.
- Connection Module : In simple language, this module is used to talk to the other laptops.
- Results Module : This module will be used to do automatic evaluation and checking of answer sheets and storing results in a SQLLite Database System.
My name is Deepank Gupta. Please feel free to add your valuable comments, criticism and ideas in the discussion page and contact me at - firstname.lastname@example.org.