Feature Wiki

Information about planned and released features

Tabs

Introduction of TaskManager

1 Requirements

ILIAS currently does not provide a simple way to manage Tasks and To-Dos in Courses Groups and in the Personal Workspace. With the Introduction of a new Tool "TaskManager" ILIAS would provide a powerful and flexible Task-Management-Solution for Collaboration and personal usage. 

The concept for the Task-Management consists of three components: 

  1. A new Repository Object type "Tasklist"
  2. A Personal Desktop component "Personal Taskoverview"
  3. A concept for "Systemtasks"

1.1 Tasklists

A new Repository Object type called "Tasklist" is introduced:

  • An arbitrary number of tasks can be added to a Tasklist. Besides a title and description, a task has a status, a mandatory type, a due date, can be linked to an ILIAS object, can be commented and more. 
  • The list of possible status for a task can be extended inside a tasklist. 
  • A Tasklist can be defined as "Global" or "Individual". In a global list, all users share the same version of the list, i.e. a completed task is completed for every user. In an individual list, every user has an own version of the list, i.e. every user has to complete the tasks on his/her own.
  • Individual lists can be assigned to users or groups. Therefore they offer an administration over all assignments (restricted to certain roles), giving an overview of the diffrent progresses of assigned users/groups.
  • With the permission "Change Status" administrators can define if assigned users are allowed change the status of their tasks on their own. 

Userview of a tasklist
Assignments in an individual list

1.2 Personal Taskoverview

A new block container on the personal desktop gives users a quick overview of their assigned tasks.  

A new main menu entry "Taskoverview" leads to an interface with a detailed overview over all assigned tasks. 

1.3 Systemtasks

This concept describes the implementation of procedures like "Change the password" or "Accept the EULA" as Systemtasks. A Systemtask features the following:

  • Can be assigned to a certain group of users, e.g. "All new users", "All Users", "Users with role x" etc.
  • Can be system-blocking: must be executed before ILIAS can be used (like "Accept the EULA")
  • A prompt for optional tasks can be configurable. E.g. users should be prompted after each login to complete these tasks. 
  • Each user has a "Systemlist", containing all assigned systemtasks

1.4 Other

A detailed (german) specification can be downloaded here (latest: 34_Spezifikation_v2.pdf):

2 Additional Information

  • Idea / concept: Klaus Vorkauf klaus.vorkauf@fh-dortmund.de / Fabian Schmid, studer + raimann ag
  • Interest in funding: FH Dortmund
  • Maintainer: (will be set by Jour Fixe / maintainer)
  • Implementation of the feature is done by (will be set by Jour Fixe / maintainer)
  • Testcases by: Klaus Vorkauf / klaus.vorkauf@fh-dortmund.de

3 Discussion

Glaubitz, Marko [mglaubitz] 05.04.2016: I like the idea of having a kind of "task engine" as a means of course management.

HJ Lauener:
A taskmanager-tool ist interesting for collaboration activities.
But there are also some interesting didactical usecases where a taskmanager-object could be used (additional functionalities are necessary):

A) A new Assignment-type "Tasklist" in the exercise-object.

  • Teacher adds a assignment-type Tasklist
  • Teacher adds the tasks in this tasklist, e.g.
    • Read your chapter 7-9, discuss in your weekly study groups
    • Post the conclusion for your project in the assignment x of Exercise y
    • ...
  • Possibility to add documents, or possibility to link ILIAS-Objects to each task
  • Starttime, Deadline, Grace Period, Mandatory, Work Instruction for the whole tasklist? and/or for each task?
  • Now each learner have to inform/state whether this task is concluded.
B) A Taskmanager-object for groups
  • Teacher adds a taskmanager-object (in a course, in a group)
  • In this taskmanager-object, he adds one or more taskmanager-lists (eg. a taskmanager-list for each week)
  • Each taskmanager list has an end-date
  • In the taskmanager-list, the teacher adds the tasks (To dos for the groups)
  • The teacher activates a setting in the taskmanager-object „Use this taskmanager-object for subordinated groups"
  • In each subordinatied group, the group members have to fulfill a task-list together
  • The teacher see in his taskmanager-object, if the groups have fulfilled the tasks

HJ Lauener

In a older Collaboration-evaluation, where we compared ILIAS with other systems (like Sharepoint, Basecamp, ...), and we defined some project-management functionalities. The following could be interesting for this project.

  • Connect tasks with milestones
  • Create automatic visualisation of Gant-chart
  • Collaboration cockpit: show/evaluate completion of activities (tasks, deadlines etc.) as summary per group/ person/project
  • Exporting functions into common document standards (like Gant-chart, task-lists etc.)

