diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
index 747b9db60aa69ac8e16d24377306fd3b82dde3dc..bb7af6336687cb75d6ef2eb3000d13318bd27b0c 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentItemEditorController.java
@@ -513,9 +513,12 @@ public class AssessmentItemEditorController extends BasicController implements A
 		if(entries == null || entries.isEmpty()) return;
 		
 		String type = entries.get(0).getOLATResourceable().getResourceableTypeName();
-		if(SelectionTarget.description.name().equalsIgnoreCase(type) || SelectionTarget.expert.name().equalsIgnoreCase(type)) {
+		if(SelectionTarget.description.name().equalsIgnoreCase(type)
+				|| SelectionTarget.expert.name().equalsIgnoreCase(type)
+				|| SelectionTarget.description.name().equalsIgnoreCase(type)) {
 			activate(ureq, itemEditor);
-		} else if(SelectionTarget.description.name().equalsIgnoreCase(type) || SelectionTarget.score.name().equalsIgnoreCase(type)) {
+		} else if(SelectionTarget.attempts.name().equalsIgnoreCase(type)
+				|| SelectionTarget.maxpoints.name().equalsIgnoreCase(type)) {
 			activate(ureq, scoreEditor);
 		} else if(SelectionTarget.feedback.name().equalsIgnoreCase(type)) {
 			activate(ureq, feedbackEditor);
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentSectionEditorController.java b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentSectionEditorController.java
index f00371e4df89901ac3ba6671bc174db7e956f7c8..742fc955a48dbd49a57a23258b99f2aa4bd014c3 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentSectionEditorController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentSectionEditorController.java
@@ -105,9 +105,10 @@ public class AssessmentSectionEditorController extends BasicController implement
 		if(entries == null || entries.isEmpty()) return;
 		
 		String type = entries.get(0).getOLATResourceable().getResourceableTypeName();
-		if(SelectionTarget.description.name().equalsIgnoreCase(type) || SelectionTarget.score.name().equalsIgnoreCase(type)) {
+		if(SelectionTarget.description.name().equalsIgnoreCase(type)) {
 			tabbedPane.setSelectedPane(ureq, tabbedPane.indexOfTab(optionsCtrl.getInitialComponent()));
-		} else if(SelectionTarget.expert.name().equalsIgnoreCase(type)) {
+		} else if(SelectionTarget.expert.name().equalsIgnoreCase(type)
+				|| SelectionTarget.attempts.name().equalsIgnoreCase(type)) {
 			tabbedPane.setSelectedPane(ureq, tabbedPane.indexOfTab(expertOptionsCtrl.getInitialComponent()));
 		}
 	}
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestComposerController.java b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestComposerController.java
index c83a55f6da16ff17e56a13ae324e39c119df6b4a..b3f39010455b15f4e8dfd8275945f83b358417c0 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestComposerController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestComposerController.java
@@ -590,6 +590,9 @@ public class AssessmentTestComposerController extends MainLayoutBasicController
 						.createCEListFromString(OresHelper.createOLATResourceableType(target.name()));
 				((Activateable2)currentEditorCtrl).activate(ureq, entries, null);
 			}
+			if(currentEditorCtrl != null) {
+				menuTree.setSelectedNode(selectedNode);
+			}
 			return currentEditorCtrl != null;
 		}
 		return false;
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestEditorController.java b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestEditorController.java
index c8a206b73926fee6552ca4103ce0111bea4e0675..23e314b7d9f2754425edb15a57ccb4f3cf27d320 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestEditorController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/AssessmentTestEditorController.java
@@ -123,12 +123,14 @@ public class AssessmentTestEditorController extends BasicController implements A
 		if(entries == null || entries.isEmpty()) return;
 		
 		String type = entries.get(0).getOLATResourceable().getResourceableTypeName();
-		if(SelectionTarget.description.name().equalsIgnoreCase(type) || SelectionTarget.score.name().equalsIgnoreCase(type)) {
+		if(SelectionTarget.description.name().equalsIgnoreCase(type)
+				|| SelectionTarget.maxpoints.name().equalsIgnoreCase(type)) {
 			activate(ureq, optionsCtrl);
-		} else if(SelectionTarget.expert.name().equalsIgnoreCase(type) && testPartOptionsCtrl != null) {
-			activate(ureq, testPartOptionsCtrl);
-		} else if(SelectionTarget.feedback.name().equalsIgnoreCase(type) && testPartOptionsCtrl != null) {
+		} else if(SelectionTarget.expert.name().equalsIgnoreCase(type)
+				|| SelectionTarget.attempts.name().equalsIgnoreCase(type)) {
 			activate(ureq, testPartOptionsCtrl);
+		} else if(SelectionTarget.feedback.name().equalsIgnoreCase(type)) {
+			activate(ureq, feedbackCtrl);
 		}
 	}
 	
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_de.properties
index 2ecf967b5524a1927bccb08e2a1ae987e7e91523..fe1b86a1518b8bb0aea656fdc4cd3760f2e43108 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_de.properties
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/_i18n/LocalStrings_de.properties
@@ -240,7 +240,7 @@ table.header.feedback=Feedback
 table.header.identifier=Frage ID
 table.header.points=Punkte
 table.header.review=R\u00FCckblick erlauben
