diff --git a/pom.xml b/pom.xml
index 6035d0d533e8fbf2fb4c5162451d781cb11c4989..680b9ad5b923a384115bb376c477879ec0abd7d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,7 +1,7 @@
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
     <modelVersion>4.0.0</modelVersion>
-    <groupId>Projektarbeit</groupId>
+    <groupId>projekt</groupId>
     <artifactId>enigma</artifactId>
     <version>0.0.1</version>
     <properties>
@@ -9,7 +9,7 @@
         <!--region[useage]-->
         <use.java.version>11</use.java.version>
         <use.javafx.version>11.0.2</use.javafx.version>
-        <use.app.main.class>${project.artifactId}.Main</use.app.main.class>
+        <use.app.main.class>${project.groupId}.${project.artifactId}.Main</use.app.main.class>
         <!--endregion[useage]-->
         <maven.compiler.source>${use.java.version}</maven.compiler.source>
         <maven.compiler.target>${use.java.version}</maven.compiler.target>
diff --git a/src/main/java/enigma/model/Steckbrett.java b/src/main/java/enigma/model/Steckbrett.java
deleted file mode 100644
index 63bf834938258d61db0c6dfa2e555ce1ec2c20e4..0000000000000000000000000000000000000000
--- a/src/main/java/enigma/model/Steckbrett.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package enigma.model;
-
-/**
- *TODO: Dokumentieren
- */
-public class Steckbrett {
-    /**
-     *TODO: Dokumentieren
-     */
-    private int zaehler;
-    private Character[] orginalBuchstaben;
-    private Character[] getauschteBuchstaben;
-
-    /**
-     *TODO: Dokumentieren
-     */
-    public Steckbrett() {
-
-        orginalBuchstaben = new Character[10];
-        getauschteBuchstaben = new Character[10];
-    }
-
-    /**
-     *TODO: Dokumentieren
-     *
-     * @param buchstabe1 : char
-     * @param buchstabe2 : char
-     * @return boolean
-     */
-    public boolean setzeVertauschung(char buchstabe1, char buchstabe2) {
-
-        if (zaehler < orginalBuchstaben.length) {
-            orginalBuchstaben[zaehler] = buchstabe1;
-            getauschteBuchstaben[zaehler++] = buchstabe2;
-        } else {
-            System.err.println("Zu viele Vertauschungen angegeben!");
-        }
-
-        return ueberpruefeVertauschungen();
-    }
-
-    /**
-     *TODO: Dokumentieren
-     *
-     * @return boolean
-     */
-    public boolean ueberpruefeVertauschungen() {
-
-        boolean result = true;
-        for (int n = 0; n < orginalBuchstaben.length; n++) {
-            if (orginalBuchstaben.equals(orginalBuchstaben[n]) || getauschteBuchstaben.equals(orginalBuchstaben[n]) || getauschteBuchstaben.equals(getauschteBuchstaben[n])) {
-                System.err.println("Vertauschungen enthalten unzulässige Dopplungen");
-                result = false;
-            }
-        }
-
-        return result;
-    }
-
-    /**
-     * TODO: Dokumentieren
-     *
-     * @param buchstabe : Character
-     * @return char
-     */
-    public char codiere(Character buchstabe) {
-
-        for (int index = 0; index < getauschteBuchstaben.length; index++) {
-            if (buchstabe.equals(getauschteBuchstaben[index])) {
-                buchstabe = orginalBuchstaben[index];
-            } else if (buchstabe.equals(orginalBuchstaben[index])) {
-                buchstabe = getauschteBuchstaben[index];
-            }
-        }
-
-        return buchstabe;
-    }
-
-}
diff --git a/src/main/java/enigma/App.java b/src/main/java/projekt/enigma/App.java
similarity index 92%
rename from src/main/java/enigma/App.java
rename to src/main/java/projekt/enigma/App.java
index 7dd22d625fcef6bacab70fb7e1223a4777eb1fad..72a9b8a5bb3b6636a3e15044ac516f19eae64eb5 100644
--- a/src/main/java/enigma/App.java
+++ b/src/main/java/projekt/enigma/App.java
@@ -1,13 +1,11 @@
-package enigma;
+package projekt.enigma;
 
-import enigma.model.Codierer;
+import projekt.enigma.model.Codierer;
 import javafx.application.Application;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
 import javafx.scene.Scene;
 import javafx.stage.Stage;
