Dokeos 1.8 Roadmap

From Dokeos

Jump to: navigation, search

Image:Lp screen.jpg

This roadmap is the job description of the Dokeos team towards the release of Dokeos 1.8. It focuses on:

  • Authoring : new tests types, templates for easy content creation, powerpoint2learningpath
  • Scorm : better import and export, online editing of imported Scorm packages
  • Usability : coherence of the interface, new design
  • Live conferencing : integration of LMS and virtual classroom

Here is a synthesis of how Dokeos switches from a LMS approach to an integrated learning management suite:

Image:Dokeos18features.png


Admin Who? deadline
A graphical way to change the password of users (also the admin), taking the optional encryption into account. bmollet  
The ability to specify the authentication source of new users (added individually or through csv or xml files). bmollet  
confirmation message after subscribing a class to a course bmollet  
Dokeos Config Settings: easy adding of plugins pcool  
Dokoes Config Settings: easy adding of new course tools pcool  

Some new config settings:

  • enable / disable tool introductions (default=off)
  • sort the documents (default on or off ???)
  • navigation menu: none, text only, icons only, icons and text
  • navigation menu position: left, right, top, bottom, ...
  • time limit of who is online
  • what should be displayed in the breadcrumbs as link to the course homepage: 'this course' , course code, course name (shortened to X characters?)
  • use AWACS to determine which fields are really required when registering
  • AWAC that switches on or off the default documents, default tests, ... This is a choice between a course that contains already some example material or a completely empty course.
  • registration as course admin: not allowed, allowed, allowed but approval of admin required
  • registration: not allowed, allowed, allowed but approval of admin required
  • account is valid: forever, registration date + time period
  • config settings for space: studentpublications, dropbox (per person), ...
  • setting for the choice of the wysiwyg editor
  • enable/disable user image in forum.
  • User can use their own language in this course / Users have to use course language
pcool  
login as based on the user_id instead of on the user_name    
a warning message if the install folder is still accessible (and readable by apache)    
navigation menu off by default. for the moment we have

no solution for both right hand menu and central menu. There is

obviously an overlap here thomas
   
Full backup tool (all courses i.e HTML files + DBs + the dokeos programme).    
Breadcrumbs    
Re-design the complete breadcrumbs mechanism pcool  
On the 'my courses' page the breadcrumb reads platform

> my courses. Both links link to the same page. Inside the course the breadcrumb reads platform > current course. This is an inconsistency because the my courses link has disappeared. More on this:

http://www.dokeos.com/forum/viewtopic.php?t=4516
pcool  
AWAC setting for the link to the course homepage in the

