diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
index 4d272a101ef35ae94b8d370d70b94133d2c7f754..e587817757e2ac520295cf8e444ae30e54e58a0f 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IPeerAssessment.java
@@ -1,11 +1,10 @@
 package unipotsdam.gf.interfaces;
 
-import unipotsdam.gf.assignments.NotImplementedLogger;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 
 import java.util.ArrayList;
-import java.util.List;
+import java.util.Map;
 
 /**
  * Created by dehne on 18.05.2018.
@@ -42,7 +41,7 @@ public interface IPeerAssessment {
      *
      * @param totalPerformance @return
      */
-    List<Grading> calculateAssessment(ArrayList<Performance> totalPerformance); // calculates marks for every performance and writes it to an array
+    Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance); // calculates marks for every performance and writes it to an array
 
 
     /**
@@ -84,4 +83,6 @@ public interface IPeerAssessment {
      */
     void answerQuiz(StudentAndQuiz studentAndQuiz, QuizAnswer quizAnswer);
     void deleteQuiz(String quizId);
+
+    Map<String, Double> calculateAssessment(String projectId, String method);
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
index 0de6aa34c5c74904885c1c27031cc6d197dd4b54..ca3c82dc4acc198e83d88446f952bd7559a99f2b 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/FBAssessement.java
@@ -4,7 +4,7 @@ import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 
 import java.util.ArrayList;
