Skip to content
Snippets Groups Projects
Commit 36b80acb authored by Axel's avatar Axel
Browse files

Peer Assessment Interface by Axel added

parent f5a98180
No related branches found
No related tags found
No related merge requests found
Showing
with 210 additions and 11 deletions
package unipotsdam.gf.interfaces; package unipotsdam.gf.interfaces;
import unipotsdam.gf.modules.assessment.controller.Assessment;
import unipotsdam.gf.modules.assessment.controller.Performance;
import unipotsdam.gf.modules.assessment.controller.StudentIdentifier;
/** /**
* Created by dehne on 18.05.2018. * Created by dehne on 18.05.2018.
*/ */
public interface IPeerAssessment { public interface IPeerAssessment {
void addAssessmentData(Object data); void addAssessmentDataToDB(Assessment assessment); //student and performance are written to DB
void calculateAssessment(String projectId); Assessment getAssessmentDataFromDB(StudentIdentifier student);
Object getAssessmentResults(String projectId, String assessmentIdentifier); boolean permission(int feedbackCount);
void createQuiz(StudentIdentifier student, String question, String[] answers); //writes a new question into the DB
int[] calculateAssessment(Performance[] performanceOfAllStudents); // calculates marks for every performance and writes it to an array
int meanOfAssessement(String ProjectId);
} }
package unipotsdam.gf.modules.assessment.controller;
public class Assessment {
private StudentIdentifier student;
private Performance performance;
public Assessment(StudentIdentifier student, Performance performance) {
this.student = student;
this.performance = performance;
}
public StudentIdentifier getStudent() {
return student;
}
public void setStudent(StudentIdentifier student) {
this.student = student;
}
public Performance getPerformance() {
return performance;
}
public void setPerformance(Performance performance) {
this.performance = performance;
}
@Override
public String toString() {
return "Assessment{" +
"student=" + student +
", performance=" + performance +
'}';
}
}
...@@ -7,13 +7,9 @@ import unipotsdam.gf.interfaces.IPeerAssessment; ...@@ -7,13 +7,9 @@ import unipotsdam.gf.interfaces.IPeerAssessment;
* Created by dehne on 18.05.2018. * Created by dehne on 18.05.2018.
*/ */
public abstract class AssessmentDAO implements IPeerAssessment { public abstract class AssessmentDAO implements IPeerAssessment {
@Override
public void addAssessmentData(Object data) {
// here please write DB access
}
@Override @Override
public Object getAssessmentResults(String projectId, String assessmentIdentifier) { public Assessment getAssessmentDataFromDB(StudentIdentifier student) {
return null; return null;
} }
} }
...@@ -4,8 +4,32 @@ package unipotsdam.gf.modules.assessment.controller; ...@@ -4,8 +4,32 @@ package unipotsdam.gf.modules.assessment.controller;
* Created by dehne on 18.05.2018. * Created by dehne on 18.05.2018.
*/ */
public class FBAssessement extends AssessmentDAO { public class FBAssessement extends AssessmentDAO {
@Override
public void addAssessmentDataToDB(Assessment assessment) {
// write it to db
}
@Override @Override
public void calculateAssessment(String projectId) { public int[] calculateAssessment(Performance[] performanceOfAllStudents){ // calculates marks for every performance and writes it to an array
int[] dummy = new int[4];
dummy[0]=1;
dummy[1]=4;
dummy[2]=3;
dummy[3]=2;
return dummy;
}
public void createQuiz(StudentIdentifier student, String question, String[] answers){ //writes a new question into the DB
} }
public boolean permission(int feedbackCount){
return true;
}
@Override
public int meanOfAssessement(String projectId) {
return 0;
}
} }
package unipotsdam.gf.modules.assessment.controller;
import java.util.Arrays;
public class Performance {
private int[] quizAnswer;
private String feedback;
private int[] workRating;
public Performance(int[] quizAnswer, String feedback, int[] workRating) {
this.quizAnswer = quizAnswer;
this.feedback = feedback;
this.workRating = workRating;
}
public int[] getQuizAnswer() {
return quizAnswer;
}
public void setQuizAnswer(int[] quizAnswer) {
this.quizAnswer = quizAnswer;
}
public String getFeedback() {
return feedback;
}
public void setFeedback(String feedback) {
this.feedback = feedback;
}
public int[] getWorkRating() {
return workRating;
}
public void setWorkRating(int[] workRating) {
this.workRating = workRating;
}
@Override
public String toString() {
return "Performance{" +
"quizAnswer=" + Arrays.toString(quizAnswer) +
", feedback='" + feedback + '\'' +
", workRating=" + Arrays.toString(workRating) +
'}';
}
}
package unipotsdam.gf.modules.assessment.controller;
public class StudentIdentifier {
private String projectId;
private String studentId;
public StudentIdentifier(String projectId, String studentId) {
this.projectId = projectId;
this.studentId = studentId;
}
public String getProjectId() {
return projectId;
}
public void setProjectId(String projectId) {
this.projectId = projectId;
}
public String getStudentId() {
return studentId;
}
public void setStudentId(String studentId) {
this.studentId = studentId;
}
@Override
public String toString() {
return "StudentIdentifier{" +
"projectId='" + projectId + '\'' +
", studentId='" + studentId + '\'' +
'}';
}
}
...@@ -14,8 +14,8 @@ public class MunchkinImpl implements IMunschkin { ...@@ -14,8 +14,8 @@ public class MunchkinImpl implements IMunschkin {
static final String DB_URL = "jdbc:mysql://localhost"; static final String DB_URL = "jdbc:mysql://localhost";
// Database credentials // Database credentials
static final String USER = "root2"; static final String USER = "root";
static final String PASS = "voyager2"; static final String PASS = "";
// Es gibt natürlich auch libraries, die den Datenbankzugriff einfacher gestalten. Ziel soll sein, dass alle // Es gibt natürlich auch libraries, die den Datenbankzugriff einfacher gestalten. Ziel soll sein, dass alle
// die Basics können. Es ist auch sinnvoll, die Datenbankzugriffe in eine eigene Klasse auszulagern!! // die Basics können. Es ist auch sinnvoll, die Datenbankzugriffe in eine eigene Klasse auszulagern!!
......
package unipotsdam.gf.modules.assessment;
import org.junit.Test;
import unipotsdam.gf.interfaces.IPeerAssessment;
import unipotsdam.gf.modules.assessment.controller.Assessment;
import unipotsdam.gf.modules.assessment.controller.FBAssessement;
import unipotsdam.gf.modules.assessment.controller.Performance;
import unipotsdam.gf.modules.assessment.controller.StudentIdentifier;
public class TestAddAssessment {
@Test
public void addTestAssessment() {
IPeerAssessment iPeerAssessment = new FBAssessement();
int [] quizAnswers = new int[5];
quizAnswers[0] = 0;
quizAnswers[1] = 1;
quizAnswers[2] = 0;
quizAnswers[3] = 1;
quizAnswers[4] = 1;
int [] workRating = new int[3];
workRating[0] = 5; //Führungsqualität
workRating[1] = 1; //Pünktlichkeit
workRating[2] = 4; //Hilfsbereitschaft oder so
StudentIdentifier student = new StudentIdentifier("Spaß", "Haralf");
Performance performance = new Performance(quizAnswers,"so ein toller Typ", workRating);
Assessment assessment = new Assessment(student, performance);
iPeerAssessment.addAssessmentDataToDB(assessment);
}
}
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
</web-app>
\ No newline at end of file
<%--
Created by IntelliJ IDEA.
User: fides-WHK
Date: 29.05.2018
Time: 14:12
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
$END$
</body>
</html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment