Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Workshop 2.0 specification: Difference between revisions

From MoodleDocs
m (Workshop module moved to Workshop 2.0 specification: Per David's request)
(Sections layout and some quick notes)
Line 2: Line 2:
This page tracks and summarizes the progress of my attempt to try and rewrite the [[Workshop module]] for Moodle 2.0 (yes, yet another attempt).
This page tracks and summarizes the progress of my attempt to try and rewrite the [[Workshop module]] for Moodle 2.0 (yes, yet another attempt).


==Major current implementation problems==
'''PROJECT STATE: Planning'''


=Introduction=
TODO: some short summary of what workshop is and what it does. The module with a huge pedagogical potential. The key features are:
* advanced grading methods (criterial evaluation)
* peer-assessment
=Current implementation problems=
* '''Very old and unmaintained code''' - the vast majority of the code is the same as it was in Moodle 1.1. mforms are not used (accessibility). Missing modularity. No unit testing.
* '''Does not talk with the Gradebook''' - there are some patches around in forums fixing partial problems.
* '''User interface and usability'''
* '''Grades calculation is kind of dark magic''' - see [http://moodle.org/mod/forum/discuss.php?d=109988 this discussion]. It is not easy to understand the way how Workshop calculates the grading grade even if you read the code that actually does the calculation. More than that, the whole algorithm depends on a set of strange constants without any explanation or reasoning of the value. The grade calculation must be clear and easy to understand to both teacher and student. Teachers must be always able to explain why students got their final grades. Therefore the plan is to get rid of the fog above the grades calculation, even if it breaks backward compatibility.
* '''Grades calculation is kind of dark magic''' - see [http://moodle.org/mod/forum/discuss.php?d=109988 this discussion]. It is not easy to understand the way how Workshop calculates the grading grade even if you read the code that actually does the calculation. More than that, the whole algorithm depends on a set of strange constants without any explanation or reasoning of the value. The grade calculation must be clear and easy to understand to both teacher and student. Teachers must be always able to explain why students got their final grades. Therefore the plan is to get rid of the fog above the grades calculation, even if it breaks backward compatibility.
* '''Lack of custom scales support''' - see [http://moodle.org/mod/forum/discuss.php?d=93083 this discussion]
* '''Lack of custom scales support''' - see [http://moodle.org/mod/forum/discuss.php?d=93083 this discussion]
* '''Phases overlapping, balancing, overall allocation issues''' - see [http://moodle.org/mod/forum/discuss.php?d=106899 this discussion]
* '''Phases overlapping, balancing, overall allocation issues''' - see [http://moodle.org/mod/forum/discuss.php?d=106899 this discussion]


==Project analysis==
=Project analysis=


See [http://www.mindmeister.com/18206050 the project analysis mindmap]
See [http://www.mindmeister.com/18206050 the project analysis mindmap]


==User interaface mockups==
=Project schedule=
 
TODO: copy milestones form the mindmap
 
=User interaface mockups=
 
* MDL-18688 mod_form.php
* MDL-18912 grading forms
 
=Implementation plan=
 
==The structure of the code==
 
Files, libraries, interfaces, classes, unit tests
 
==DB tables==
 
==Capabilities==
 
==File API integration==
 
How Workshop will use the new File API.
 
==Repository/portfolio API integration==
 
If and how will be implemented.
 
==Grading strategies==
 
Pluggable submodules in mod/workshop/grading/xxxx/. Implement grading_strategy interface. Basically provide grading form and way of grade calculation. During the current phase,  four strategies will be implemented (the names are to discuss)
 
===No grading===
Just comment(s)
 
===Accumulative===
 
===Number of errors===
Currently called Error banded
 
===Criterial rubrics===
Merges the current Rubrics and Criterion strategy into a single one (basically, current Criterion is an one-dimensional Rubrics)
 
=Out of scope=
 
What are not goals of this project (may be discussed later for 2.1 etc.)
 
* No new/other grading strategies are to implement in the current phase
* No new Workshop features will be implemented (if possible)
* No group grading support
 
=To be discussed/decided=


* MDL-18688 mod_form.php - layout proposal


==Other links and resources==
=Other links and resources=


* MDL-17827 Workshop upgrade/conversion from 1.9 to 2.0 (META)
* MDL-17827 Workshop upgrade/conversion from 1.9 to 2.0 (META)
Line 24: Line 84:
* [http://moodle.org/mod/forum/discuss.php?d=43808 a lot of interesting feature requests]
* [http://moodle.org/mod/forum/discuss.php?d=43808 a lot of interesting feature requests]


==Credits==
=Credits=


Many thanks to Stephan Rinke for his valuable comments and ideas.
Many thanks to Stephan Rinke for his valuable comments and ideas.

Revision as of 22:46, 20 April 2009

Moodle 2.0


This page tracks and summarizes the progress of my attempt to try and rewrite the Workshop module for Moodle 2.0 (yes, yet another attempt).

PROJECT STATE: Planning

Introduction

TODO: some short summary of what workshop is and what it does. The module with a huge pedagogical potential. The key features are:

  • advanced grading methods (criterial evaluation)
  • peer-assessment

Current implementation problems

  • Very old and unmaintained code - the vast majority of the code is the same as it was in Moodle 1.1. mforms are not used (accessibility). Missing modularity. No unit testing.
  • Does not talk with the Gradebook - there are some patches around in forums fixing partial problems.
  • User interface and usability
  • Grades calculation is kind of dark magic - see this discussion. It is not easy to understand the way how Workshop calculates the grading grade even if you read the code that actually does the calculation. More than that, the whole algorithm depends on a set of strange constants without any explanation or reasoning of the value. The grade calculation must be clear and easy to understand to both teacher and student. Teachers must be always able to explain why students got their final grades. Therefore the plan is to get rid of the fog above the grades calculation, even if it breaks backward compatibility.
  • Lack of custom scales support - see this discussion
  • Phases overlapping, balancing, overall allocation issues - see this discussion

Project analysis

See the project analysis mindmap

Project schedule

TODO: copy milestones form the mindmap

User interaface mockups

Implementation plan

The structure of the code

Files, libraries, interfaces, classes, unit tests

DB tables

Capabilities

File API integration

How Workshop will use the new File API.

Repository/portfolio API integration

If and how will be implemented.

Grading strategies

Pluggable submodules in mod/workshop/grading/xxxx/. Implement grading_strategy interface. Basically provide grading form and way of grade calculation. During the current phase, four strategies will be implemented (the names are to discuss)

No grading

Just comment(s)

Accumulative

Number of errors

Currently called Error banded

Criterial rubrics

Merges the current Rubrics and Criterion strategy into a single one (basically, current Criterion is an one-dimensional Rubrics)

Out of scope

What are not goals of this project (may be discussed later for 2.1 etc.)

  • No new/other grading strategies are to implement in the current phase
  • No new Workshop features will be implemented (if possible)
  • No group grading support

To be discussed/decided

Other links and resources

Credits

Many thanks to Stephan Rinke for his valuable comments and ideas.