-import java.util.List;
+import java.util.Map;
 
 /**
  * Created by dehne on 18.05.2018.
@@ -27,7 +27,7 @@ public class FBAssessement extends AssessmentDAO {
     }
 
     @Override
-    public List<Grading> calculateAssessment(ArrayList<Performance> totalPerformance) {
+    public Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance) {
         return null;
     }
 
@@ -68,4 +68,9 @@ public class FBAssessement extends AssessmentDAO {
     public void deleteQuiz(String quizId) {
 
     }
+
+    @Override
+    public Map<String, Double> calculateAssessment(String projectId, String method) {
+        return null;
+    }
 }
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
index 3fe2ec1467544c2430088961ac16019421a817a1..0abcace8bd73264eae5718f2768651eb0b6cfa73 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessment.java
@@ -1,11 +1,9 @@
 package unipotsdam.gf.modules.assessment.controller.service;
 
-import sun.misc.Perf;
 import unipotsdam.gf.interfaces.IPeerAssessment;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 
-import java.lang.reflect.Array;
 import java.util.*;
 
 public class PeerAssessment implements IPeerAssessment {
@@ -40,20 +38,27 @@ public class PeerAssessment implements IPeerAssessment {
     }
 
     @Override
-    public List<Grading> calculateAssessment(ArrayList<Performance> totalPerformance) {
-        List<Grading> quizMean = quizGrade(totalPerformance);
-        List<Grading> workRateMean = workRateGrade(totalPerformance);
+    public Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance) {
+        Map<StudentIdentifier, Double> quizMean = new HashMap<>(quizGrade(totalPerformance));
+        Map<StudentIdentifier, Double> workRateMean = new HashMap<>(workRateGrade(totalPerformance));
+        Map<StudentIdentifier, Double> result = new HashMap<>();
         Grading[] grading = new Grading[totalPerformance.size()];
-        for (int i = 0; i < quizMean.size(); i++) {
-            double grade = (quizMean.get(i).getGrade() + workRateMean.get(i).getGrade()) / 2.0;
-            grading[i] = new Grading(totalPerformance.get(i).getStudentIdentifier(), grade);
+        for (StudentIdentifier student : quizMean.keySet()) {
+            double grade = (quizMean.get(student) + workRateMean.get(student)) / 2.0;
+            result.put(student, grade);
         }
-        return Arrays.asList(grading);
+        return result;
+    }
+
+    @Override
+    public Map<String, Double> calculateAssessment(String projectId, String method) {
+
+        return null;
     }
 
-    private List<Grading> quizGrade(ArrayList<Performance> totalPerformance) {
+    private Map<StudentIdentifier, Double> quizGrade(ArrayList<Performance> totalPerformance) {
         double[] allAssessments = new double[totalPerformance.size()];
-        Grading[] grading = new Grading[totalPerformance.size()];
+        Map<StudentIdentifier, Double> grading = new HashMap<>();
 
         for (int i = 0; i < totalPerformance.size(); i++) {
             for (int j = 0; j < totalPerformance.get(i).getQuizAnswer().length; j++) {
@@ -62,15 +67,14 @@ public class PeerAssessment implements IPeerAssessment {
             allAssessments[i] = 6.0 - 5.0 * allAssessments[i] / totalPerformance.get(i).getQuizAnswer().length;
         }
         for (int i = 0; i < totalPerformance.size(); i++) {
-            Grading shuttle = new Grading(totalPerformance.get(i).getStudentIdentifier(), allAssessments[i]);
-            grading[i] = shuttle;
+            grading.put(totalPerformance.get(i).getStudentIdentifier(), allAssessments[i]);
         }
-        return Arrays.asList(grading);
+        return grading;
     }
 
-    private List<Grading> workRateGrade(ArrayList<Performance> totalPerformance) {
-        double[] allGrades = new double[totalPerformance.size()];
-        Grading[] grading = new Grading[totalPerformance.size()];
+    private Map<StudentIdentifier, Double> workRateGrade(ArrayList<Performance> totalPerformance) {
+        double[] allAssessments = new double[totalPerformance.size()];
+        Map<StudentIdentifier, Double> grading = new HashMap<>();
         for (int i = 0; i < totalPerformance.size(); i++) {
             Map workRating = totalPerformance.get(i).getWorkRating();
             Iterator it = workRating.entrySet().iterator();
@@ -78,17 +82,17 @@ public class PeerAssessment implements IPeerAssessment {
             while (it.hasNext()) {
                 HashMap.Entry pair = (HashMap.Entry) it.next();
                 Double rating = (Double) pair.getValue();
-                allGrades[i] += rating;
+                allAssessments[i] += rating;
                 it.remove(); // avoids a ConcurrentModificationException
                 size++;
             }
-            allGrades[i] = 6 - allGrades[i] / size;
+            allAssessments[i] = 6 - allAssessments[i] / size;
         }
         for (int i = 0; i < totalPerformance.size(); i++) {
-            Grading shuttle = new Grading(totalPerformance.get(i).getStudentIdentifier(), allGrades[i]);
-            grading[i] = shuttle;
+            grading.put(totalPerformance.get(i).getStudentIdentifier(), allAssessments[i]);
+
         }
-        return Arrays.asList(grading);
+        return grading;
     }
 
     private Map<String, Double> meanOfWorkRatings(ArrayList<Map<String, Double>> workRatings) {
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
index 83542ad1054ebd2f4ad015f77348d4ff30e653fa..7ad879368708fe30d9def371edd2f26babc542a9 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/service/PeerAssessmentDummy.java
@@ -75,6 +75,11 @@ public class PeerAssessmentDummy implements IPeerAssessment {
 
     }
 
+    @Override
+    public Map<String, Double> calculateAssessment(String projectId, String method) {
+        return null;
+    }
+
     @Override
     public Assessment getAssessmentDataFromDB(StudentIdentifier student) {
         int[] quizAnswer = {1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1};
@@ -90,21 +95,8 @@ public class PeerAssessmentDummy implements IPeerAssessment {
     }
 
     @Override
-    public List<Grading> calculateAssessment(ArrayList<Performance> totalPerformance) {
-        double[] allAssessments = new double[totalPerformance.size()];
-        Grading[] grading = new Grading[totalPerformance.size()];
-
-        for (int i = 0; i < totalPerformance.size(); i++) {
-            for (int j = totalPerformance.get(i).getQuizAnswer().length; j > 0; j--) {
-                allAssessments[i] += totalPerformance.get(i).getQuizAnswer()[j];
-            }
-            allAssessments[i] = allAssessments[i] / totalPerformance.get(i).getQuizAnswer().length;
-        }
-        for (int i = 0; i < totalPerformance.size(); i++) {
-            Grading shuttle = new Grading(totalPerformance.get(i).getStudentIdentifier(), allAssessments[i]);
-            grading[i] = shuttle;
-        }
-        return Arrays.asList(grading);
+    public Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance) {
+        return null;
     }
 
     @Override
diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
index 32d6278b3263ede80ae10d96e315942cdeb13fd6..abe7f48e6c1d4c4e71b250da574a6db7c266b2ba 100644
--- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
+++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/assessment/controller/view/QuizView.java
@@ -1,11 +1,9 @@
 package unipotsdam.gf.modules.assessment.controller.view;
 
-import sun.misc.Perf;
 import unipotsdam.gf.interfaces.IPeerAssessment;
 import unipotsdam.gf.modules.assessment.QuizAnswer;
 import unipotsdam.gf.modules.assessment.controller.model.*;
 import unipotsdam.gf.modules.assessment.controller.service.PeerAssessment;
-import unipotsdam.gf.modules.assessment.controller.service.PeerAssessmentDummy;
 
 import javax.ws.rs.*;
 import javax.ws.rs.core.MediaType;
@@ -67,7 +65,6 @@ public class QuizView implements IPeerAssessment {
             throw new AssertionError("UTF-8 is unknown");
         }
     }
-    ////////////////////////////funktioniert////////////////////////////////////////////////////////
 
     @POST
     @Produces(MediaType.TEXT_PLAIN)
@@ -107,11 +104,20 @@ public class QuizView implements IPeerAssessment {
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/calculate")
     @Override
-    public List<Grading> calculateAssessment(ArrayList<Performance> totalPerformance) {
+    public Map<StudentIdentifier, Double> calculateAssessment(ArrayList<Performance> totalPerformance) {
         return peer.calculateAssessment(totalPerformance);
     }
     ////////////////////////funktioniert primitiv/////////todo: nicht als jersey zu nutzen///////////////////////////////
 
+    @POST
+    @Consumes(MediaType.APPLICATION_JSON)
+    @Produces(MediaType.APPLICATION_JSON)
+    @Path("/calculate/projectId/{projectId}/cheatChecker/{method}")
+    public Map<String, Double> calculateAssessment(@PathParam("projectId") String projectId, @PathParam("method") String method) {
+        return peer.calculateAssessment(projectId, method);
+    }
+
+
     @GET
     @Produces(MediaType.APPLICATION_JSON)
     @Path("/mean/project/{projectId}")