-import org.apache.http.HttpException;
-
 import java.io.IOException;
 
 /**
@@ -62,7 +60,8 @@ public class App extends Application {
 	public void start(Stage stage) throws IOException {
 		scene = new Scene(loadFXML("gui"));
 		stage.setScene(scene);
+		stage.setResizable(true);
 		stage.show();
 	}
 
-}
\ No newline at end of file
+}
diff --git a/src/main/java/enigma/GuiController.java b/src/main/java/projekt/enigma/GuiController.java
similarity index 52%
rename from src/main/java/enigma/GuiController.java
rename to src/main/java/projekt/enigma/GuiController.java
index 377cab1a676058842f497d1ab34eb946f80dac26..75ba07d4d14de0da6fad11001fb7f802cfcecb2f 100644
--- a/src/main/java/enigma/GuiController.java
+++ b/src/main/java/projekt/enigma/GuiController.java
@@ -1,6 +1,6 @@
-package enigma;
+package projekt.enigma;
 
-import enigma.model.Codierer;
+import projekt.enigma.model.Codierer;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.scene.control.*;
@@ -12,9 +12,9 @@ import java.util.ArrayList;
 
 public class GuiController {
 
-	private final static String[] str = {"I", "II", "III", "IV", "V"};
-	private final static String[] num = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26"};
-	private final static String[] bs = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
+	private final static String[] walzenNr = {"I", "II", "III", "IV", "V"};
+	private final static String[] ringNr = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26"};
+	private final static String[] position = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
 	private ArrayList<MenuItem> mItem;
 	private String textEingabe;
 	private String textCodiert;
@@ -124,10 +124,10 @@ public class GuiController {
 	private MenuButton mBtnStartPos2;
 
 	@FXML
-	private TextField tfrein;
+	private TextField tfKlartext;
 
 	@FXML
-	private TextField tfcodiert;
+	private TextField tfCodiert;
 
 	@FXML
 	private MenuButton mBtnNotchPos1;
@@ -327,94 +327,22 @@ public class GuiController {
         resetDisplay = true;
 
 		//Einträge für Walzen
-		menu(mBtnWalzPos1, str);
-		menu(mBtnWalzPos2, str);
-		menu(mBtnWalzPos3, str);
+		menu(mBtnWalzPos1, walzenNr);
+		menu(mBtnWalzPos2, walzenNr);
+		menu(mBtnWalzPos3, walzenNr);
 
 		//Einträge für die Ringe
-		menu(mBtnNotchPos1, num);
-		menu(mBtnNotchPos2, num);
-		menu(mBtnNotchPos3, num);
+		menu(mBtnNotchPos1, ringNr);
+		menu(mBtnNotchPos2, ringNr);
+		menu(mBtnNotchPos3, ringNr);
 
 		//Einträge für die Startpositionen
-		menu(mBtnStartPos1, bs);
-		menu(mBtnStartPos3, bs);
-		menu(mBtnStartPos2, bs);
-
-		assert tfStecker1 != null : "fx:id=\"tfStecker1\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker2 != null : "fx:id=\"tfStecker2\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker3 != null : "fx:id=\"tfStecker3\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker4 != null : "fx:id=\"tfStecker4\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker5 != null : "fx:id=\"tfStecker5\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker6 != null : "fx:id=\"tfStecker6\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker7 != null : "fx:id=\"tfStecker7\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker8 != null : "fx:id=\"tfStecker8\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker9 != null : "fx:id=\"tfStecker9\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfStecker10 != null : "fx:id=\"tfStecker10\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnP != null : "fx:id=\"btnP\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnY != null : "fx:id=\"btnY\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnX != null : "fx:id=\"btnX\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnC != null : "fx:id=\"btnC\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnV != null : "fx:id=\"btnV\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnB != null : "fx:id=\"btnB\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnN != null : "fx:id=\"btnN\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnM != null : "fx:id=\"btnM\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnL != null : "fx:id=\"btnL\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnA != null : "fx:id=\"btnA\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnS != null : "fx:id=\"btnS\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnD != null : "fx:id=\"btnD\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnF != null : "fx:id=\"btnF\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnG != null : "fx:id=\"btnG\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnH != null : "fx:id=\"btnH\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnJ != null : "fx:id=\"btnJ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnK != null : "fx:id=\"btnK\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnQ != null : "fx:id=\"btnQ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnW != null : "fx:id=\"btnW\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnE != null : "fx:id=\"btnE\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnR != null : "fx:id=\"btnR\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnT != null : "fx:id=\"btnT\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnZ != null : "fx:id=\"btnZ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnU != null : "fx:id=\"btnU\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnI != null : "fx:id=\"btnI\" was not injected: check your FXML file 'gui.fxml'.";
-		assert btnO != null : "fx:id=\"btnO\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnWalzPos1 != null : "fx:id=\"mBtnWalzPos1\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnWalzPos3 != null : "fx:id=\"mBtnWalzPos3\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnWalzPos2 != null : "fx:id=\"mBtnWalzPos2\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnNotchPos3 != null : "fx:id=\"mBtnNotchPos3\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnNotchPos2 != null : "fx:id=\"mBtnNotchPos2\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnStartPos1 != null : "fx:id=\"mBtnStartPos1\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnStartPos3 != null : "fx:id=\"mBtnStartPos3\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnStartPos2 != null : "fx:id=\"mBtnStartPos2\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfrein != null : "fx:id=\"tfrein\" was not injected: check your FXML file 'gui.fxml'.";
-		assert tfcodiert != null : "fx:id=\"tfcodiert\" was not injected: check your FXML file 'gui.fxml'.";
-		assert mBtnNotchPos1 != null : "fx:id=\"mBtnNotchPos1\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblQ != null : "fx:id=\"lblQ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblE != null : "fx:id=\"lblE\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblW != null : "fx:id=\"lblW\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblR != null : "fx:id=\"lblR\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblT != null : "fx:id=\"lblT\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblZ != null : "fx:id=\"lblZ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblO != null : "fx:id=\"lblO\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblI != null : "fx:id=\"lblI\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblU != null : "fx:id=\"lblU\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblA != null : "fx:id=\"lblA\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblD != null : "fx:id=\"lblD\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblS != null : "fx:id=\"lblS\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblF != null : "fx:id=\"lblF\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblG != null : "fx:id=\"lblG\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblH != null : "fx:id=\"lblH\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblK != null : "fx:id=\"lblK\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblJ != null : "fx:id=\"lblJ\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblP != null : "fx:id=\"lblP\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblX != null : "fx:id=\"lblX\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblY != null : "fx:id=\"lblY\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblC != null : "fx:id=\"lblC\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblV != null : "fx:id=\"lblV\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblB != null : "fx:id=\"lblB\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblL != null : "fx:id=\"lblL\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblM != null : "fx:id=\"lblM\" was not injected: check your FXML file 'gui.fxml'.";
-		assert lblN != null : "fx:id=\"lblN\" was not injected: check your FXML file 'gui.fxml'.";
+		menu(mBtnStartPos1, position);
+		menu(mBtnStartPos3, position);
+		menu(mBtnStartPos2, position);
 
+
+		//Setze Leucht Event bei Tastendruck
 		leuchten(btnA, circA);
 		leuchten(btnB, circB);
 		leuchten(btnC, circC);
@@ -441,7 +369,6 @@ public class GuiController {
 		leuchten(btnX, circX);
 		leuchten(btnY, circY);
 		leuchten(btnZ, circZ);
-		//TODO: Leuchten und Tasten ordnen
 
 		this.codierer = new Codierer();
         this.codierer.setKenngruppe("enigma");
@@ -453,18 +380,21 @@ public class GuiController {
 	}
 
 	@FXML
-	void löschen() {
-		textEingabe = textEingabe.substring(0, textEingabe.length() - 1);
-		tfrein.setText(textEingabe);
-		//TODO: anpassen, wenn kein Text da ist
+	private void loeschen() {
+		if (textEingabe.length()==0){
+			tfKlartext.setText("");
+		}else {
+			textEingabe = textEingabe.substring(0, textEingabe.length() - 1);
+			tfKlartext.setText(textEingabe);
+		}
 	}
 
 	@FXML
 	void btnempfangen() {
 	    String[] empfangeneNachricht = this.codierer.empfangeNachricht();
 		if (empfangeneNachricht[0] != null) {
-            this.tfrein.setText(empfangeneNachricht[2]);
-            this.tfcodiert.setText(empfangeneNachricht[1]);
+            this.tfKlartext.setText(empfangeneNachricht[2]);
+            this.tfCodiert.setText(empfangeneNachricht[1]);
             this.resetDisplay = true;
 
             mBtnStartPos1.setText(String.valueOf(this.codierer.getWalzen()[0]));
@@ -475,8 +405,8 @@ public class GuiController {
 
 	@FXML
 	void btnsenden() {
-		this.tfrein.setText("");
-		this.tfcodiert.setText("");
+		this.tfKlartext.setText("");
+		this.tfCodiert.setText("");
 
 		try {
 			this.codierer.sendeNachricht();
@@ -493,7 +423,21 @@ public class GuiController {
 	 * @param mi : MenuItem
 	 */
 	private void listener(MenuButton mb, MenuItem mi) {
-		mb.setText(mi.getText());
+		// mb.setText(mi.getText());
+
+		if(mb.getId().equals(mBtnStartPos1.getId()))setzePosition(1,mi.getText().charAt(0));
+		if(mb.getId().equals(mBtnStartPos2.getId()))setzePosition(2,mi.getText().charAt(0));
+		if(mb.getId().equals(mBtnStartPos3.getId()))setzePosition(3,mi.getText().charAt(0));
+		if(mb.getId().equals(mBtnWalzPos1.getId()))setzeWalze(1,mi.getText());
+		if(mb.getId().equals(mBtnWalzPos2.getId()))setzeWalze(2,mi.getText());
+		if(mb.getId().equals(mBtnWalzPos3.getId()))setzeWalze(3,mi.getText());
+		if(mb.getId().equals(mBtnNotchPos1.getId()))
+			setzeRing(1,Integer.parseInt(mi.getText())-1);
+		if(mb.getId().equals(mBtnNotchPos2.getId()))
+			setzeRing(2,Integer.parseInt(mi.getText())-1);
+		if(mb.getId().equals(mBtnNotchPos3.getId()))
+			setzeRing(3,Integer.parseInt(mi.getText())-1);
+
 	}
 
 	/**
@@ -511,9 +455,7 @@ public class GuiController {
 			int finalI = i;
 			//Listener für die einzelnen Einträge
 			ArrayList<MenuItem> finalMi = mItem;
-			mItem.get(i).setOnAction(e -> {
-				listener(button, finalMi.get(finalI));
-			});
+			mItem.get(i).setOnAction(e -> listener(button, finalMi.get(finalI)));
 		}
 	}
 
@@ -562,8 +504,8 @@ public class GuiController {
 	private void setText(Button b) {
 		if (textEingabe.length() < 250) {
 		    if(this.resetDisplay) {
-		        this.tfcodiert.setText("");
-		        this.tfrein.setText("");
+		        this.tfCodiert.setText("");
+		        this.tfKlartext.setText("");
 		        this.resetDisplay = false;
 		        this.codierer.resetHardware();
 		        textCodiert = "";
@@ -574,8 +516,8 @@ public class GuiController {
 		    textEingabe += b.getText();
             textCodiert += this.codierer.codiere(b.getText().charAt(0), true);
 
-			tfrein.setText(textEingabe);
-			tfcodiert.setText(textCodiert);
+			tfKlartext.setText(textEingabe);
+			tfCodiert.setText(textCodiert);
 
 			mBtnStartPos1.setText(String.valueOf(this.codierer.getWalzen()[0]));
             mBtnStartPos2.setText(String.valueOf(this.codierer.getWalzen()[1]));
@@ -585,10 +527,7 @@ public class GuiController {
 
 	private void leuchten(Button taste, Circle leuchte) {
 
-		taste.setOnMousePressed(mouseEvent -> {
-			leuchte.setStyle("-fx-fill: #FFA500");
-
-		});
+		taste.setOnMousePressed(mouseEvent -> leuchte.setStyle("-fx-fill: #FFA500"));
 		taste.setOnMouseReleased(mouseEvent -> {
 			leuchte.setStyle("-fx-background-color: " + taste.getBackground());
 			leuchte.setStyle("-fx-border-color:  #000000");
@@ -599,19 +538,42 @@ public class GuiController {
 	 * Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze
 	 * ->d.h. welche Walze sitzt auf welcher Position
 	 *
-	 * @param walze    => gibt die Walzennummer an (entspricht
-	 * @param position => gibt die Position der Walze (entspricht
+	 * @param walzeRoemischNr    => gibt die Walzennummer an
+	 * @param walzenPosition => gibt die Position der Walze
 	 */
