Note:

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

Assignment

From MoodleDocs

This page describes development work on the Assignment module, hopefully for Moodle 2.2.

Overview

Problem 1

The four core subtypes we have are really confusing from a GUI point of view for new users, and are in fact all very similar.

SOLUTION: Collapse all these four into a single new assignment module that can support any or all of these at once:

  • Teacher-written text to students
  • Teacher-supplied files to students
  • Student-written text for teacher
  • Student-supplied files for teacher


Problem 2

The support of subtypes makes it slightly easier to write new assignment types but also makes them less flexible, and so people tend to create hacks.

SOLUTION:

  1. Remove subtypes from the default assignment module and implement all core features as above.
  2. Allow normal activity modules to declare themselves as "Assignment" modules (similar to resource modules) so that the GUI can group them if required.
  3. Provide lib/assignmentlib.php with some core classes to help the migration of subtypes to become full modules.


Problem 3

We have no good support for team-based assignments.

SOLUTION:

  1. Support course groups and groupings.
  2. Add a switch to settings to "Enable team assignments" which will allow users in groups to share one file area and one text response per group.
  3. Add good logging of changes made by the users.


Problem 4

Implement web services for all functionality of Moodle to support LightWork and mobile

Details