Educational toolkit: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
 
(28 intermediate revisions by 14 users not shown)
Line 1: Line 1:
= Educational Toolkit for OLPC =
= Educational Toolkit for OLPC =


== Motivation ==
{{ Task
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
| name = Educational Toolkit
| duration = About a month
| category = Programming Task
| status = Started
}}


== Task Name ==
''
As the laptop will be used in the education of millions of children all around the world there is a need to have features that will radically change the way education is being imparted. With the intorduction of a digital medium for imparting education, the testing procedures will also undergo an overhaul. For the same reason, there is a need to have an educational toolkit for OLPC.


== Description ==
The objective of this project will be to create a platform over which development of educational tests will be very easy. It will use the Python for development. After its development, even a simple rural teacher with no particular experience in programming would be able to create new exciting educational games and tests for his/her students.
''
''
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.
== To Do ==
''
''
1. Development of an easy to use tool for the development of new educational tests using Python.


2. Provide tutorials and examples to get a novice started and make new tests in the matter of minutes. ''


== Use Case Scenario ==
== Features ==
#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.



== Technology Choice ==
''
''
#XML to share the data for which an XML schema has been defined.
1. Mr.Sharma is a geography teacher and wants his students to fill in the names of the states of India: He adds a map of India onto the drawing surface, Puts Fill in the Blanks and provide the right answers.Then he gives out the test to his students, they then submit their answers and the software checks their answers and reports their marks to Mr.Sharma.
#PyGTK for the frontend of the application.
#Using DBus Tubes for sending/receiving data and calling methods. ''


2. Mr.Sharma is a language teacher and wants to test the vocablury of his students. He prepares a set of MCQs containing various meaning to a difficult word. He sends out his test to his students who do it in a specified time and return their answers. The tool calculates results and report to Mr.Sharma.


== System Diagrams ==
''


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.
== Various Components ==
''


* [[media:System_dia.png|System Diagram 1 : To Share Question Papers]]
1. Support for adding the following types of questions within few clicks :
* [[media:Edu_Toolkit_-_System_dia2.png|System Diagram 2 : To Submit Answer Sheets]]
a) Fill in the Blanks
* [[media:Edu_Toolkit_-_System_dia3.png|System Diagram 3 : Demo/Collaboration Mode]]
b) Multiple choice Questions
c) Match the following
d) True/False
e) Image based Questions.
2. Support for entering answers to the questions by the teacher.
3. Porting a question paper for the laptops of students.
4. Ability to send and receive filled question papers.
5. Automated Result Generation.


Also find links to the two use-case diagrams for the two common modes of operation.
For component 1 and 2, easy to use GUI will be developed and libraries over PyGame API will be written which will make developement of quizzes a child play.


* [[media:Edu_Toolkit_Use_Case1.png|Use-Case Diagram 1 : Assessment mode]]
For components 3 & 4, a simple module for sending the files over the network would be written using send-and-relay protocols. For component 5, the results will be stored in a database in xml or crossmarks format which a teacher can use furthur too.
* [[media:Edu_Toolkit_Use_Case2.png|Use-Case Diagram 2 : Demo mode]]



Future work will involve the development of a feature to allow a teacher to send his feedbacks to the students which will be preferably kept using CrossMarks or XML. Apart from that, new features would be developed in the future.
== Specifications ==

Please find the links to the XML schema documents for the question and response file formats at the following links :
# http://wiki.laptop.org/images/d/de/Edu_Toolkit_Question_Schema.odt
# http://wiki.laptop.org/images/d/de/Edu_Toolkit_Answer_Schema.odt

''Please note that these documents are still under the design stages and are subject to changes ''

== Useful Links ==
''
''
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.
* http://docs.python.org/lib/module-xml.dom.html
* http://wiki.laptop.org/go/Shared_Sugar_Activities
* http://wiki.laptop.org/go/Tubes_Tutorial
* http://www.w3schools.com/schema/default.asp

''

== Status Update ==
''The current code for the project is now hosted on the OLPC git hosting (see above).


# Model Module - DONE
== Contact Me ==
# 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.


=== Projectdb requests ===
== Contact info ==
''
''
My name is Deepank Gupta. Please feel free to add your valuable comments, criticism and ideas in the discussion page and contact me at - deepankgupta@gmail.com. I am looking forward towards getting support in this initiative.
My name is Deepank Gupta. Please feel free to add your valuable comments, criticism and ideas in the discussion page and contact me at - deepankgupta@gmail.com.
''
''

Latest revision as of 11:09, 24 December 2011

Educational Toolkit for OLPC

Motivation

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


Description

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.


Features

  1. Simple creation of problems with a visual editor. The editor will be able to add images, problem text, and answers.
  2. Simultaneous distribution of the problem/test to every student with the facility for typing and marking answers.
  3. Automatic Checking of objective answer sheets and manipulation of results.
  4. Demo mode from the teacher's device useful during a class discussion.
  5. Usage of DBus to communicate with other applications such as browser and calculators.


Technology Choice

  1. XML to share the data for which an XML schema has been defined.
  2. PyGTK for the frontend of the application.
  3. Using DBus Tubes for sending/receiving data and calling methods.


System Diagrams

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.

Also find links to the two use-case diagrams for the two common modes of operation.


Specifications

Please find the links to the XML schema documents for the question and response file formats at the following links :

  1. http://wiki.laptop.org/images/d/de/Edu_Toolkit_Question_Schema.odt
  2. http://wiki.laptop.org/images/d/de/Edu_Toolkit_Answer_Schema.odt

Please note that these documents are still under the design stages and are subject to changes

Useful Links

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.

Status Update

The current code for the project is now hosted on the OLPC git hosting (see above).

  1. Model Module - DONE
  2. Parse Module - DONE
  3. Viewer Module - TESTING
  4. Connection Module - TESTING
  5. Results Module - DONE
  6. Database - DONE
  7. GUI - In Progress

A detailed description of the various modules along with their functionality is as follows :

  1. Model Module : Stores the question and answer classes and is used for all the data manipulation.
  2. Parse Module : Parses a question file and generates an answer file in the standard XML formats for the project.
  3. Viewer Module : This module is being made in PyGTK and uses a standard notebook widget. The development is being done on the various types.
  4. Connection Module : In simple language, this module is used to talk to the other laptops.
  5. Results Module : This module will be used to do automatic evaluation and checking of answer sheets and storing results in a SQLLite Database System.

Projectdb requests

Contact info

My name is Deepank Gupta. Please feel free to add your valuable comments, criticism and ideas in the discussion page and contact me at - deepankgupta@gmail.com.