AT, 2016-06-04: To this feature request there are several competening entries plus one existing implementation.
Please ensure that the relationship of those requests to this request is clearly defined and settled befor deciding upon this one.  There were workshops held on these topics and prospective customers involved. 
Competing contenders are: 

JourFixe, ILIAS [jourfixe], JUL 04, 2016: We discussed the suggestion by Fabian and like the it. But see some open issues:

  • We prefer an implementation that uses a reduced access and permission concept to keep the handling of the tool easy. We prefer to abandon specific activities in a first version and keep the permission handling simple.
  • We would like to have an idea how "system tasks" could be handled in the future (tasks by ILIAS, e.g. assignment deadlines)
  • Why do task lists have to be created in the Personal Workspace and why task lists are not handled like the calendar.
  • We would like to know how task lists and calendar are related to each other - does a task trigger a calendar event.
  • We recommend to discuss open issues and ideas in a dedicated workshop before a final discussion of this request in one of the next Jour Fixes.

Killing, Alexander [alex], 3 Feb 2017: I think we really need to discuss the relation to the existing calendar feature. There seems to be quite a major redundancy in the functionality.

And please list some use cases / scenarios how this feature should be used. Otherwise it is hard to check the added value of different options.

Workshop, 3. Feb 2017: The Taskmanager has been discussed in a virtual conference, which led to following decision:

The concept of tasklists should be implemented as a service rather than a module. It should be optionally usable by certain object types, similar to the calendar service (a view inside the right lane of a course, for example). 
Since the constructed specification describes an implementation of tasklists as a module, this concept has to be adapted according to the decision.

AT: We had a discussion of the taskmanager-as-a-service and I have conrtibuted the following input to that workshop discussion: 

Global activation of Service

The Task-Service gets its own node in the global Administration, where it can be globally activated / deactivated. 

(Prospectively it could be activated for sub-sets of the tree as "Didactic Templates". But this is not the scope of the project now.)

Activation in Settings of Object

In the Settings-tab of an object in the section "Additional Features" the option „Tasks“ is activated via a checkbox.
If activated an additional tab "Tasks" is displayed in the object. HEre Tasks can be added and updated and so forth.
An additional sub-tab is displayed in which the respective configuartion takes place.

Adding Tasks
A Task is added via a „Add Task“-button. The button calls a form with the following options:  

  • Title (Text Input field)
  • Description / Instruction (Text Input field)
  • Mandatory (Checkbox)
  • Start Date (Date entry)
    • Date after which this task should be displayed to users
  • Deadline (Date entry)
  • Applicability (Radio buttons) 
    • All members of encompassing course / group
    • All users that have this object placed on their Personal Desktop
  • Comments (Checkbox) 
  • Remind users of task (as in Survey)

Displaying Tasks to users and adding private tasks
In the right margin column of the object a block "tasks" is shown. The tasks show up there once they are beyon their start date, respectively immediately after the task was created and no start date specified. 
In case the object is encmpassed in a course or group the margin column of that very course or group aggregates tasks from the objects contained in them. 
The course / group itself has its own task-tab and it is possible to create not-object-related tasks. 
This concept is absoultely analogous to calendars in courses and groups.
Exactly as withe the calendar function "Add Appointment“ in the calendar-block users can add their own private tasks that only apply to themselves. 

If it was not for undated tasks this whole feature could just re-use the calendar code.

Off-Canvas display of task instruction
Clicking on a tasks' title opens an Offf-Canvas:
·        The task instruction, link to the respective object, improtant action buttons are displayed in the off-canvas. 
·         Off Canvas instructions persists even if user navigates ILIAS while working off the task. User can work on the task in the main column and view the instructions right in the off-canvas.

http://www.ilias.de/docu/goto_docu_wiki_wpage_4333_1357.html
http://www.ilias.de/docu/goto_docu_wiki_wpage_3959_1357.html

Tasks on Personal Desktop
In the marginal column of the Personal Desktop and an own entry in the PD-Dropdown, a users finds all tasks apllying to him or her.
Tasks display must not depend on other services to be active (My Workspace or Calender).

Tasks on Personal Desktop
In the marginal column of the Personal Desktop and an own entry in the PD-Dropdown, a users finds all tasks apllying to him or her.
Tasks display must not depend on other services to be active (My Workspace or Calender).

4 Implementation

{please give a description of the final implementation and add screenshots if possible}

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Approval

Approved at {date} by {user}.

Last edited: 6. Mar 2017, 23:17, Tödt, Alexandra [atoedt]