Difference between revisions of "Roadmap"

Jump to: navigation, search

Note: You are currently viewing documentation for Moodle 2.3. Up-to-date documentation for the latest stable version is available here: Roadmap.

m (Version 2.0: small rewording)
Line 7: Line 7:
  
 
The timetable is designed to deliver Moodle 2.0 in time for the new school year in the northern hemisphere and currently looks like this:
 
The timetable is designed to deliver Moodle 2.0 in time for the new school year in the northern hemisphere and currently looks like this:
* 1 March 2010: Moodle 2.0 Beta release  
+
# 1 March 2010: Moodle 2.0 Beta release  
* March, April, May, June: intensive beta testing and bug fixing (freeze on new features)
+
# March, April, May, June: intensive beta testing and bug fixing (freeze on new features)
* 1 July 2010: Moodle 2.0 production release  
+
# 1 July 2010: Moodle 2.0 production release  
  
 
You can track our current progress in detail on the [http://spreadsheets.google.com/pub?key=pDVzrUsKEBnChh0nn7-FTYA Moodle 2.0 Planning document].  Please remember that this document is frequently updated and details can change a lot!
 
You can track our current progress in detail on the [http://spreadsheets.google.com/pub?key=pDVzrUsKEBnChh0nn7-FTYA Moodle 2.0 Planning document].  Please remember that this document is frequently updated and details can change a lot!
Line 28: Line 28:
 
** MS SQL 2005 or later
 
** MS SQL 2005 or later
  
====File handling improvements====
+
====Community====
  
* [[Development:File API|File API]] - Moodle.com
+
* [[Community hub]] interfaces - Moodle.com
::maintains an internal repository of files and governs access to them.
+
::Makes it easy for users to find and navigate other systems and external Moodle repositories, leveraging the Moodle Network in various ways.
 
 
* [[Development:Repository API|Repository API]] - Moodle.com
 
:: allows users to browse external repositories and select files to bring into Moodle
 
 
 
* [[Development:Portfolio API|Portfolio API]] - Moodle.com
 
:: allows Moodle content to be captured and pushed out to external repositories.
 
 
 
:: These three are separate but complementary.
 
  
 
====Overall appearance====
 
====Overall appearance====
  
* New Blocks implementation
+
* New Blocks implementation - Moodle.com
 
:: Blocks and page layouts are now implemented consistently and predictably on every page in Moodle, and can even be docked like menus.
 
:: Blocks and page layouts are now implemented consistently and predictably on every page in Moodle, and can even be docked like menus.
  
* Outputlib  
+
* Outputlib - Moodle.com
 
:: The engines that produce HTML and JS code have been completely re-written, so that Moodle's output is more consistent and efficient.  Themers can now also modify any of the output if they choose to, without touching core code.
 
:: The engines that produce HTML and JS code have been completely re-written, so that Moodle's output is more consistent and efficient.  Themers can now also modify any of the output if they choose to, without touching core code.
  
* Themes  
+
* Themes - Moodle.com
 
:: The structure and design of themes has been rewritten for efficiency and flexibility.  Unfortunately this means all themes need to be re-written for Moodle 2.0.  To help you get started, Moodle 2.0 will ship with 20 brand-new standard themes designed to make Moodle look much nicer than ever before.
 
:: The structure and design of themes has been rewritten for efficiency and flexibility.  Unfortunately this means all themes need to be re-written for Moodle 2.0.  To help you get started, Moodle 2.0 will ship with 20 brand-new standard themes designed to make Moodle look much nicer than ever before.
  
* [[Development:Navigation 2.0|Navigation improvements]]
+
* [[Development:Navigation 2.0|Navigation improvements]] - Moodle.com
 
:: Navigation is now implemented consistently in the navbar and in a Navigation block on every page.  All settings are now always available in a settings block on every page.  Themes can completely rewrite navigation if they require.
 
:: Navigation is now implemented consistently in the navbar and in a Navigation block on every page.  All settings are now always available in a settings block on every page.  Themes can completely rewrite navigation if they require.
 +
 +
* [[Development:HTML editor 2.0|HTML editor 2.0]] - Moodle.com
 +
::Replaces our ageing HTMLarea with a new one that works on more browsers, enforces XHTML strict and better integrates with the new [[Development:File API|File API]]
 +
 +
* General usability review  - Moodle.com and others
 +
:: We've been attacking many of the [http://tracker.moodle.org/browse/MDL/component/10309?selected=com.atlassian.jira.plugin.system.project:component-popularissues-panel most popular issues from the Moodle Tracker]
 +
 +
 +
====File handling improvements====
 +
 +
These three are separate but very complementary.
 +
 +
* [[Development:File API|File API]] - Moodle.com
 +
::maintains an internal repository of files and governs access to them.
 +
 +
* [[Development:Repository API|Repository API]] - Moodle.com
 +
:: allows users to browse external repositories using a filepicker and select files to bring into Moodle (copy or link)
 +
 +
* [[Development:Portfolio API|Portfolio API]] - Moodle.com
 +
:: allows Moodle content to be captured and pushed out to external repositories.
 +
  
  
Line 66: Line 79:
 
* [[Development:Progress tracking|Progress tracking]] (also known as competency tracking) - Catalyst
 
* [[Development:Progress tracking|Progress tracking]] (also known as competency tracking) - Catalyst
 
:: Let users have learning plans listing which outcomes or courses should attempt next, based on which courses they have already completed.
 
:: Let users have learning plans listing which outcomes or courses should attempt next, based on which courses they have already completed.
 +
 +
  
 
====Changes to activity modules====
 
====Changes to activity modules====
Line 71: Line 86:
 
* [[Development:Wiki_2.0|Wiki 2.0]] - DFWikiteam-UPC
 
* [[Development:Wiki_2.0|Wiki 2.0]] - DFWikiteam-UPC
 
:: To be cleaned up and included as a core module.
 
:: To be cleaned up and included as a core module.
 
* [[Feedback module]] - Andreas Grabs
 
:: Polished and included as a core module.
 
  
 
* Quiz module and question bank
 
* Quiz module and question bank
Line 88: Line 100:
 
* [[Development:Workshop 2.0 specification|Workshop 2.0]] - David Mudrak, moodle.com
 
* [[Development:Workshop 2.0 specification|Workshop 2.0]] - David Mudrak, moodle.com
  
====Improvements to other parts of Moodle====
+
* Lesson module
 +
** Converted to use Moodle forms for consistency
 +
** Refactored the code to make it maintainable
 +
 
 +
 
 +
====Administrative improvements====
 +
 
 +
* [[Development:Enrolment plugins 2.0|Enrolments improvements]] including groups synchronisation - moodle.com (skodak)
 +
:: Several major improvements related to guest access, course enrolments, metacourses and groups (aka global groups, site-wide groups etc)
 +
 
 +
* [[Development:Roles administration improvements for Moodle 2.0|Roles administration interface improvements]] - Tim Hunt, moodle.com and others.
 +
 
 +
* [[Development:Web_services|Standard Web Services Layer]] - UPC and moodle.com
 +
::Standard set of core API functions made available via SOAP and XML-RPC
 +
 
 +
* [[Development:Site-wide groups]] - Moodle.com
 +
:: Site wide groups are a number one request
 +
 
 +
* [http://tracker.moodle.org/browse/MDL-16348 Admin report plugins can choose where in the admin tree they get added] - Tim Hunt, moodle.com.
 +
 
 +
 
 +
 
 +
 
 +
====Other major components====
 +
 
 +
* [[Development:Backup_2.0|Backup 2.0]] - Moodle.com
 +
:: New backup that actually works on large courses etc and is faster.  Old backup will be retained as a separate directory to import old backups.
  
 
* [[Development:Gradebook_improvements]] - Moodle.com  
 
* [[Development:Gradebook_improvements]] - Moodle.com  
 
::Implement a number of usability improvements for the Gradebook (and port back to 1.9 as well)
 
::Implement a number of usability improvements for the Gradebook (and port back to 1.9 as well)
 
* [[Development:HTML editor 2.0|HTML editor 2.0]] - Moodle.com
 
::Replaces our ageing HTMLarea with a new one that works on more browsers, enforces XHTML strict and better integrates with the new [[Development:File API|File API]]
 
  
 
* [[Student projects/Blog improvements|Blog 2.0]] - Moodle.com
 
* [[Student projects/Blog improvements|Blog 2.0]] - Moodle.com
Line 104: Line 139:
 
* [[Student projects/Secure RSS feeds|Secure RSS feeds]] - Moodle.com
 
* [[Student projects/Secure RSS feeds|Secure RSS feeds]] - Moodle.com
 
:: Obscure RSS feed URLs using private keys, controlled by users.
 
:: Obscure RSS feed URLs using private keys, controlled by users.
 
* [[Development:Backup_2.0|Backup 2.0]] - Moodle.com
 
:: New backup that actually works on large courses etc and is faster.  Old backup will be retained as a separate directory to import old backups.
 
  
 
* [[Development:IMS_CC|IMS Common Cartridge]] - [http://moodlesolutions.uvcms.com/ UVCMS (Moodle Partner)]
 
* [[Development:IMS_CC|IMS Common Cartridge]] - [http://moodlesolutions.uvcms.com/ UVCMS (Moodle Partner)]
 
:: IMS CC import and hopefully export.
 
:: IMS CC import and hopefully export.
 
* [[Development:Site-wide groups]] - Moodle.com  (REQUIRES FUNDING!)
 
:: Site wide groups are a number one request
 
  
 
* More tagging
 
* More tagging
 
:: Tagging of courses, activities and other things (MDL-13404)
 
:: Tagging of courses, activities and other things (MDL-13404)
  
* AJAX for gradebook User Interfaces - Moodle.com (REQUIRES FUNDING!)
 
:: A host of UI improvements to enhance usability and speed
 
 
* General usability review - Moodle.com
 
:: We'll be attacking many of the [http://tracker.moodle.org/browse/MDL/component/10309?selected=com.atlassian.jira.plugin.system.project:component-popularissues-panel most popular issues from the Moodle Tracker]
 
 
====Administrative improvements====
 
 
* [[Community hub]] interfaces - Moodle.com and others
 
::Makes it easy for users to find and navigate other systems and external Moodle repositories, leveraging the Moodle Network in various ways.
 
 
* [[Development:Web_services|Standard Web Services Layer]] - UPC and moodle.com
 
::Standard set of core API functions made available via SOAP and XML-RPC
 
  
* [[Development:Enrolment plugins 2.0|Enrolments improvements]] including groups synchronisation - moodle.com (skodak)
 
:: Several major improvements related guest access, course enrolments, metacourses and groups synchronisations (aka global groups)
 
  
* [[Development:Roles administration improvements for Moodle 2.0|Roles administration interface improvements]] - Tim Hunt, moodle.com and others.
+
====Database control====  
 
 
* [http://tracker.moodle.org/browse/MDL-16348 Admin report plugins can choose where in the admin tree they get added] - Tim Hunt, moodle.com.
 
 
 
====Internal clean-ups====  
 
  
 
* [[Development:DB layer 2.0|DB layer 2.0]] - Moodle.com
 
* [[Development:DB layer 2.0|DB layer 2.0]] - Moodle.com
Line 145: Line 155:
 
* Ancient (pre 1.7) DB install/upgrade system removed - Moodle.com
 
* Ancient (pre 1.7) DB install/upgrade system removed - Moodle.com
 
:: The deprecated system for installing or upgrading database entries used in Moodle < 1.7 will be completely removed, while supporting only the new XML based database scheme introduced in 1.7.
 
:: The deprecated system for installing or upgrading database entries used in Moodle < 1.7 will be completely removed, while supporting only the new XML based database scheme introduced in 1.7.
 
===Hopefully===
 
 
* [[Student Information API]]
 
::API for integrating external systems for managing student information
 
* [[Development:Voice|Moodle Voice]]
 
:: Moodle Voice is a project for embedding VoiceXML support into Moodle Core.
 
* [[Development:Learning Design export|Learning Design export]]
 
* [[Turnitin Integration]] - Dan Marsden with support from Catalyst NZ
 
* [[Development:Workshop 2.0 specification|Workshop module]] refactoring and re-inclusion - David Mudrák, moodle.com
 
* [[Development:Lesson_2.0|Lesson module refactoring]] - (REQUIRES FUNDING!)
 
  
 
==See also==
 
==See also==

Revision as of 07:27, 18 January 2010

This roadmap collects the best information about upcoming features in Moodle. It is not 100% certain - features may change according to available funding and developers.


Version 2.0

Moodle 2.0, our biggest release ever, is coming together after two years of development. It contains a huge number of core changes to the platform, most of which are designed to give 3rd party developers more flexibility, scalability and safety.

The timetable is designed to deliver Moodle 2.0 in time for the new school year in the northern hemisphere and currently looks like this:

  1. 1 March 2010: Moodle 2.0 Beta release
  2. March, April, May, June: intensive beta testing and bug fixing (freeze on new features)
  3. 1 July 2010: Moodle 2.0 production release

You can track our current progress in detail on the Moodle 2.0 Planning document. Please remember that this document is frequently updated and details can change a lot!

Draft release notes at Moodle 2.0 release notes. Please add notable items while they are fresh in your mind. The notes will be edited before the final release.

Major features

System requirements

Since Moodle 2.0 is such a major release, we are allowing ourselves some increases in the requirements. This allows developers to write cleaner code using the more recent features of PHP, and will also improve user experience.

  • PHP 5.2.8 is now the minimum version supported. (We are aware that several important linux distros are still shipping earlier versions like 5.2.6, but we need at least version 5.2.x for the new File API, and there are bugs in 5.2.7 and earlier that we could not work around.)
  • Databases should be one of the following:
    • MySQL 5.0.25 or later (InnoDB storage engine highly recommended)
    • PostgreSQL 8.3 or later
    • Oracle 10.2 or later
    • MS SQL 2005 or later

Community

Makes it easy for users to find and navigate other systems and external Moodle repositories, leveraging the Moodle Network in various ways.

Overall appearance

  • New Blocks implementation - Moodle.com
Blocks and page layouts are now implemented consistently and predictably on every page in Moodle, and can even be docked like menus.
  • Outputlib - Moodle.com
The engines that produce HTML and JS code have been completely re-written, so that Moodle's output is more consistent and efficient. Themers can now also modify any of the output if they choose to, without touching core code.
  • Themes - Moodle.com
The structure and design of themes has been rewritten for efficiency and flexibility. Unfortunately this means all themes need to be re-written for Moodle 2.0. To help you get started, Moodle 2.0 will ship with 20 brand-new standard themes designed to make Moodle look much nicer than ever before.
Navigation is now implemented consistently in the navbar and in a Navigation block on every page. All settings are now always available in a settings block on every page. Themes can completely rewrite navigation if they require.
Replaces our ageing HTMLarea with a new one that works on more browsers, enforces XHTML strict and better integrates with the new File API
  • General usability review - Moodle.com and others
We've been attacking many of the most popular issues from the Moodle Tracker


File handling improvements

These three are separate but very complementary.

maintains an internal repository of files and governs access to them.
allows users to browse external repositories using a filepicker and select files to bring into Moodle (copy or link)
allows Moodle content to be captured and pushed out to external repositories.


Course organisation

Allowing dependencies and forced paths through activities. That is, "You can't do this activity until that activity is completed".
Let teachers to specify conditions that define when a student has completed a course. Keep a record of which users have completed each course.
Let users have learning plans listing which outcomes or courses should attempt next, based on which courses they have already completed.


Changes to activity modules

To be cleaned up and included as a core module.
  • Lesson module
    • Converted to use Moodle forms for consistency
    • Refactored the code to make it maintainable


Administrative improvements

Several major improvements related to guest access, course enrolments, metacourses and groups (aka global groups, site-wide groups etc)
Standard set of core API functions made available via SOAP and XML-RPC
Site wide groups are a number one request



Other major components

New backup that actually works on large courses etc and is faster. Old backup will be retained as a separate directory to import old backups.
Implement a number of usability improvements for the Gradebook (and port back to 1.9 as well)
Add commenting to blogs (MDL-8776), as well as support for external blogs
Refactor messaging to use plugins for input and output, controlled by users
Obscure RSS feed URLs using private keys, controlled by users.
IMS CC import and hopefully export.
  • More tagging
Tagging of courses, activities and other things (MDL-13404)


Database control

MDL-14679 Database access is to be refactored so that: we can use prepared statements everywhere for increased security and some performance, we put datalib functions in a class to allow better unit tests (mock db), and remove the need for slashes in userspace. This will cause breakage for 3rd party modules (but fixing them won't be too hard).
  • Ancient (pre 1.7) DB install/upgrade system removed - Moodle.com
The deprecated system for installing or upgrading database entries used in Moodle < 1.7 will be completely removed, while supporting only the new XML based database scheme introduced in 1.7.

See also