Go to file
Lucas Strubel 98ab3621b3 Enhance presentation styling for improved readability and visual appeal using frontend-design skill 2026-06-26 20:25:13 +02:00
dokumentation Enhance presentation styling for improved readability and visual appeal using frontend-design skill 2026-06-26 20:25:13 +02:00
src Refactor code structure for improved readability and maintainability 2026-06-24 00:23:40 +02:00
tools Ergänzung von Diagrammen Gruppe A 2026-06-13 11:04:50 +02:00
.gitignore Update .gitignore and add README.md for project documentation 2026-06-24 09:10:08 +02:00
AGENTS.md Ergaenze allgemeine Agentenrichtlinien 2026-06-24 12:00:42 +02:00
CLAUDE.md Update .gitignore and add README.md for project documentation 2026-06-24 09:10:08 +02:00
README.md Update .gitignore and add README.md for project documentation 2026-06-24 09:10:08 +02:00
mvnw Pflichtenheft + Maven Build 2026-06-10 17:22:08 +02:00
mvnw.cmd Pflichtenheft + Maven Build 2026-06-10 17:22:08 +02:00
pom.xml Modultestplan ausgegliedert 2026-06-15 15:28:17 +02:00

README.md

Fakturierung — SE1 Team 1

Desktop-Fakturierungsanwendung (Einzelplatz) für das Hochschulprojekt SE1, Team 1. Java 21, Swing-GUI mit FlatLaf, Maven-Build. Verwaltet Kunden, Produkte und den Dokumentenzyklus Angebot → Auftragsbestätigung → Lieferschein → Rechnung inkl. PDF-Export.

Build & Run

./mvnw compile                          # Kompilieren
./mvnw test                             # Alle Tests (JUnit 5)
./mvnw package                          # Fat-JAR bauen (maven-shade-plugin)
java -jar target/fakturierung-1.0.0.jar # Anwendung starten

Daten werden lokal als JSON unter daten/ abgelegt (nicht versioniert).

Architektur

Vier fachliche Module, jeweils einer Projektgruppe zugeordnet, plus ein Querschnittspaket:

Paket Gruppe Verantwortung
dokumente A Dokumentenzyklus, Belegnummern, PDF-Export
produkte B Produktverwaltung (CRUD, Nummernvergabe, Löschsperre)
kunden C Kundenverwaltung (CRUD, Nummernvergabe, Löschsperre)
gui D Swing-Oberfläche (HauptFenster, Panels, Dialoge, Wizard)
gemeinsam Querschnitt: EreignisBus, JsonPersistenz, CSV-Hilfe, Exceptions

Quellcode: src/main/java/de/team1/faktura/ · Tests: src/test/java/de/team1/faktura/

Dokumentation

Alle Projektunterlagen liegen unter dokumentation/:

  • anforderungen/ — Lastenheft, Pflichtenhefte (Gruppe AD), Anforderungsabgleich
  • tests/ — Modultestplan, Modultestbericht
  • projekt/ — Project Charter, Präsentation
  • diagramme/ — PlantUML-Quellen (.puml) und gerenderte Diagramme (.png)

Die *.md-Spezifikationen werden mit pandoc + XeLaTeX manuell zu PDF gebaut; die PDFs sind als Abgabe-Artefakte mitversioniert. PlantUML-Diagramme werden über tools/plantuml.jar gerendert.