-table.header.skipping=\u00DCberspring erlauben
+table.header.skipping=\u00DCberspringen erlauben
 table.header.solution=L\u00F6sung anzeigen
 table.header.title=Titel
 table.header.type=Fragetyp
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/events/SelectEvent.java b/src/main/java/org/olat/ims/qti21/ui/editor/events/SelectEvent.java
index a62ff48cbf196e9f2ba1adbcbac313b8e76dd7f7..83bd77428eeb9844555e4ead701d454550236afd 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/events/SelectEvent.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/events/SelectEvent.java
@@ -55,7 +55,8 @@ public class SelectEvent extends Event {
 		
 		description,
 		expert,
-		score,
+		attempts,
+		maxpoints,
 		feedback
 		
 	}
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentSectionScoreCellRenderer.java b/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentSectionScoreCellRenderer.java
index 46ac4c1398de683a64f67aae4323fcf879fd94cd..e54a2c594949d531a1b6a5546b2b6587334f800c 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentSectionScoreCellRenderer.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentSectionScoreCellRenderer.java
@@ -29,6 +29,7 @@ import org.olat.core.gui.translator.Translator;
 import org.olat.modules.assessment.ui.ScoreCellRenderer;
 
 import uk.ac.ed.ph.jqtiplus.node.test.AssessmentSection;
