GvSIG-Educational-Games GSoC 2016

Project
Title: Add tests and educational games support to gvSIG Educa.

Student: Carlos I. Colombana

Mentors: Óscar Martínez, Joaquín del Cerro.

Details
Link to GitHub repository.

The main idea behind this project is to develop plugins which allows to create/play tests and educational games. Also generate documentation specially oriented to users without any programming knowledge.

The code will be mainly developed in Jython, an implementation of the Python programming language written in Java, throw the scripting module of the gvSIG desktop 2.x branch.

The developed tools will be used in geography and maps learning.

Reports
Week 1 (May, 23 - May, 29):

What did you get done this week?

I started to develop the create test functionality of the plugin.

What do you plan on doing next week?

I'll try to finish the create test functionality on the first half, and develop the pack test functionality on the second half.

Are you blocked on anything?

I was blocked many times during this week, but no now.

Week 2 (May, 30 - June, 5):

What did you get done this week?

I develop partially the create test functionality of the plugin. My mentor (Óscar) show me that gvSIG already has a packing functionality.

What do you plan on doing next week?

I'll try to finish the create test and start to develop the play test functionalities of the plugin.

Are you blocked on anything?

I'm blocked with something, but my mentor is working on that. Surely tomorrow i'll have good news.

Week 3 (June, 6 - June, 12):

What did you get done this week?

I finished the create test and started developing the play test functionalities of the plugin.

What do you plan on doing next week?

I'll try to improve the create test and continue developing the play test functionalities of the plugin.

Are you blocked on anything?

I was blocked many times during this week, but no now.

Week 4 (June, 13 - June, 19):

What did you get done this week?

I developed mostly the play test functionality of the plugin.

What do you plan on doing next week?

I'll try to finish the play test functionality of the plugin, specifically the generate report part.

Are you blocked on anything?

I'm blocked with the generate report part, tomorrow i'll ask it to my mentor.

Week 5 (June, 20 - June, 26):

What did you get done this week?

I finished the play test functionality of the plugin.

What do you plan on doing next week?

I'll start to develop the create game functionality of the plugin.

Are you blocked on anything?

I have to improve the code, but i'm not blocked.

Week 6 (June, 27 - July, 3):

What did you get done this week?

I started to develop the create game functionality of the plugin. I also improve the create/play test plugin.

What do you plan on doing next week?

I'll continue developing the create game functionality of the plugin.

Are you blocked on anything?

I have to improve the code, but i'm not blocked.

Week 7 (July, 4 - July, 10):

What did you get done this week?

Until now the developed code worked with a fixed number of questions. This week my backup mentor (Joaquín) and i discussed and reorganized the project, to make the code work with a variable number of questions, and other improvements.

What do you plan on doing next week?

Agree some remaining details and continue developing the code that way.

Are you blocked on anything?

No.

Week 8 (July, 11 - July, 17):

What did you get done this week?

Almost complete the development of the new "student's management" module.

What do you plan on doing next week?

Agree some remaining details and continue developing the code that way.

Are you blocked on anything?

I have a few doubts that i'll solve with my mentors.

Week 9 (July, 18 - July, 24):

What did you get done this week?

Completed the development of the new "student's management" and "questions management" modules, and almost the new "test management" module.

What do you plan on doing next week?

Complete the development of the new "test management" and "report management" modules.

Are you blocked on anything?

No.

Week 10 (July, 25 - July, 31):

What did you get done this week?

Completed the development of the new "test management" module, and started the new "report management" module.

What do you plan on doing next week?

Complete the development of the new "report management" module.

Are you blocked on anything?

No.

Week 11 (August, 1 - August, 7):

What did you get done this week?

Almost completed the development of the new "report management" module.

What do you plan on doing next week?

Complete the development of the new "report management" module, and write the respective documentation.

Are you blocked on anything?

No.

Week 12 (August, 8 - August, 14):

What did you get done this week?

Completed the development of the new "report management" module.

What do you plan on doing next week?

Write the respective documentation.

Are you blocked on anything?

No.

Final:

My project focused on the development of addons which allows gvSIG to create/play tests and educational games. The code was mainly developed in Jython, an implementation of the Python programming language written in Java, throw the scripting module of the gvSIG desktop 2.x branch.

Before the project gvSIG didn't have any built-ins or addons to create/play tests or educational games, that wasn't possible.

Now, with the "TestCreatorAndPlayer" addon, it's possible to create/play tests in gvSIG. Teachers can prepare the test easily in LibreOffice using the "sample_test.ods" file, load it and set test's main attributes in gvSIG throw "TestCreator" ("TC") addon's app, pack it with gvSIG built-in scripting framework and finally share it with students. Students can install the test in gvSIG throw built-in addons manager, login and play it throw "Testplayer" ("TP") addon's app, and finally generate a report in pdf format. If answers and points where included by teachers, automatic correction is performed and feedback is given. On the other hand, "GameCreatorAndPlayer" addon is pending, but i'll continue working on the project after GSoC time. Most of the code of "TestCreatorAndPlayer" addon is reusable, i think that maybe it will take one more month to develop the "GameCreatorAndPlayer" addon.

Here is the link to project's respository. It contains the developed addon, instructions and more:

https://github.com/nacho0605/GSoC/tree/master/GSoC_2016

Here is the link to some screenshots:

https://wiki.osgeo.org/wiki/File:Sample_test-screenshot.png

Student's Biography
Country: Uruguay

School and Degree: Faculty of Engineering (UdelaR, Uruguay), Cartographic Technician / Student of Computer Engineer.

I learnt about GIS, Databases, GNSS, Remote Sensing, Photogrammetry, etc in many courses offered by Faculty of Engineering (UdelaR, Uruguay).

Computing experience
On a day-to-day basis i use Windows 7 as operative system, but i also use Ubuntu occasionally.

I learnt about fundamentals of programming and scripting in Matlab / Octave, in a course offered by Faculty of Engineering (UdelaR, Uruguay).

GIS experience as a user
I’ve been working since February of 2014 at the Geomatics Department of the National Direction of Topography (MTOP, Uruguay) using gvSIG, QGIS and Kosmo daily.

GIS programming
I learnt about scripting in Jython on the 2014 edition of “Introduction to Scripting in gvSIG 2” MOOC offered by the gvSIG Association, through the gvSIG Training platform.

After the MOOC ended i’ve written scripts in the gvSIG 2.x branch to facilitate and improve some tasks at work.