Das Projekt - tlaul0l0/OR-WebSS21 GitHub Wiki

Projektziel

Neuer Aufbau von OR-Web unter Nutzung von Vuetify, damit dieses von künftigen Teamprojekten um weitere Methoden und Solver erweitert werden kann. In diesem Projekt soll ein Solver oder eine Methode im neuen OR-Web implementiert werden. Ebenso wird ein Downloadcenter in die Applikation implementiert, welche die erstellten Methoden- bzw. Solver- Programme von Methodenbank vom SS18 zur Verfügung stellt. Mithilfe von Electron kann diese Software als Desktop-App umgewandelt werden.

Warum Vuetify?

Folgende Gründe sprachen damals dafür, dass wir die App mithilfe von Vuetify umsetzen:

  • Die resultierende App ist Betriebssystem unabhängig.
  • Vuetify ist ein sehr beliebtes JavaScript Framework.
  • Man kann damit einfach eine GUI zusammenklicken.
  • In der Kombination mit Electron kann die App auch als Desktop-Version und nicht nur als Web-Version bereit gestellt werden.

Wer sind potenzielle Benutzer der Applikation?

  • Student*innen
  • Professor*innen
  • Wissenschaftliche Mitarbeiter*innen

Projektumfang (Projectscope)

Der Projektumfang wird in Projects/ORWeb beschrieben.

Organisation

Das Projekt wird agil organisiert.

Meetings

Meetings werden in Discord gehalten. Meetings innerhalb des Teams werden 1-2 Mal wöchentlich gehalten. Der aktuelle Stand des Projektes wird ca. alle 2 Wochen der Projektauftraggeberin präsentiert.

Versionsverwaltung

Den Sourcecode-Versionsverwaltung erfolgt mittels Github. Wir haben uns für Git entschlossen, da jeder von unserem Team bereits im Zuge anderer Lehrveranstaltungen damit mehr Erfahrungen als mit z.B. SVN sammeln konnten. Da im RZ die Server für Git abgedreht werden, haben wir entschlossen, die Plattform Github für dieses Projekt zu nutzen. Pro Aufgabe soll ein eigener Branch im Repository erstellt werden. Wenn eine Aufgabe erledigt ist, dann wird ein Merge zu dem dev-Branch gemacht. Anschließend wird getestet, ob im dev-Branch die Ausführung funktioniert. Wenn es funktioniert wie gewünscht, dann wird ein Merge zu master-Branch gemacht.

Verwendetete Resourcen

Ressource Version
VisualStudio Code 1.56.2
Electron 12.0.4
Chrome 89.0.4389.114
Node.js 14.16.0
OS Windows_NT x64 10.0.19042

Ordnerstruktur

+---backend					
|   +---.mvn
|   +---.settings
|   +---bin
|   +---src					# enthält Controller-, Handler-, Logik- und Thread-Klassen
|   |   +---main
|   |   |   +---java
|   |   |   |   \---com
|   |   |   |       \---orweb
|   |   |   |           \---main
|   |   |   |               +---Config
|   |   |   |               +---controller
|   |   |   |               +---Handler
|   |   |   |               +---logic
|   |   |   |               |   \---Methods
|   |   |   |               \---Threads
|   |   |   \---resources
|   |   \---test
|   \---target					# enthält kompellierten Code
+---documentation				# enthält relevante Dateien für Dokumentation (https://github.com/tlau10/OR-WebSS21/wiki)
|   +---Vorherige Projekte
|   \---Wireframes
\---frontend
    +---node_modules
    +---public					# enthält Dateien, die im Downloadcenter heruntergeladen werden können
    |   +---Methods
    |   \---Solver
	index.html				# ist ein Template, in der <head> und <body> inkl. App.vue eingebunden wird
    \---src
        +---assets				# enthält Bilder und CSS
        |   \---css
        +---plugins
        +---router				# enthält Pfade fürs Routing
        +---store
        \---views				# enthält Vue-Seiten mit HTML-Code
            +---Methods
            \---Solver
	    App.vue				# wird als Template für alle anderen Vue-Seiten benutzt und enthält Navbar & Footer
⚠️ **GitHub.com Fallback** ⚠️