diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedGroupListController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedGroupListController.java
index a0dc1b45666a168c291e1d4fc8f89b9e6544c327..225655517d6c4bcef2af532336960cf5dc476642 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedGroupListController.java
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedGroupListController.java
@@ -28,7 +28,6 @@ import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.FormItem;
 import org.olat.core.gui.components.form.flexible.FormItemContainer;
 import org.olat.core.gui.components.form.flexible.elements.FlexiTableElement;
-import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
 import org.olat.core.gui.components.form.flexible.impl.FormEvent;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel;
@@ -52,13 +51,11 @@ import org.springframework.beans.factory.annotation.Autowired;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
-public class GTACoachedGroupListController extends FormBasicController {
+public class GTACoachedGroupListController extends GTACoachedListController {
 	
 	private FlexiTableElement tableEl;
 	private CoachGroupsTableModel tableModel;
 	
-	private final GTACourseNode gtaNode;
-	private final CourseEnvironment courseEnv;
 	private final List<BusinessGroup> coachedGroups;
 	
 	@Autowired
@@ -66,9 +63,7 @@ public class GTACoachedGroupListController extends FormBasicController {
 	
 	public GTACoachedGroupListController(UserRequest ureq, WindowControl wControl,
 			CourseEnvironment courseEnv, GTACourseNode gtaNode, List<BusinessGroup> coachedGroups) {
-		super(ureq, wControl, LAYOUT_BAREBONE);
-		this.gtaNode = gtaNode;
-		this.courseEnv = courseEnv;
+		super(ureq, wControl, courseEnv, gtaNode);
 		this.coachedGroups = coachedGroups;
 		initForm(ureq);
 		updateModel();
@@ -76,6 +71,8 @@ public class GTACoachedGroupListController extends FormBasicController {
 
 	@Override
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
+		super.initForm(formLayout, listener, ureq);
+		
 		FlexiTableColumnModel columnsModel = FlexiTableDataModelFactory.createFlexiTableColumnModel();
 		columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(CGCols.name.i18nKey(), CGCols.name.ordinal(),
 				true,  CGCols.name.name()));
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedListController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedListController.java
new file mode 100644
index 0000000000000000000000000000000000000000..e28e6a4fabd9f76139086ba2922266475957abfa
--- /dev/null
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedListController.java
@@ -0,0 +1,76 @@
+/**
+ * <a href="http://www.openolat.org">
+ * OpenOLAT - Online Learning and Training</a><br>
+ * <p>
+ * Licensed under the Apache License, Version 2.0 (the "License"); <br>
+ * you may not use this file except in compliance with the License.<br>
+ * You may obtain a copy of the License at the
+ * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a>
+ * <p>
+ * Unless required by applicable law or agreed to in writing,<br>
+ * software distributed under the License is distributed on an "AS IS" BASIS, <br>
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br>
+ * See the License for the specific language governing permissions and <br>
+ * limitations under the License.
+ * <p>
+ * Initial code contributed and copyrighted by<br>
+ * frentix GmbH, http://www.frentix.com
+ * <p>
+ */
+package org.olat.course.nodes.gta.ui;
+
+import org.olat.core.gui.UserRequest;
+import org.olat.core.gui.components.form.flexible.FormItemContainer;
+import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
+import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer;
+import org.olat.core.gui.control.Controller;
+import org.olat.core.gui.control.WindowControl;
+import org.olat.course.nodes.GTACourseNode;
+import org.olat.course.run.environment.CourseEnvironment;
+import org.olat.modules.ModuleConfiguration;
+
+/**
+ * 
+ * Initial date: 21.12.2015<br>
+ * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
+ *
+ */
+public abstract class GTACoachedListController extends FormBasicController {
+	
+	protected final GTACourseNode gtaNode;
+	protected final CourseEnvironment courseEnv;
+	
+	public GTACoachedListController(UserRequest ureq, WindowControl wControl,
+			CourseEnvironment courseEnv, GTACourseNode gtaNode) {
+		super(ureq, wControl, "coach_list");
+		this.gtaNode = gtaNode;
+		this.courseEnv = courseEnv;
+	}
+
+
+	@Override
+	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
+		if(formLayout instanceof FormLayoutContainer) {
+			FormLayoutContainer layoutCont = (FormLayoutContainer)formLayout;
+			
+			ModuleConfiguration config = gtaNode.getModuleConfiguration();
+			boolean assignment = config.getBooleanSafe(GTACourseNode.GTASK_ASSIGNMENT);
+			layoutCont.contextPut("assignmentEnabled", new Boolean(assignment));
+			
+			boolean submit = config.getBooleanSafe(GTACourseNode.GTASK_SUBMIT);
+			layoutCont.contextPut("submitEnabled", submit);
+			
+			boolean reviewAndCorrection = config.getBooleanSafe(GTACourseNode.GTASK_REVIEW_AND_CORRECTION);
+			layoutCont.contextPut("reviewAndCorrectionEnabled", reviewAndCorrection);
+			
+			boolean revision = config.getBooleanSafe(GTACourseNode.GTASK_REVISION_PERIOD);
+			layoutCont.contextPut("revisionEnabled", reviewAndCorrection && revision);
+			
+			boolean solution = config.getBooleanSafe(GTACourseNode.GTASK_SAMPLE_SOLUTION);
+			layoutCont.contextPut("solutionEnabled", solution);
+			
+			boolean grading = config.getBooleanSafe(GTACourseNode.GTASK_GRADING);
+			layoutCont.contextPut("gradingEnabled", grading);
+		}
+	}
+}
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantGradingController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantGradingController.java
index 05eed0a889b1fab6c516af806a54234627ee9c97..02dff854454fbd790e320b987261f0f834369bbe 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantGradingController.java
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantGradingController.java
@@ -123,7 +123,7 @@ public class GTACoachedParticipantGradingController extends BasicController {
 	}
 	
 	private void doGraded() {
-		//assignedTask = gtaManager.updateTask(assignedTask, TaskProcess.graded);
+		//assignedTask = gtaManager.updateTask(assignedTask, TaskProcess.grading);
 	}
 
 	private void doOpenAssessmentForm(UserRequest ureq) {
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantListController.java b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantListController.java
index fe7fbf349a5b524f38f7f5bf54abeb01d0f0a46a..881b80389bb5cb314de8766f864cb770990f1b6b 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantListController.java
+++ b/src/main/java/org/olat/course/nodes/gta/ui/GTACoachedParticipantListController.java
@@ -32,7 +32,6 @@ import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.form.flexible.FormItem;
 import org.olat.core.gui.components.form.flexible.FormItemContainer;
 import org.olat.core.gui.components.form.flexible.elements.FlexiTableElement;
-import org.olat.core.gui.components.form.flexible.impl.FormBasicController;
 import org.olat.core.gui.components.form.flexible.impl.FormEvent;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel;
 import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnModel;
@@ -53,7 +52,6 @@ import org.olat.course.nodes.GTACourseNode;
 import org.olat.course.nodes.gta.GTAManager;
 import org.olat.course.nodes.gta.TaskLight;
 import org.olat.course.nodes.gta.ui.CoachParticipantsTableModel.CGCols;
-import org.olat.course.run.environment.CourseEnvironment;
 import org.olat.course.run.userview.UserCourseEnvironment;
 import org.olat.course.run.userview.UserCourseEnvironmentImpl;
 import org.olat.group.BusinessGroup;
@@ -71,13 +69,12 @@ import org.springframework.beans.factory.annotation.Autowired;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  *
  */
-public class GTACoachedParticipantListController extends FormBasicController {
+public class GTACoachedParticipantListController extends GTACoachedListController {
 	
 	private FlexiTableElement tableEl;
 	private CoachParticipantsTableModel tableModel;
 
-	private final GTACourseNode gtaNode;
-	private final CourseEnvironment courseEnv;
+
 	private List<UserPropertiesRow> assessableIdentities;
 	
 	private final boolean isAdministrativeUser;
@@ -96,7 +93,7 @@ public class GTACoachedParticipantListController extends FormBasicController {
 	
 	public GTACoachedParticipantListController(UserRequest ureq, WindowControl wControl,
 			UserCourseEnvironment userCourseEnv, GTACourseNode gtaNode) {
-		super(ureq, wControl, LAYOUT_BAREBONE);
+		super(ureq, wControl, userCourseEnv.getCourseEnvironment(), gtaNode);
 		
 		Roles roles = ureq.getUserSession().getRoles();
 		isAdministrativeUser = securityModule.isUserAllowedAdminProps(roles);
@@ -105,9 +102,7 @@ public class GTACoachedParticipantListController extends FormBasicController {
 		
 		CourseGroupManager cgm = userCourseEnv.getCourseEnvironment().getCourseGroupManager();
 		UserCourseEnvironmentImpl coachCourseEnv = (UserCourseEnvironmentImpl)userCourseEnv;
-		courseEnv = userCourseEnv.getCourseEnvironment();
-		this.gtaNode = gtaNode;
-		
+
 		boolean admin = userCourseEnv.isAdmin();
 
 		Set<Identity> duplicateKiller = new HashSet<>();
@@ -139,6 +134,7 @@ public class GTACoachedParticipantListController extends FormBasicController {
 
 	@Override
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
+		super.initForm(formLayout, listener, ureq);
 
 		FlexiTableColumnModel columnsModel = FlexiTableDataModelFactory.createFlexiTableColumnModel();
 		if(isAdministrativeUser) {
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_content/coach_list.html b/src/main/java/org/olat/course/nodes/gta/ui/_content/coach_list.html
new file mode 100644
index 0000000000000000000000000000000000000000..09baa12bae2143ac629e7ac8b7ce286dc8a8bb03
--- /dev/null
+++ b/src/main/java/org/olat/course/nodes/gta/ui/_content/coach_list.html
@@ -0,0 +1,23 @@
+$r.render("entries")
+<ul class="list-unstyled small">
+	<li><i class="o_icon o_icon-fw o_icon_info"> </i>: $r.translate("process.action.explanation")</li>
+	#if($assignmentEnabled)
+	<li><strong>$r.translate("process.assignment")</strong>: $r.translate("process.assignment.explanation")</li>
+	#end
+	#if($submitEnabled)
+	<li><strong>$r.translate("process.submission")</strong>: $r.translate("process.submission.explanation")</li>
+	#end
+	#if($reviewAndCorrectionEnabled)
+	<li><strong>$r.translate("process.review")</strong>: $r.translate("process.review.explanation")</li>
+		#if($revisionEnabled)
+		<li><strong>$r.translate("process.revision")</strong>: $r.translate("process.revision.explanation")</li>
+		#end
+	<li><strong>$r.translate("process.correction")</strong>: $r.translate("process.correction.explanation")</li>
+	#end
+	#if($solutionEnabled)
+	<li><strong>$r.translate("process.solution")</strong>: $r.translate("process.solution.explanation")</li>
+	#end
+	#if($gradingEnabled)
+	<li><strong>$r.translate("process.grading")</strong>: $r.translate("process.grading.explanation")</li>
+	#end
+</ul>
\ No newline at end of file
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties
index e68201f545d3a525685a910a5f19f18387b28cf3..7588057b687d6b83003fef3d88fbdf0cd7ecafb2 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_de.properties
@@ -117,14 +117,23 @@ passed.false=$org.olat.course.assessment\:passed.false
 preview=$org.olat.course.nodes.ta\:form.task.preview
 preview.disabled=$org.olat.course.nodes.ta\:form.task.without.preview
 preview.enabled=$org.olat.course.nodes.ta\:form.task.with.preview
+process.action.explanation=Aktion durch Betreuer erforderlich
 process.no=Zuweisung
+process.no.explanation=Der Benutzer wählt gerade eine Aufgabe aus.
 process.assignment=Zuweisung
+process.assignment.explanation=Der Benutzer wählt gerade eine Aufgabe aus.
 process.submission=Abgabe
+process.submission.explanation=Der Benutzer bearbeitet gerade die Aufgabe.
 process.review=Feedback
+process.review.explanation=Der Betreuer begutachtet die abgegebene Lösung. 
 process.revision=\u00DCberarbeitung
+process.revision.explanation=Der Benutzer überarbeitet die Aufgabe.
 process.correction=Korrektur
+process.correction.explanation=Der Betreuer begutachtet die überarbeitete Aufgabe.
 process.solution=L\u00F6sung
+process.solution.explanation=Der Benutzer hat die Musterlösung erhalten. Bei verfügbarer Bewertung kann der Betreuer nun die Aufgabe bewerten. 
 process.grading=Bewertung
+process.grading.explanation=Der Betreuer bewertet die Aufgabe. 
 process.graded=Bewertet
 relative.dates=Relatives Datum
 relative.to.assignment=Aufgabe Zuweisung
diff --git a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties
index dd1ba5b1f64f75be535dea6878a750cc9b08bae2..bdb2aa6fe2f911378c967980dd997bf625a074b9 100644
--- a/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/course/nodes/gta/ui/_i18n/LocalStrings_en.properties
@@ -117,15 +117,23 @@ passed.true=$org.olat.course.assessment\:passed.true
 preview=$org.olat.course.nodes.ta\:form.task.preview
 preview.disabled=$org.olat.course.nodes.ta\:form.task.without.preview
 preview.enabled=$org.olat.course.nodes.ta\:form.task.with.preview
+process.action.explanation=Action needed
 process.assignment=Assignment
+process.assignment.explanation=The user is selecting a task
 process.correction=Correction
+process.correction.explanation=The coach is reviewing the revised documents.
 process.graded=Graded
 process.grading=Grading
+process.grading.explanation=The coach is grading the task.
 process.no=Assignment
 process.review=Review
+process.review.explanation=The coach is reviewing the submitted documents.
 process.revision=Revision
+process.revision.explanation=The user is revising his solution.
 process.solution=Solution
+process.solution.explanation=The user has now access to the sample solution. The coach is able to grade the task, if available.
 process.submission=Submission
+process.submission.explanation=The user is working on the assigned task.
 relative.dates=Relative dates
 relative.to.assignment=Task assignment
 relative.to.assignment.message={0} days after assignment of the task.