-	public void setzeWalze(int walze, int position) {
-		switch (position) {
+	private void setzeWalze(int walzenPosition, String walzeRoemischNr) {
+		int walzeNr=0;
+		switch (walzeRoemischNr){
+			case "I":
+				walzeNr=1;
+				break;
+			case "II":
+				walzeNr=2;
+				break;
+			case "III":
+				walzeNr=3;
+				break;
+			case "IV":
+				walzeNr=4;
+				break;
+			case "V":
+				walzeNr=5;
+				break;
+			default:
+				break;
+		}
+
+		switch (walzenPosition) {
 			case 1:
-				mBtnWalzPos1.setText(str[position]);
+				mBtnWalzPos1.setText(walzenNr[walzeNr]);
+				//codierer.setWalze(walzeNr, walzenPosition)
 				break;
 			case 2:
-				mBtnWalzPos2.setText(str[position]);
+				mBtnWalzPos2.setText(walzenNr[walzeNr]);
+
 				break;
 			case 3:
-				mBtnWalzPos3.setText(str[position]);
+				mBtnWalzPos3.setText(walzenNr[walzeNr]);
 				break;
 			default:
 				break;
@@ -623,19 +585,19 @@ public class GuiController {
 	 * Mitnahmeposition meint => die nächste Walze wird bei erreichen dieser Position (notch)
 	 * um eine Stelle versetzt
 	 *
-	 * @param walze    => gibt die walze an
-	 * @param position => gibt den notch der Walze (walze) an
+	 * @param ringStellung    => gibt die walze an
+	 * @param walzenPosition => gibt den notch der Walze (walze) an
 	 */
-	public void setzeRing(int walze, int position) {
-		switch (walze) {
+	private void setzeRing(int walzenPosition, int ringStellung) {
+		switch (walzenPosition) {
 			case 1:
-				mBtnNotchPos1.setText(num[position]);
+				mBtnNotchPos1.setText(ringNr[ringStellung]);
 				break;
 			case 2:
-				mBtnNotchPos2.setText(num[position]);
+				mBtnNotchPos2.setText(ringNr[ringStellung]);
 				break;
 			case 3:
-				mBtnNotchPos3.setText(num[position]);
+				mBtnNotchPos3.setText(ringNr[ringStellung]);
 				break;
 			default:
 				break;
@@ -648,7 +610,7 @@ public class GuiController {
 	 * @param walze     => gibt die walze an
 	 * @param buchstabe gibt den Startwert bzw die aktuelle Position der Walze (walze) an
 	 */
-	public void setzePosition(int walze, char buchstabe) {
+	private void setzePosition(int walze, char buchstabe) {
 		switch (walze) {
 			case 1:
 				mBtnStartPos1.setText(String.valueOf(buchstabe));
@@ -667,10 +629,10 @@ public class GuiController {
 	/**
 	 * Setzt den aktuellen TagesSchluessel
 	 *
-	 * @param tagesSchluessel
+	 * @param tagesSchluessel => neuen Tagesschluessel übergeben
 	 */
 	public void setzeTagesSchluessel(String tagesSchluessel) {
-		/**
+		/*
 		 * TODO Benötige TestString aus der DB Codebuch
 		 *
 		 * Den Tagesschlüssel bekommst du wie folgt:
diff --git a/src/main/java/enigma/KenngruppeController.java b/src/main/java/projekt/enigma/KenngruppeController.java
similarity index 88%
rename from src/main/java/enigma/KenngruppeController.java
rename to src/main/java/projekt/enigma/KenngruppeController.java
index a1049e199af8e9f5f698d8a4acb6f8b673fa076c..3371b0f647ea6f27a72082ae0f18a44b79faf489 100644
--- a/src/main/java/enigma/KenngruppeController.java
+++ b/src/main/java/projekt/enigma/KenngruppeController.java
@@ -1,4 +1,4 @@
-package enigma;
+package projekt.enigma;
 
 import java.io.IOException;
 import javafx.fxml.FXML;
diff --git a/src/main/java/enigma/Main.java b/src/main/java/projekt/enigma/Main.java
similarity index 86%
rename from src/main/java/enigma/Main.java
rename to src/main/java/projekt/enigma/Main.java
index 22bb0df9e78ca242102994c499a059a629b4c57a..f016016d5dd3ebc14cae30918487a14eec35ac8e 100644
--- a/src/main/java/enigma/Main.java
+++ b/src/main/java/projekt/enigma/Main.java
@@ -1,4 +1,4 @@
-package enigma;
+package projekt.enigma;
 
 
 import java.sql.SQLException;
diff --git a/src/main/java/enigma/database/DatenbankSqlite.java b/src/main/java/projekt/enigma/database/DatenbankSqlite.java
similarity index 95%
rename from src/main/java/enigma/database/DatenbankSqlite.java
rename to src/main/java/projekt/enigma/database/DatenbankSqlite.java
index 00e88ea8e5293d287074570f9f020d161fea6c76..401af573f4c4c30bd1e8e04c18ca79f647348cb0 100644
--- a/src/main/java/enigma/database/DatenbankSqlite.java
+++ b/src/main/java/projekt/enigma/database/DatenbankSqlite.java
@@ -1,4 +1,4 @@
-package enigma.database;
+package projekt.enigma.database;
 
 import java.sql.*;
 
@@ -40,11 +40,16 @@ public class DatenbankSqlite {
 	 * Anschließend wir eine Verbindung zur SQLite Datenbank aufgebaut und das Codebuch angefragt.
 	 * Dieses wird in ein Object vom Type Codebuch gepackt und zurück gegeben.
 	 *
-	 * TODO: Es wird kein Codebuch Objekt mehr erzeugt sondern ein String[] zurück gegeben
 	 * Hole den heutigen Eintrag aus der SQLite Datenbank und erstelle daraus ein Codebuch Objekt
 	 *
 	 * @param tag : int : Tag für welchen ein Codebuch benötigt wird.
-	 * @return Codebuch : Codebuch Object mit dem Codebuch des angefragten Tages
+	 * @return String : Die Einstellungen des angefragten Tages
+	 * <p>
+	 *     String[0] : Tag
+	 *     String[1] : Walzenlage
+	 *     String[2] : Ringstellung
+	 *     String[3] : Steckverbindung
+	 * </p>
 	 */
 	public String[] getCodebuch(int tag) {
 
diff --git a/src/main/java/enigma/model/Codebuch.java b/src/main/java/projekt/enigma/model/Codebuch.java
similarity index 97%
rename from src/main/java/enigma/model/Codebuch.java
rename to src/main/java/projekt/enigma/model/Codebuch.java
index 115ed442dfbebc191cbe532998cfa47833987acf..aacb58c97a1dfad19a89cd97cb8fe963aecf5371 100644
--- a/src/main/java/enigma/model/Codebuch.java
+++ b/src/main/java/projekt/enigma/model/Codebuch.java
@@ -1,6 +1,6 @@
-package enigma.model;
+package projekt.enigma.model;
 
-import enigma.database.DatenbankSqlite;
+import projekt.enigma.database.DatenbankSqlite;
 
 import java.time.LocalDate;
 import java.time.ZoneId;
@@ -55,7 +55,7 @@ public class Codebuch {
 	 * TODO: Dokumentieren
 	 * @param tag
 	 */
-	public void getTagesschluessel(int... tag) {
+	public void fetchTagesschluessel(int... tag) {
 		String[] walzenlage, ringstellung, db;
 
 		if(tag.length > 0) {
diff --git a/src/main/java/enigma/model/Codierer.java b/src/main/java/projekt/enigma/model/Codierer.java
similarity index 90%
rename from src/main/java/enigma/model/Codierer.java
rename to src/main/java/projekt/enigma/model/Codierer.java
index 8b1ff3bb4ba9a89def61d34a21be45df40f9d748..bf095d794970221c3d89fb3e452823807ca645a0 100644
--- a/src/main/java/enigma/model/Codierer.java
+++ b/src/main/java/projekt/enigma/model/Codierer.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.apache.http.HttpException;
 
@@ -31,7 +31,7 @@ public class Codierer {
 		this.kenngruppe = "";
 		this.kenngruppeCodiert = "";
 		this.codebuch = new Codebuch();
-		this.codebuch.getTagesschluessel();
+		this.codebuch.fetchTagesschluessel();
 	}
 
 	/**
@@ -290,7 +290,7 @@ public class Codierer {
 
 		// Hardware reseten und Tageseinstellungen aus dem Codebuch laden
 		this.initialisiereHardware();
-		this.codebuch.getTagesschluessel(tag);
+		this.codebuch.fetchTagesschluessel(tag);
 
 		String[] nachricht = codierteNachricht.split(" ");
 		StringBuilder sb = new StringBuilder();
@@ -339,8 +339,47 @@ public class Codierer {
 	 * TODO: Dokumentieren
 	 */
 	public void resetHardware() {
-
 		this.initialisiereHardware();
 	}
 
+	/**
+	 * TODO: Dokumentieren
+	 *
+	 * @param walzenPosition
+	 * @param position
+	 */
+	public void setWalze(int walzenPosition, char position) {
+		this.hardware.setzePosition(walzenPosition, position);
+	}
+
+	/**
+	 * TODO: Dokumentieren
+	 *
+	 * @param walzenPosition
+	 * @param position
+	 */
+	public void setRing(int walzenPosition, int position) {
+		this.hardware.setzeRing(walzenPosition, position);
+	}
+
+	/**
+	 * TODO: Dokumentieren
+	 *
+	 * @param walzenPosition
+	 * @param walzeNr
+	 */
+	public void setWalzeNr(int walzenPosition, int walzeNr) {
+		this.hardware.setzeWalzenNr(walzenPosition, walzeNr, 1);
+	}
+
+	/**
+	 * TODO: Dokumentieren
+	 *
+	 * @param feldNr
+	 * @param verbindung
+	 */
+	public void setSteckbrett(int feldNr, String verbindung) {
+		this.hardware.getSteckbrett().setzeVertauschung(verbindung.charAt(0), verbindung.charAt(1));
+	}
+
 }
diff --git a/src/main/java/enigma/model/Funkraum.java b/src/main/java/projekt/enigma/model/Funkraum.java
similarity index 99%
rename from src/main/java/enigma/model/Funkraum.java
rename to src/main/java/projekt/enigma/model/Funkraum.java
index d3fe2883fd86fb468ce832cfd64cf460176b6a99..96a3a35b3fa9391afad8d5193ff4923bb368c391 100644
--- a/src/main/java/enigma/model/Funkraum.java
+++ b/src/main/java/projekt/enigma/model/Funkraum.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpException;
diff --git a/src/main/java/enigma/model/Hardware.java b/src/main/java/projekt/enigma/model/Hardware.java
similarity index 99%
rename from src/main/java/enigma/model/Hardware.java
rename to src/main/java/projekt/enigma/model/Hardware.java
index 1842e1e6725e2cf6c1aa669db1a9e85ac6b6d818..b37ddd166c98d2274e0722e401418c81d354bc16 100644
--- a/src/main/java/enigma/model/Hardware.java
+++ b/src/main/java/projekt/enigma/model/Hardware.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 /**
  * In dieser Klasse wird die Hardware zusammen gefasst.
diff --git a/src/main/java/enigma/model/Morsecode.java b/src/main/java/projekt/enigma/model/Morsecode.java
similarity index 99%
rename from src/main/java/enigma/model/Morsecode.java
rename to src/main/java/projekt/enigma/model/Morsecode.java
index 01df55dcd0c655202208e050cf11cb4d75af4971..7d99652547325b95631bb82dc8216ff4bdf5bc25 100644
--- a/src/main/java/enigma/model/Morsecode.java
+++ b/src/main/java/projekt/enigma/model/Morsecode.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import java.util.*;
 import java.util.Map.Entry;
diff --git a/src/main/java/enigma/model/Reflektor.java b/src/main/java/projekt/enigma/model/Reflektor.java
similarity index 63%
rename from src/main/java/enigma/model/Reflektor.java
rename to src/main/java/projekt/enigma/model/Reflektor.java
index 4aabb1b6841b475125ee7fd8c5df1feb0a158f86..9e5e6b1424852c8ee063179f8a8d216aac9c969a 100644
--- a/src/main/java/enigma/model/Reflektor.java
+++ b/src/main/java/projekt/enigma/model/Reflektor.java
@@ -1,43 +1,41 @@
-package enigma.model;
+package projekt.enigma.model;
 
 /**
  * Klasse Reflektor
- * <p>
+ * <br>
  * Der Reflektor nimmt einen Buchstaben der Klasse Walze entgegen und und kodiert diesen.
  * Der kodierte Buchstabe wird an die Klasse Walze wieder zurückgegeben.
- * <p>
- * Prinzipiell verhält sich die Klasse Refelktor wie die Klasse Walze, außer das sie sich
- * nach Betätigung einer Taste nicht dreht (starr montiert) und sie gibt keine Signale
+ * <br>
+ * Prinzipiell verhält sich die Klasse Reflektor wie die Klasse Walze, außer das sie sich
+ * nach Betätigung einer Taste nicht dreht (quasi starr montiert ist) und sie gibt keine Signale
  * an andere Walzen zum drehen.
  */
 public class Reflektor {
 
     /**
-     * Konstanten und Variablen der Klasse Reflektor
-     * <p>
      * WALZE_ALPHABET : konstanter Char-Array mit den Werten des Alphabeths (26 Werte)
-     * WALZE_REFLEKTOR : konstanter Char-Array mit den Werten des Reflektors (26 Werte)
-     * reflektorBuchstabeRein : Character mit dem an die Klasse übergebenen Character
-     * reflektorBuchstabeRaus : Character nach der Codierung in der Klasse Reflektor
-     * iPositionReflektor : Integer mit der Positionsnummer des Characters im Array
      */
     private final Character[] WALZE_ALPHABET = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
+
+    /**
+     * WALZE_REFLEKTOR : konstanter Char-Array mit den Werten des Reflektors (26 Werte)
+     */
     private final Character[] WALZE_REFLEKTOR = {'E', 'J', 'M', 'Z', 'A', 'L', 'Y', 'X', 'V', 'B', 'W', 'F', 'C', 'R', 'Q', 'U', 'O', 'N', 'T', 'S', 'P', 'I', 'K', 'H', 'G', 'D'};
 
 
     /**
-     * Funktion Codiere
-     * <p>
+     * Funktion codiere
+     * <br>
      * Durchsucht das konstante Char-Array WALZE_ALPHABET nach der Position eines bestimmten
      * Buchstabens und gibt den Character an der entsprechenden Position im konstanten
      * Char-Array WALZE_REFLEKTOR zurück.
      *
-     * @return reflektorBuchstabeRaus: Character: Der kodierte Buchstabe aus dem Reflektor
+     * @return WALZE_REFLEKTOR[iPositionReflektor]: Character: Der kodierte Buchstabe aus dem Reflektor
      */
     public char codiere(Character buchstabe) {
         int iPositionReflektor = 0;
 
-        /*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
+        //Ermittelt die Position des Buchstaben "buchstabe" auf der Alphabetswalze
         for (int index = 0; index < WALZE_ALPHABET.length; index++) {
             if (buchstabe.equals(WALZE_ALPHABET[index])) {
                 iPositionReflektor = index;
@@ -45,8 +43,6 @@ public class Reflektor {
             }
         }
 
-        /*Im Char-Array WALZE_REFLEKTOR wird der Character an der Position iPositionReflektor ausgegeben*/
         return WALZE_REFLEKTOR[iPositionReflektor];
     }
-
 }
diff --git a/src/main/java/projekt/enigma/model/Steckbrett.java b/src/main/java/projekt/enigma/model/Steckbrett.java
new file mode 100644
index 0000000000000000000000000000000000000000..b0ad4f4cb212d07e6bc2398ac5275142bbe8d756
--- /dev/null
+++ b/src/main/java/projekt/enigma/model/Steckbrett.java
@@ -0,0 +1,116 @@
+package projekt.enigma.model;
+
+/**
+ * Klasse Steckbrett
+ * <br>
+ * Das Steckbrett diente dazu Buchstaben paarweise zu vertauschen noch bevor diese durch die Walzen codiert werden.
+ * Die Klasse Steckbrett nimmt bis zu 10 paarweise zu vertauschende Buchstabenpaare entgegen, prueft diese auf
+ * Zulaessigkeit und tauscht diese dann paarweise aus.
+ */
+public class Steckbrett {
+
+    /**
+     * zaehler: Int, der als Laufvariable genutzt wird
+     */
+    private int zaehler;
+
+    /**
+     * orginalBuchstaben: Character-Array, der jeweils den ersten zu vertauschenden Buchstaben enthält
+     */
+    private Character[] orginalBuchstaben;
+
+    /**
+     * getauschteBuchstaben: Character-Array, der jeweils den zweiten zu vertauschenden Buchstaben enthält
+     */
+    private Character[] getauschteBuchstaben;
+
+
+    /**
+     * Konstruktor Steckbrett
+     * <br>
+     * Erzeugt zwei Charakter-Arrays (orginalBuchstaben und getauschteBuchstaben) der Länge 10.
+     */
+    public Steckbrett() {
+
+        orginalBuchstaben = new Character[10];
+        getauschteBuchstaben = new Character[10];
+    }
+
+    /**
+     * TODO: Fehlerfall kommentieren, bzw. Exceptions werfen ?????
+     * TODO: Überprüfe Vertauschungen für jeden Buchstaben aufrufen
+     * Funktion setzeVertauschung
+     * <br>
+     * Der Funktion setzeVertauschung werden 2 Buchstaben (buchstabe1 und buchstabe2) übergeben.
+     * buchstabe1 wird in das Character-Array orginalBuchstaben geschrieben.
+     * buchstabe2 wird in das Character-Array getauschteBuchstaben geschrieben.
+     * Anschließend wird die Funktion ueberpruefeVertauschungen aufgerufen.
+     *
+     * @param buchstabe1 : char: Gibt den ersten Buchstaben an, der getauscht werden soll.
+     * @param buchstabe2 : char: gibt den zweiten Buchstaben an, mit dem der erste getauscht werden soll.
+     * @return ueberpruefeVertauschungen(): Ueberprueft ob die Vertauschungen zulaessig sind.
+     */
+    public boolean setzeVertauschung(char buchstabe1, char buchstabe2) {
+        if (zaehler < orginalBuchstaben.length) {
+            orginalBuchstaben[zaehler] = buchstabe1;
+            getauschteBuchstaben[zaehler++] = buchstabe2;
+        } else {
+            System.err.println("Zu viele Vertauschungen angegeben!");
+        }
+
+        return ueberpruefeVertauschungen();
+    }
+
+    /**
+     * TODO: Fehlerfall kommentieren, bzw. Exceptions werfen ?????
+     * TODO: Buchstabe zum überpüfen übergeben
+     * Funktion ueberpruefeVertauschungen
+     * <br>
+     * Die Funktion ueberpruefeVertauschungen prueft ob die Buchstabenvertauschung zulaessig ist.
+     * Eine Buchstabenvertauschung ist zulaessig, wenn keine Dopplungen der zu vertauschenden Buchstaben auftritt
+     * (ein Buchstabe nicht mehrmals vertauscht wird).
+     *
+     * @return boolean : result : Flag, der die Zulassigkeit der Vertauschungen zurueckgibt.
+     */
+    public boolean ueberpruefeVertauschungen() {
+        boolean result = true;
+
+        /*Es wird geprüft:
+        1. Ob im Array originalBuchstaben Dopplungen enthalten sind.
+        2. Ob im Array originalBuchstaben Buchstaben im Array getauschteBuchstaben enthalten sind.
+        3. Ob im Array getauschteBuchstaben Dopplungen enthalten sind.
+        Tritt einer der Fälle ein, erfolgt eine Konsolenausgabe und der Flag wird auf false gesetzt.
+         */
+        for (int n = 0; n < orginalBuchstaben.length; n++) {
+            if (orginalBuchstaben.equals(orginalBuchstaben[n]) ||
+                    getauschteBuchstaben.equals(orginalBuchstaben[n]) ||
+                    getauschteBuchstaben.equals(getauschteBuchstaben[n])) {
+                System.err.println("Vertauschungen enthalten unzulässige Dopplungen");
+                result = false;
+            }
+        }
+
+        return result;
+    }
+
+    /**
+     * Funktion codiere
+     * <br>
+     * Die Funktion codiere tauscht den uebergebenen Character buchstabe mit dem zu tauschenden Character aus.
+     *
+     * @param buchstabe : Character : Buchstabe der codiert werden soll.
+     * @return buchstabe : Character : Codierter Buchstabe.
+     */
+    public char codiere(Character buchstabe) {
+        for (int index = 0; index < getauschteBuchstaben.length; index++) {
+            if (buchstabe.equals(getauschteBuchstaben[index])) {
+                buchstabe = orginalBuchstaben[index];
+            } else if (buchstabe.equals(orginalBuchstaben[index])) {
+                buchstabe = getauschteBuchstaben[index];
+            }
+        }
+
+        return buchstabe;
+    }
+
+}
diff --git a/src/main/java/enigma/model/Walze.java b/src/main/java/projekt/enigma/model/Walze.java
similarity index 99%
rename from src/main/java/enigma/model/Walze.java
rename to src/main/java/projekt/enigma/model/Walze.java
index a89b6343be57445648812dd3012a5d51a615eac4..e9d0203678a932652ce02f2163875c7cc02e13b6 100644
--- a/src/main/java/enigma/model/Walze.java
+++ b/src/main/java/projekt/enigma/model/Walze.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 /**
  * Klasse Walze
diff --git a/src/main/resources/enigma/codebuch.sqlite b/src/main/resources/projekt/enigma/codebuch.sqlite
similarity index 100%
rename from src/main/resources/enigma/codebuch.sqlite
rename to src/main/resources/projekt/enigma/codebuch.sqlite
diff --git a/src/main/resources/enigma/gui.fxml b/src/main/resources/projekt/enigma/gui.fxml
similarity index 85%
rename from src/main/resources/enigma/gui.fxml
rename to src/main/resources/projekt/enigma/gui.fxml
index fd53164696f02194c47cfb1e309dfffe3514b57e..6e7793b2ec24cf48079c1078ed642c50ce5aa9cb 100644
--- a/src/main/resources/enigma/gui.fxml
+++ b/src/main/resources/projekt/enigma/gui.fxml
@@ -8,7 +8,7 @@
 <?import javafx.scene.shape.Circle?>
 <?import javafx.scene.text.Font?>
 
-<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="677.0" prefWidth="967.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="enigma.GuiController">
+<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="677.0" prefWidth="967.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="projekt.enigma.GuiController">
    <children>
       <Circle fx:id="circQ" fill="#f0f3f5" layoutX="127.0" layoutY="309.0" radius="22.0" stroke="BLACK" strokeType="INSIDE" />
       <Circle fx:id="circE" fill="#f0f3f5" layoutX="315.0" layoutY="309.0" radius="22.0" stroke="BLACK" strokeType="INSIDE" />
@@ -36,21 +36,25 @@
       <Circle fx:id="circM" fill="#f0f3f5" layoutX="703.0" layoutY="416.0" radius="22.0" stroke="BLACK" strokeType="INSIDE" />
       <Circle fx:id="circL" fill="#f0f3f5" layoutX="798.0" layoutY="416.0" radius="22.0" stroke="BLACK" strokeType="INSIDE" />
       <Circle fx:id="circW" fill="#f0f3f5" layoutX="221.0" layoutY="309.0" radius="22.0" stroke="BLACK" strokeType="INSIDE" />
-      <TextField fx:id="tfStecker1" layoutX="104.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="104.0" />
-      <TextField fx:id="tfStecker2" layoutX="184.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="184.0" />
-      <TextField fx:id="tfStecker3" layoutX="263.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="263.0" />
-      <TextField fx:id="tfStecker4" layoutX="343.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="343.0" />
-      <TextField fx:id="tfStecker5" layoutX="416.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="416.0" />
-      <TextField fx:id="tfStecker6" layoutX="496.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="496.0" />
-      <TextField fx:id="tfStecker7" layoutX="576.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="576.0" />
-      <TextField fx:id="tfStecker8" layoutX="656.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="656.0" />
-      <TextField fx:id="tfStecker9" layoutX="736.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="736.0" />
-      <TextField fx:id="tfStecker10" layoutX="816.0" layoutY="631.0" prefHeight="25.0" prefWidth="48.0" AnchorPane.bottomAnchor="20.0" AnchorPane.leftAnchor="816.0" AnchorPane.rightAnchor="103.0" />
-      <MenuButton fx:id="mBtnWalzPos1" alignment="CENTER_RIGHT" contentDisplay="CENTER" layoutX="91.0" layoutY="76.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I" AnchorPane.leftAnchor="90.0" AnchorPane.topAnchor="80.0">
+      <AnchorPane layoutX="109.0" layoutY="631.0" prefHeight="25.0" prefWidth="787.0">
+         <children>
+            <TextField fx:id="tfStecker1" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker2" layoutX="80.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker3" layoutX="159.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker4" layoutX="239.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker5" layoutX="312.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker6" layoutX="392.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker7" layoutX="472.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker8" layoutX="552.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker9" layoutX="632.0" prefHeight="25.0" prefWidth="48.0" />
+            <TextField fx:id="tfStecker10" layoutX="712.0" prefHeight="25.0" prefWidth="48.0" />
+         </children>
+      </AnchorPane>
+      <MenuButton fx:id="mBtnWalzPos1" alignment="CENTER_RIGHT" contentDisplay="CENTER" layoutX="91.0" layoutY="76.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I">
       </MenuButton>
-      <MenuButton fx:id="mBtnWalzPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="80.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I" textAlignment="CENTER" AnchorPane.leftAnchor="210.0" AnchorPane.topAnchor="80.0">
+      <MenuButton fx:id="mBtnWalzPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="80.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I" textAlignment="CENTER">
       </MenuButton>
-      <MenuButton fx:id="mBtnWalzPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="80.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I" textAlignment="CENTER" AnchorPane.leftAnchor="150.0" AnchorPane.topAnchor="80.0">
+      <MenuButton fx:id="mBtnWalzPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="80.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="I" textAlignment="CENTER">
       </MenuButton>
 <!--      <MenuButton layoutX="93.0" layoutY="114.0" mnemonicParsing="false">-->
 <!--         <items>-->
@@ -82,25 +86,25 @@
 <!--            <MenuItem mnemonicParsing="false" onAction="#z26" text="26" />-->
 <!--         </items>-->
 <!--      </MenuButton>-->
-      <MenuButton fx:id="mBtnNotchPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="120.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER" AnchorPane.leftAnchor="210.0" AnchorPane.topAnchor="120.0">
+      <MenuButton fx:id="mBtnNotchPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="120.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER">
       </MenuButton>
-      <MenuButton fx:id="mBtnNotchPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="120.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER" AnchorPane.leftAnchor="150.0" AnchorPane.topAnchor="120.0">
+      <MenuButton fx:id="mBtnNotchPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="120.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER">
       </MenuButton>
-      <MenuButton fx:id="mBtnStartPos1" alignment="CENTER_RIGHT" layoutX="95.0" layoutY="157.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER" AnchorPane.leftAnchor="90.0" AnchorPane.topAnchor="160.0">
+      <MenuButton fx:id="mBtnStartPos1" alignment="CENTER_RIGHT" layoutX="95.0" layoutY="157.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER">
       </MenuButton>
-      <MenuButton fx:id="mBtnStartPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="160.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER" AnchorPane.leftAnchor="210.0" AnchorPane.topAnchor="160.0">
+      <MenuButton fx:id="mBtnStartPos3" alignment="CENTER_RIGHT" layoutX="208.0" layoutY="160.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER">
       </MenuButton>
-      <MenuButton fx:id="mBtnStartPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="160.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER" AnchorPane.leftAnchor="150.0" AnchorPane.topAnchor="160.0">
+      <MenuButton fx:id="mBtnStartPos2" alignment="CENTER_RIGHT" layoutX="152.0" layoutY="160.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="A" textAlignment="CENTER">
       </MenuButton>
-      <TextField fx:id="tfrein" editable="false" layoutX="280.0" layoutY="54.0" prefHeight="77.0" prefWidth="410.0" />
-      <TextField fx:id="tfcodiert" editable="false" layoutX="280.0" layoutY="149.0" prefHeight="77.0" prefWidth="410.0" />
-      <Button layoutX="726.0" layoutY="153.0" mnemonicParsing="false" onAction="#btnsenden" prefHeight="69.0" prefWidth="164.0" text="An Funker senden" AnchorPane.rightAnchor="77.0" />
-      <Button layoutX="726.0" layoutY="58.0" mnemonicParsing="false" onAction="#btnempfangen" prefHeight="69.0" prefWidth="164.0" text="Funkspruch empfangen" AnchorPane.rightAnchor="77.0" />
-      <MenuButton fx:id="mBtnNotchPos1" alignment="CENTER_RIGHT" layoutX="93.0" layoutY="114.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER" AnchorPane.leftAnchor="90.0" AnchorPane.topAnchor="120.0" />
-      <Label layoutX="29.0" layoutY="80.0" text="Walze" AnchorPane.leftAnchor="20.0" AnchorPane.topAnchor="84.0" />
-      <Label layoutX="29.0" layoutY="127.0" text="Ringe" AnchorPane.leftAnchor="20.0" AnchorPane.topAnchor="124.0" />
-      <Label layoutX="17.0" layoutY="164.0" text="Startposition" AnchorPane.leftAnchor="17.0" AnchorPane.topAnchor="164.0" />
-      <Label layoutX="380.0" layoutY="27.0" prefHeight="17.0" prefWidth="172.0" text="Tageseinstellungen" />
+      <TextField fx:id="tfKlartext" editable="false" layoutX="280.0" layoutY="54.0" prefHeight="77.0" prefWidth="410.0" AnchorPane.bottomAnchor="546.0" AnchorPane.leftAnchor="280.0" AnchorPane.rightAnchor="277.0" AnchorPane.topAnchor="54.0" />
+      <TextField fx:id="tfCodiert" editable="false" layoutX="280.0" layoutY="149.0" prefHeight="77.0" prefWidth="410.0" AnchorPane.bottomAnchor="451.0" AnchorPane.leftAnchor="280.0" AnchorPane.rightAnchor="277.0" AnchorPane.topAnchor="149.0" />
+      <Button layoutX="730.0" layoutY="58.0" mnemonicParsing="false" onAction="#btnsenden" prefHeight="69.0" prefWidth="164.0" text="An Funker senden" AnchorPane.topAnchor="58.0" />
+      <Button layoutX="730.0" layoutY="153.0" mnemonicParsing="false" onAction="#btnempfangen" prefHeight="69.0" prefWidth="164.0" text="Funkspruch empfangen" />
+      <MenuButton fx:id="mBtnNotchPos1" alignment="CENTER_RIGHT" layoutX="93.0" layoutY="114.0" mnemonicParsing="false" prefHeight="25.0" prefWidth="48.0" text="1" textAlignment="CENTER" />
+      <Label layoutX="29.0" layoutY="80.0" text="Walze" />
+      <Label layoutX="29.0" layoutY="127.0" text="Ringe" />
+      <Label layoutX="17.0" layoutY="164.0" text="Startposition" />
+      <Label layoutX="68.0" layoutY="226.0" prefHeight="17.0" prefWidth="172.0" text="Spruchschlüssel" />
       <Label fx:id="lblE" alignment="CENTER" layoutX="300.0" layoutY="292.0" prefHeight="30.0" prefWidth="30.0" text="E" textAlignment="CENTER" AnchorPane.bottomAnchor="351.0">
          <font>
             <Font size="23.0" />
@@ -126,7 +130,7 @@
             <Font size="23.0" />
          </font>
       </Label>
-      <Label fx:id="lblO" alignment="CENTER" layoutX="801.0" layoutY="292.0" prefHeight="30.0" prefWidth="30.0" text="O" textAlignment="CENTER" AnchorPane.bottomAnchor="351.0" AnchorPane.rightAnchor="136.0">
+      <Label fx:id="lblO" alignment="CENTER" layoutX="801.0" layoutY="292.0" prefHeight="30.0" prefWidth="30.0" text="O" textAlignment="CENTER" AnchorPane.bottomAnchor="351.0">
          <font>
             <Font size="23.0" />
          </font>
@@ -171,7 +175,7 @@
             <Font size="23.0" />
          </font>
       </Label>
-      <Label fx:id="lblK" alignment="CENTER" layoutX="748.0" layoutY="346.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="K" AnchorPane.bottomAnchor="301.0" AnchorPane.rightAnchor="189.0">
+      <Label fx:id="lblK" alignment="CENTER" layoutX="748.0" layoutY="346.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="K" AnchorPane.bottomAnchor="301.0">
          <font>
             <Font size="23.0" />
          </font>
@@ -181,7 +185,7 @@
             <Font size="23.0" />
          </font>
       </Label>
-      <Label fx:id="lblP" alignment="CENTER" layoutX="97.0" layoutY="401.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="P" AnchorPane.bottomAnchor="246.0" AnchorPane.leftAnchor="97.0">
+      <Label fx:id="lblP" alignment="CENTER" layoutX="97.0" layoutY="401.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="P" AnchorPane.bottomAnchor="246.0">
          <font>
             <Font size="23.0" />
          </font>
@@ -211,7 +215,7 @@
             <Font size="23.0" />
          </font>
       </Label>
-      <Label fx:id="lblL" alignment="CENTER" layoutX="782.0" layoutY="401.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="L" AnchorPane.bottomAnchor="246.0" AnchorPane.rightAnchor="155.0">
+      <Label fx:id="lblL" alignment="CENTER" layoutX="782.0" layoutY="401.0" minHeight="0.0" prefHeight="30.0" prefWidth="30.0" text="L" AnchorPane.bottomAnchor="246.0">
          <font>
             <Font size="23.0" />
          </font>
@@ -365,5 +369,6 @@
             <Font name="System Bold" size="18.0" />
          </font>
       </Button>
+      <Label layoutX="68.0" layoutY="205.0" prefHeight="17.0" prefWidth="172.0" text="Tagesschlüssel" />
    </children>
 </AnchorPane>
diff --git a/src/main/resources/enigma/kenngruppe.fxml b/src/main/resources/projekt/enigma/kenngruppe.fxml
similarity index 61%
rename from src/main/resources/enigma/kenngruppe.fxml
rename to src/main/resources/projekt/enigma/kenngruppe.fxml
index 1f56acace75752e4df64dc9ae1d65140bab3b349..9fdf84fcf078371cdbd282413287ab8a60150aed 100644
--- a/src/main/resources/enigma/kenngruppe.fxml
+++ b/src/main/resources/projekt/enigma/kenngruppe.fxml
@@ -4,12 +4,17 @@
 <?import javafx.scene.control.Label?>
 <?import javafx.scene.control.TextField?>
 <?import javafx.scene.layout.AnchorPane?>
+<?import javafx.scene.layout.Pane?>
 
-
-<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="257.0" prefWidth="300.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="enigma.KenngruppeController">
+<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="257.0" prefWidth="300.0" xmlns="http://javafx.com/javafx/8.0.171" xmlns:fx="http://javafx.com/fxml/1" fx:controller="projekt.enigma.KenngruppeController">
    <children>
-      <Label layoutX="81.0" layoutY="29.0" text="Bitte Kenngruppe eingeben!" AnchorPane.leftAnchor="70.0" AnchorPane.rightAnchor="70.0" AnchorPane.topAnchor="30.0" />
-      <Button fx:id="secondaryButton" layoutX="72.0" layoutY="178.0" onAction="#switchToPrimary" text="Kenngruppe bestätigen!" AnchorPane.leftAnchor="70.0" AnchorPane.rightAnchor="70.0" AnchorPane.topAnchor="170.0" />
-      <TextField layoutX="81.0" layoutY="84.0" AnchorPane.leftAnchor="70.0" AnchorPane.rightAnchor="70.0" AnchorPane.topAnchor="100.0" />
+      <Label layoutX="81.0" layoutY="29.0" text="Bitte Kenngruppe eingeben!" />
+      <Button fx:id="secondaryButton" layoutX="72.0" layoutY="178.0" onAction="#switchToPrimary" text="Kenngruppe bestätigen!" />
+      <Pane layoutX="14.0" layoutY="100.0" prefHeight="25.0" prefWidth="234.0">
+         <children>
+            <TextField prefHeight="25.0" prefWidth="71.0" />
+            <TextField layoutX="126.0" prefHeight="25.0" prefWidth="108.0" />
+         </children>
+      </Pane>
    </children>
 </AnchorPane>
diff --git a/src/test/java/enigma/model/CodebuchTest.java b/src/test/java/projekt/enigma/model/CodebuchTest.java
similarity index 56%
rename from src/test/java/enigma/model/CodebuchTest.java
rename to src/test/java/projekt/enigma/model/CodebuchTest.java
index 5dd7d2ed0157a2ce26dbea07d991b90065608785..ce7da24a9153fcda79ae1811ac3759e58327a21a 100644
--- a/src/test/java/enigma/model/CodebuchTest.java
+++ b/src/test/java/projekt/enigma/model/CodebuchTest.java
@@ -1,9 +1,7 @@
-package enigma.model;
+package projekt.enigma.model;
 
-import enigma.database.DatenbankSqlite;
 import org.junit.Assert;
 import org.junit.Test;
-import java.sql.SQLException;
 
 public class CodebuchTest {
 
@@ -14,13 +12,11 @@ public class CodebuchTest {
 				"Ringstellung: 16,11,13\n" +
 				"Steckverbindung: E:U,O:H,T:Z,A:S,M:R,I:V,C:G,F:Q,B:X,Y:K\n";
 
-		try {
-			// Ausgabe auf der Konsole
-			String result = new DatenbankSqlite().getCodebuch(1).toString();
-			Assert.assertEquals(result, expected, result);
-		} catch (SQLException e) {
-			e.printStackTrace();
-		}
+		// Ausgabe auf der Konsole
+		Codebuch cb = new Codebuch();
+		cb.fetchTagesschluessel(1);
+		String result = cb.toString();
+		Assert.assertEquals(result, expected, result);
 	}
 
 	@Test
diff --git a/src/test/java/enigma/model/HardwareTest.java b/src/test/java/projekt/enigma/model/HardwareTest.java
similarity index 98%
rename from src/test/java/enigma/model/HardwareTest.java
rename to src/test/java/projekt/enigma/model/HardwareTest.java
index 5eaeec04b8fc5e4b8fdcf726e901998350f04e31..742e6aba1b8679f81f8729a183fc7dd377616aa9 100644
--- a/src/test/java/enigma/model/HardwareTest.java
+++ b/src/test/java/projekt/enigma/model/HardwareTest.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/src/test/java/enigma/model/ReflektorTest.java b/src/test/java/projekt/enigma/model/ReflektorTest.java
similarity index 95%
rename from src/test/java/enigma/model/ReflektorTest.java
rename to src/test/java/projekt/enigma/model/ReflektorTest.java
index 793b8cc987f4eabdeda5b27b6e363b5157add7d4..8cb11a94b3c94191e9d0cdec15ddfbf97f5d27ea 100644
--- a/src/test/java/enigma/model/ReflektorTest.java
+++ b/src/test/java/projekt/enigma/model/ReflektorTest.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/src/test/java/enigma/model/SteckbrettTest.java b/src/test/java/projekt/enigma/model/SteckbrettTest.java
similarity index 94%
rename from src/test/java/enigma/model/SteckbrettTest.java
rename to src/test/java/projekt/enigma/model/SteckbrettTest.java
index 0f3fedb099afdc45ce8b57c766dabefd577dff3c..689b923f05fa2261a0b75ce33b9905221eb3fac6 100644
--- a/src/test/java/enigma/model/SteckbrettTest.java
+++ b/src/test/java/projekt/enigma/model/SteckbrettTest.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/src/test/java/enigma/model/WalzeTest.java b/src/test/java/projekt/enigma/model/WalzeTest.java
similarity index 94%
rename from src/test/java/enigma/model/WalzeTest.java
rename to src/test/java/projekt/enigma/model/WalzeTest.java
index 819a94e25da96eafaa0e47901ca0a1be22ad12cc..7a898dd9c28224efe22df8d49726af786ed9e3db 100644
--- a/src/test/java/enigma/model/WalzeTest.java
+++ b/src/test/java/projekt/enigma/model/WalzeTest.java
@@ -1,4 +1,4 @@
-package enigma.model;
+package projekt.enigma.model;
 
 import org.junit.Assert;
 import org.junit.Test;
@@ -23,7 +23,7 @@ public class WalzeTest {
 	}
 
 	@Test
-	public void walzenPoition() {
+	public void getAnzeige() {
 		Walze w = new Walze(1, 1);
 		char temp = w.getAnzeige();
 		Assert.assertEquals('A', temp);