breadcrumbs: 'this course', course code or course title (shortened to x

characters
pcool  
Campus homepage    
The current homepage before login (as is) with

possibilities to configure and edit homepage content to display general

campus information, FAQ, news, .... etc.
   
note on course homepage=language driven    
Course Creation    
make the 2 "create course" pages (1 for teachers via

current right menu after login, the other via platform admin section) to be consistent => only difference really is that in one the teacher name is taken automatically from the login, in the other the

teacher name is entered in a field
   
it states that 'All fields required' but in fact none is really required (there is no check if the fields are really filled)   Fixed in CR with FormValidator
use AWACS to determine which fields are really required

(see also the already existing AWAC: 'Display Course Code in Course

Title') and indicate it using the red asterisk (as in user registration)
pcool  

Coursecode when creating a course: when this is not entered the default CL code is used. Maybe it is better to change this to the x characters of the title (stripping out special characters and spaces). This can easily be accomplished by adding the following code on line 146 of create_course/add_course.php

pcool  
the algorithm to create a unique code is not so good.

The input is a string(20) and in the database it is a string(40). If the code is already in the db it adds some extra characters. If however (using the situation above) we use the title to create a course and obtain a string (40) than this can no longer work and we would have to do it the other way around: take the last character of the code string(40) and shuffle this one untill we have one that is unique

(proposal by tberton)
pcool  
AWAC that switches on or off the default documents,

default tests, ... This is a choice between a course that contains

already some example material or a completely empty course.
pcool  
course setting    
consistency: after OK you go to an empty page bmollet  
change language directly after changing settings bmollet  
Showing/hiding of tools should be possible from here (see item on navigation menu).  
Database abstraction layer and API    
We will gradually move to use PEAR:DB. Yannick  
Removing of all backticks in queries turboke done
Documents    
Allow a course-admin to sort the documents + config

setting to disable this. How will teachers disable any sorting they

have made and want to return to the normal alphabetic sorting?
bmollet  
Display the folder structure in the dropdown-list to select a folder and not the whole path bmollet  
thumbnail generator for the slideshow feature pcool  
show comments in slideshow pcool  
make a direct link to the slideshow possible pcool  
Implementing OpenOffice APIs to convert PowerPoint into

PNGs and Word into HTML. It should be able to disable this through the platform admin and happen only on upload of a ppt (perhaps add

additonal checkboxes in an advanced section)

Eric Marguin

 
Some forget to give a name

(I suggest in this case it does like MS Word : give the first letters

of the doc as name);
   

Some don't see the validate button (it is too much in the bottom) => remove the description from THIS screen (add comment only when editing which makes it consistent with the procedure for adding a folder). some have nothing to tell in the description field and feel embarassed of that, slowering their validation process

   
create a document => htmlarea should adapt to the height of the screen (only in the documents tool !!)    

Some woul like to start from a template => Finetuning of FCKeditor

   

Creating a document  can take 30 minutes. Then the session is lost and all data too. My solution: refresh an invisible frame as long as somebody uses any token of the wysiwyg editor. Nothing more upsetting than loosing one's data.Check with Olivier Cauberghe (UGent who has code for this).
solution: when session is lost message appears simply store all the post information in temp database together with the ip, the course code, ... When the user logs back in you could display a message: you have some information that has been lost. Do you want to recover it? (like word does it)

   

fold/unfold list of directories on the left (platform setting) with possibility to hide this. Just look at the windows file browser note: There is code available for this in the DOKEOS_LCMS branch. Bmollet 12:11, 15 March 2006 (CET)

   
Dropbox    
user sortable table consistent with the other tools Renehaentjens Available in CR
Folders Renehaentjens Available in CR
Complete refactoring Pcool  
Exercises, Quiz    

The design of the new quiz tool was based on feedback from users on the users day and on the forum, analysis by Ali Pakdal, feature analysis of what is possible in Claroline and in Moodle. The feature list is quite extensive and it will probably require a major rewrite of the code.

   

Nomenclatura: Use clear and uniform terminology: Tests in french, Oefeningen in Dutch. Not the same idea.
The quiz is hierarchical but this is not so obvious: one quiz(exercise or test) consists of several questions. A question has a question title, possible answers, a hint (missing) and feedback.
Find an agreement on this nomenclatura.

   

make the tool more structured. In the ideal situation there are a limited set of screens:

  • overview of all the quizes that are available. The layout here has to be consistent with all the other tools. This means moving all the action icons (edit, delete, export to IMS/QTI, visibility, ...) to one column, nog grey lines under each quiz but using alternating colors like sortable table (maybe use sortable table)

    Overview of all quizes
    Overview of all quizes

  • overview of a quiz (the quiz, all the questions and all the possible answers to the questions (see screenshot)
    (Move up/down icons appear only if the quiz does not shuffle the questions)
   
When you finish to create a test, you should see it

through clicking on Student View, not on Tests > Test title (incoherent with the rest of Dokeos). ON the other hand, when in LP : once seeing it in Stud view, you should be back to Teacher view when

clicking on Teacher view, not the case now.
   

Some screens will have a lot of options. Related options should be grouped together and structured logically. It would be good if the platform admin could (des)activate some features of the test tool so that it can be made easier if needed.

possible screens:

  • overview of the available quizes.
    Overview of all quizes
    Overview of all quizes

    • actions links: add new quiz, import hotpotatoe quiz, link to question pool (on the right).
    • item icons: edit, visibility, delete, export
    • Status icon showing if the user already executed the test or not. If (s) he did execute it the score could be displayed there. If the user is allowed to retake the test / see the test again / ... then it the link to do the test might or might not be available
  • overview of a quiz.
    Overview of a  quiz
    Overview of a quiz

    • action link: add new question, add question from the pool.
    • item icons (quiz, blue): edit, visibility, delete, export
    • item icons (question, grey): edit, delete, visibility, move up/down
    • item icons (possible answers, white): edit, delete
  • screen to add / edit a new quiz .
    Add or edit a quiz
    Add or edit a quiz

    This page becomes very complex and cluttered. There are a few possible solutions to solve this:

    1. it is completely configurable by the platform admin (default situation = the functionality that we have in the quiz tool of dokeos 1.6).
    2. Another solution is that the creation is wizard driven: step 1: select the users/ groups, step 2: start and end date, step 3: title, comment and attachement, step 4, ....
    3. We could also choice the default/advanced pattern

    default options
    default options
    All options
    All options

  • screen to add / edit a question
    Add or edit a question
    Add or edit a question

  • screen to add / edit the possible answers. The layout of this will be different for every question type.
  • screens for the question pool (to allow randomisation & re-use). A decission on the question pool has to be taken. Is the a box of templates or real questions (editing a question in the question pool => do the questions in the quiz change also?)
   

New Quiz (separate this in a default section and and advanced section)

  • quiz title
  • quiz comments
  • feedback
    do not show the correct answers to the students / show the correct
    answers after every question / show the correct answers at the end of the quiz
    • Feedback after complete quiz: Q1 -> Q2 -> Q3 ->
    feedback of Q1, Q2, Q3 (question, possible answers, your answer (green if correct, red if incorrect), feedback
    • Feedback after each question: Q1 -> Feedback Q1 -> Q2
    -> Feedback Q2 -> Q3 -> ...
  • result (scores): show results to the student / do not show the results to the student (example: when there is a question with an open answer then the results won't relevant since the open answer won't be quoted yet), after a given date.
  • checkbox: shuffle the questions
  • add attachments
  • timer: students have x minutes to complete the quiz. It should be possible that a user can only have X minutes to complete the quiz. This is a setting for the quiz. We could also foresee this for every individual question but I doubt if this is useful (and this certainly adds extra complexity because the sum of all the time of the individual questions must be equal to the time of the quiz).
  • timing: the quiz is available from date X to date Y, quiz start and end date. This can easily be added if the quiz is added to the item_property table which already has these tables.
  • quiz target users/groups: everybody, selected users/groups This can easily be added if the quiz is added to the item_property table which already has these tables.
  • questions per page: 1,2,3, ... all
  • advance to the next question only if the previous was correct. This is only relevant in the multipage quiz. This can be usefull in a learning path but this requires that multiple attempts (of the question, not the quiz) are possible. (disable with javascript)
  • is the user allowed to go back to a previous question or not? (only relevant in multipage quizes). If the student returns then his/her answers have to be displayed
  • attempts allowed: unlimited, limited by X default 1. This setting tells if the quiz can be done only once (real exam or survey) or several times (self tests). This was one of the features that was asked several times in Curios. Initially it was only possible to take a quiz only once but we had to change this since a lot of users asked this
  • penality for retrying
  • shuffle: random order of the questions inside the quiz
  • random questions out of question pool (this can become very powerfull especially if the question pool is worked out better). example: 5 random questions of pool A (easy questions), 3 random of pool B (more difficult ones), 1 question of pool C (very difficult questions). When this approach is selected we also have to store which questions the user has got.
   

New Question

  • question title
  • question comment
  • add attachments to the question + to the possible answers + to the feedback + to the hint through the resourcelinker so that a course material can be used. An example: a physics question could display a real life situation. The hint could then contain a pdf (that is in the document tool) with all the formulas of the course.
    An alternative to this is that the wysiwyg editor has a feature that allows browsing the course material of the course. For documents this is not really a problem (and links could also be added) but the problem is that other course material cannot be used (for instance a forum discussion).
  • type:
    • multiple choice
    • multiple response
    • matching
    • fill in the blanks
    • open answer with a limited number of characters (counter counting the number of characters that are left).(max X characters with counter)(new)
    • hotspot (new)
  • Hint (+resourcelinker): This can be very helpful in self tests. The score that can be obtained for the question after a hint has been used should be lower then when the hint is not used. I would implement this with a negative score for a hint (a penalisation score)
    The hint is on the level of the question, not on the level of the possible answers.
  • hint penalisation (minus x points),
  • shuffle possible answers: random order of the possible answers of this question,
  • add to question pool: yes or no
  • first answer is the final answer OR multiple attempts possible (similar to attempts allowed of the quiz)
   

Question Pool

  • categories in the question pool (labels)
  • If a question in the question pool is edited, are ALL the quizes using this question using the updated question? This is a (relatively easy) content management problem.
    • If not, then we have to use a copy of the question and have a separate pool table. If we add a question from the pool to a quiz then we copy the question from the question pool to the quiz and we can then edit the question in the quiz independantly of the question in the pool. In this approach the question pool is more like a templates system.
    • Edit question in question pool does also edit the question in the quiz => the question links to the question in the question pool. In this case the reference to the question in the question pool has to be stored so that it is possible to get the most recent version. Updating the question in the question pool OR in any quiz affects all other quizes that use this question.
    • Both approaches can be combined but this adds serious complexity and this won't be transparant for the user.
  • question pool: use checkboxes to add more than one question from the pool at once.
   

export quiz to IMS-QTI. Is is relevant to allow to export every single question of a quiz or the question pool? Claroline does it on the level of the complete quiz

   
consistency: one column for edit/delete/visibility icons    
question: is a hotpotato file a quiz or a question?    
Quiz uses HTML_Quickform !!!    
File structure    
rename claroline to main, move plugin folders outside

main folder, add data folder for user uploads (images), add

documentation folder,
   
Forum    
complete refactoring, integrationand adding new functionality pcool  
Groups    
allow creating a group according to the classes that are subscribed to the course bmollet  
allow multiple group responsables and give

functionality to these group responsables: allow them to edit every

forum topic of the group forums, every group document, ...
pcool  
allow group members to edit their own documents only (group responsable could edit all the group documents) pcool  
Help    
The help should be improved and should be contextual.

The help should be much more extensive than is the case now and should

provide "good practices" and examples of use.
   
Tool developers are also required to write the manuals for it    
Tooltips for the action links (for instance: add a new document)    
Interface    
consider moving the tabs to header 1    
draw proposals for the header    
clearer distinction between a confirmation message (the

agenda item has been added) and an error message (please fill in field X) (see also quiz)

   
consistency: when deleting => javascript box:

are you sure you want to delete: WHAT NAME_OF_WHAT
example: are you sure you want to delete the folder: this_is_a_documents_folder

   
forms align left and the form labels right (this is already the case when using html_quickform)    
Icons    
remove unused images    
translate them into english    
api function to display icons pcool  
Installation and upgrade    
use a different language upon installation    
button to check the database connection turboke Available
in CR
Sql file for the main tables, used during install, also useful for a future manual install script    
Checking if the folders have the right permissions for reading / writing http://www.dokeos.com/forum/viewtopic.php?t=3758    
Ask Ballistic learning improve the page layout of

Dokeos 1.8 install". They will for instance get text and form fields closer, avoid that the Next button is out of the page etc. The install information is much better now but we need webdesign people to

structure things visually. Clean the code
   
write upgrades for dokeos 1.5.x, dokeos 1.6, Claroline 1.6, Claroline 1.7    
Navigation Menu    
code to display navigation menu, by default to the right side    
navigation menu yes/no switch to admin config settings, desactivated by default    
navigation menu show icons switch in admin config settings, activated by default    
perhaps: more config settings dealing with the position of the menu (left - right - top - bottom)    
show text and icons, only icons, or only text (like browser buttons options) instead of just show icons yes/no    
optional button to reduce its size    
code duplication: tool shortcuts == navigation menu at the top with icons, this means we can save code    
Course Management    
replace the unsubscribe from courses link by an icon = consistency increase + less clicks required turboke done
make the sort my courses the default view turboke done

In dokeos 1.6 it is already possible to do course sorting using user defined course categories. This needs some more options:

  • sorting of the categories: as it is now the user defined course categories cannot be sorted (moved up and down)(code ready UGent)
  • show the already existing course categories (in the create course category section)(code ready UGent)
  • AWACS: show all user created course categories on the my courses page (even those that are empty)
  • no two categories with the same name
  • delete a user defined course category (code ready UGent)
  • show the categories that do not contain any course also otherwise there is no easy method to remove them (code ready UGent)
pcool  
Print Option    
Print stylesheet for Dokeos: http://www.dokeos.com/forum/viewtopic.php?t=6005 Student Hogent  
My Profile    
Allow the platform manager to extend the profile of

the user with new fields: http://www.dokeos.com/forum/viewtopic.php?t=3728

.
pcool  
language selection in the profile => language dropdown can disappear once the user is logged in pcool  
Allow profile to be seen by others ->

everything should also be visible through the 'User' tool (and also

searchable)
   
Allow the student to select what can be viewed by others pcool  
Refactoring and Cleaning    
All code should work without the fake register globals

code. This process is almost complete, but there are still a few places

where it isn't (some parts of the learning path for example).
   
rename claro_init_banner to banner.inc.php, claro_main_conf.inc.php to main_conf.inc.php... pcool  
change the code so in arrays representing a course, a

user,... the same keys are used as the corresponding field names in the database. For example, now sometimes $course['path'], $course['directory'], $course['dir'] are used. It should always be

$course['directory'].
   
replace occurrences of

$_course['dbNameGlu']."table_name" with

Database::get_course_table(TABLE_NAME_CONSTANT)
   
use the appropriate get_path everywhere and remove the obsolete api_get_sys_path and alikes pcool + turboke done
use the appropriate

Database::get_course_table(TABLE_NAME_CONSTANT) everywhere and remove

get_course_learningpath tables and alike
pcool 30%
replace occurrences of $mainDbName."table_name" with Database::get_main_table(MAIN_TABLE_CONSTANT)    
replace occurrences of $siteName with

get_setting('siteName'). Same for $Institution, $InstitutionURL,

$emailAdministrator, $administratorSurname, $administratorName
bmollet  
delete all occurrences of bgcolor="#XXXXXX" in the code (and replace them by a good css alternative)    
replace include(....claro_init_header.inc.php) with Display::display_header($tool_name)    
change the field 'auth_source' of the main user table to contain 'platform' by default    
clean the claro_main.conf.php file so that the settings

that are stored in the db do no longer occur in the claro_main.conf.php file. This can cause unneeded confusion since editing the claro_main.conf.php will not have any effect (it is now done through

the Dokeos config setting).
   
css cleanup    

use of the phpmailer class throughout Dokeos

   
Registration    
Registration as course manager only after approval of

platform admin. (can this be extended to have the option to have all

registrations needing approval by the admin?)
pcool  
Resourcelinker    
Major code rewrite pcool  
use tool constants pcool  

add student publications

pcool  
allow uploading new documents => goes into the user space pcool  
Learning Path and Scorm    
complete reworking Yannick  
Sort learning paths and allow sortable table
Export: also export the metadata of the learnpath

items. It is just copy/paste of an already-XML-formatted string into

the imsmanifest.xml
   
Dokeos learnpath: Allow creating learning paths in directories (forum)    
score weighing missing (forum)    
test results as prerequisites (forum)    
modify an uploaded scorm package (forum)    
Student Publications    
Download all items in one zip file    
The ability to create 'folders'    
same action on multiple documents    
Users    
ability to lock a user: http://www.dokeos.com/forum/viewtopic.php?p=16863#16863 pcool  
timewindow on a user: a start and end date in

course_user. This is a sort of a view option with a time restriction. What should be decided is if these temporary user are visible in the users tool or not. The user table could also have such a start and end

date (default enddate=startdate + 1 year)
pcool  
Ability to search in the user tool. + search on (parts of) name, last name, username, ...    
registration to a course: access allowed after approval of course manager    
allow course manager to add NEW user to the course

(this was unfortunately removed while redesigning add user to course

feature)
   
Make the user Image clickable so that a popup with the full sized image appears pcool  
The ability to search when subscribing a user to your course.    
bring the user statistics to the user detail page pcool  
add overview of all forum posts. Students are sometimes quoted on their forum posts also. pcool  
Teacher comment: allow the teacher to add personal

comments on a student (only visible for the teacher, not for the student). At UGent this is used when more than one teacher have to give grades for the same course. They share comments on the student like this. (these teacher comments, do they overlap with the existing

off-by-default facility to "define headings")?
pcool  
The visible items of a user profile/portfolio should be displayed here pcool  
allow browsing through the students: next user, previous user    
What's new    
mark all new items since your last visit: On the course

homepage an icon is displayed to inform the user that new items were added to the course. But inside those tool, this notification isn't available. Documents, links,... can be marked as new. A more advanced version would also allow users to mark items as new. (Cfr an

email-reader where you can mark emails as 'not read').
pcool  
who is online    
who is online in this course pcool done
sortable table    
config setting for the time-limit of who's online    
Links    
Remove the CSV import of links feature and move this to the dokeos extensions page with clear explanation how to plug this in. Priya  
on the course homepage: remove the icon to add a link to the course homepage Priya  
Tracking    
Improve the existing tracking with a powerfull

reporting interface including an accurate measure of time spent by

users on various pages.
Eric Marguin  
Refactoring of the tracking (see Toon Vanhoecke, Ghent University on this) Eric Marguin  
extend tracking (see Howest)    
scoring bug in Synthesis view in Tracking Dokeos Company  
Remove all colors. For the moment Synthesis view

progress BG is red when less than 75% visited and Green when more than 75%. But all experts conflict on this, it is not readable and has no

obvious utilisty. So a majorty want the BG color to be removed.
Dokeos Company  
Manual    
Tool responsables for dokeos 1.8 are also assumed to

write the manuals (from a student, teacher, platform admin, developer

point of view): http://www.dokeos.com/wiki/index.php/Manual
   
Dokeos developments ?    
reporting -> 1.9 ?    
survey -> overlap with quiz tool ?    
smartblogs -> extension ?    
FCK editor    
flash player for mp3    
flash clean embed for flash    
error messages if you do not uplaod the right video or audio format    
add multimedia filtype buttons.    
free clipart images for fck templates    
elegant fck templates Dokeos Company  
Other    
nomenclatura: hide, show, visible/invisible, enable/disable all points to the same.    
Maybe : grey (Javascript) comments inside form fields to explain what to do???    
api function to export whatever is available: csv, excel, pdf, ... (input through an array or through an SQL query)    
character set solution -> UTF-8    
better example content (+ config setting for this so

that you can start with a completely empty course without the example

documents)
   
transform ppt into serie of gif image and learning path + make a learning path out of a folder of documents (extension).    
Copy this course content should be part of course settings just like the course backup    
course description has a completely different design than the other tools.    
htmlarea not working    
download file should not have the zip-icon (bug introduced)    
The distinction between name and title for create a document is an example of technically oriented solution. We know there exists a difference in HTML between these 2 concepts. For a end user, this is quite complex. He should only deal with a title and we should give it a name from the title. Like "Leçons de l'été" would become "leconsdelete.html". Don't ask a lambda human being give 2 names to an object...
Notice however how this can be confusing as well. Someone taking a look at the filename might interpret it as "lecons delete". --turboke
   
Thourough study of diacritics in username, documents name    
Remove from stable release langugages that are less than 90% over    
Remove or replace default content :

replace socratic irony by a nice illustrated and clever multiple choice, replace the default document in documents by a nice and well

looking document. I suggest only these tools need a default content.
   
Move the conference tool to dokeos extensions

 

 

 

 

For the extensions page:

  • vcard export of users
  • stylesheet selector trough the profile + some nice-looking default styles
  • xml import of links
  • FAQ manager
  • new manager
Personal tools