+import uk.ac.ed.ph.jqtiplus.node.test.TestPart;
 
 /**
  * 
@@ -50,7 +51,7 @@ public class AssessmentSectionScoreCellRenderer implements FlexiCellRenderer {
 	public void render(Renderer renderer, StringOutput target, Object cellValue, int row, FlexiTableComponent source,
 			URLBuilder ubu, Translator translator) {
 		ControlObjectRow object = (ControlObjectRow)source.getFlexiTableElement().getTableDataModel().getObject(row);
-		if(object.getControlObject() instanceof AssessmentSection) {
+		if(object.getControlObject() instanceof AssessmentSection || object.getControlObject() instanceof TestPart) {
 			scoreRenderer.render(renderer, target, cellValue, row, source, ubu, translator);
 		} else {
 			actionRenderer.render(renderer, target, cellValue, row, source, ubu, translator);
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentTestOverviewConfigurationController.java b/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentTestOverviewConfigurationController.java
index 7e920e555671f22b3c12e5dc7636200d1bae557c..632d8126b4386dd588ff451e30aa9da96807cf07 100644
--- a/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentTestOverviewConfigurationController.java
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/overview/AssessmentTestOverviewConfigurationController.java
@@ -166,25 +166,39 @@ public class AssessmentTestOverviewConfigurationController extends FormBasicCont
 	private void initTableForm(FormItemContainer formLayout, UserRequest ureq) {	
 		FlexiTableColumnModel tableColumnModel = FlexiTableDataModelFactory.createFlexiTableColumnModel();
 		
-		DefaultFlexiColumnModel titleCol = new DefaultFlexiColumnModel(PartCols.title,
-				SelectionTarget.description.name(), new HierarchicalPartCellRenderer());
+		// title
+		DefaultFlexiColumnModel titleCol = new DefaultFlexiColumnModel(PartCols.title, SelectionTarget.description.name(), new HierarchicalPartCellRenderer());
 		titleCol.setAlwaysVisible(true);
 		tableColumnModel.addFlexiColumnModel(titleCol);
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.maxScore,
-				new AssessmentSectionScoreCellRenderer(SelectionTarget.score.name())));
+		// score
+		DefaultFlexiColumnModel scoreCol = new DefaultFlexiColumnModel(PartCols.maxScore, SelectionTarget.maxpoints.name());
+		scoreCol.setCellRenderer(new AssessmentSectionScoreCellRenderer(SelectionTarget.maxpoints.name()));
+		tableColumnModel.addFlexiColumnModel(scoreCol);
+		// max attempts
 		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.attempts,
-				SelectionTarget.expert.name(), new MaxAttemptsCellRenderer(getTranslator())));
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.skipping,
-				new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator()))));
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.comment,
-				new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator()))));
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.review,
-				new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator()))));
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(PartCols.solution,
-				new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator()))));
+				SelectionTarget.attempts.name(), new MaxAttemptsCellRenderer(getTranslator())));
+		// skipping allowed
+		DefaultFlexiColumnModel skippingCol = new DefaultFlexiColumnModel(PartCols.skipping, SelectionTarget.expert.name());
+		skippingCol.setCellRenderer(new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator())));
+		tableColumnModel.addFlexiColumnModel(skippingCol);
+		// comment allowed
+		DefaultFlexiColumnModel commentCol = new DefaultFlexiColumnModel(PartCols.comment, SelectionTarget.expert.name());
+		commentCol.setCellRenderer(new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator())));
+		tableColumnModel.addFlexiColumnModel(commentCol);
+		// review allowed
+		DefaultFlexiColumnModel reviewCol = new DefaultFlexiColumnModel(PartCols.review, SelectionTarget.expert.name());
+		reviewCol.setCellRenderer(new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator())));
+		tableColumnModel.addFlexiColumnModel(reviewCol);
+		// solution
+		DefaultFlexiColumnModel solutionCol = new DefaultFlexiColumnModel(PartCols.solution, SelectionTarget.expert.name());
+		solutionCol.setCellRenderer(new TestAndSectionCellRenderer(SelectionTarget.expert.name(), new OptionCellRenderer(getTranslator())));
+		tableColumnModel.addFlexiColumnModel(solutionCol);
+		// type
 		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, PartCols.type, new QuestionTypeFlexiCellRenderer(getTranslator())));
 		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, PartCols.identifier));
-		tableColumnModel.addFlexiColumnModel(new DefaultFlexiColumnModel(false, PartCols.feedback, SelectionTarget.feedback.name()));
+		DefaultFlexiColumnModel feedbackCol = new DefaultFlexiColumnModel(PartCols.feedback, SelectionTarget.feedback.name(), new YesNoCellRenderer(getTranslator()));
+		feedbackCol.setDefaultVisible(false);
+		tableColumnModel.addFlexiColumnModel(feedbackCol);
 
 		tableModel = new AssessmentTestOverviewDataModel(tableColumnModel);
 		
@@ -222,10 +236,23 @@ public class AssessmentTestOverviewConfigurationController extends FormBasicCont
 	}
 	
 	private void loadModel(TestPart part, int pos, List<ControlObjectRow> rows) {
-		rows.add(ControlObjectRow.valueOf(part, pos));
+		ControlObjectRow partRow = ControlObjectRow.valueOf(part, pos);
+		rows.add(partRow);
+
+		boolean someMaxScore = false;
+		DoubleAdder atomicMaxScore = new DoubleAdder();
+		
 		List<AssessmentSection> sections = part.getAssessmentSections();
 		for(AssessmentSection section:sections) {
-			loadModel(section, rows);
+			Double maxScore = loadModel(section, rows);
+			if(maxScore != null) {
+				someMaxScore = true;
+				atomicMaxScore.add(maxScore.doubleValue());
+			}
+		}
+		
+		if(someMaxScore) {
+			partRow.setMaxScore(Double.valueOf(atomicMaxScore.sum()));
 		}
 	}
 	
diff --git a/src/main/java/org/olat/ims/qti21/ui/editor/overview/YesNoCellRenderer.java b/src/main/java/org/olat/ims/qti21/ui/editor/overview/YesNoCellRenderer.java
new file mode 100644
index 0000000000000000000000000000000000000000..e741689f073c749891d05581a4c978633aad8fd0
--- /dev/null
+++ b/src/main/java/org/olat/ims/qti21/ui/editor/overview/YesNoCellRenderer.java
@@ -0,0 +1,55 @@
+/**
+ * <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.ims.qti21.ui.editor.overview;
+
+import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiCellRenderer;
+import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableComponent;
+import org.olat.core.gui.render.Renderer;
+import org.olat.core.gui.render.StringOutput;
+import org.olat.core.gui.render.URLBuilder;
+import org.olat.core.gui.translator.Translator;
+
+/**
+ * 
+ * Initial date: 18 janv. 2019<br>
+ * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
+ *
+ */
+public class YesNoCellRenderer implements FlexiCellRenderer {
+	
+	private final Translator translator;
+	
+	public YesNoCellRenderer(Translator translator) {
+		this.translator = translator;
+	}
+
+	@Override
+	public void render(Renderer renderer, StringOutput target, Object cellValue, int row, FlexiTableComponent source,
+			URLBuilder ubu, Translator trans) {
+		if(cellValue instanceof Boolean) {
+			Boolean bool = (Boolean)cellValue;
+			if(bool.booleanValue()) {
+				target.append(translator.translate("yes"));
+			} else {
+				target.append(translator.translate("no"));
+			}
+		}
+	}
+}