From e1753c48305372630d2c5bbcee088ac9751c647d Mon Sep 17 00:00:00 2001 From: Christian Khazanovych <3028363@stud.th-mannheim.de> Date: Wed, 24 Jun 2026 18:12:47 +0200 Subject: [PATCH] README hinzugefuegt --- README.md | 76 +++++++++++++++++++++++++++---------------------------- 1 file changed, 37 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 5f6716d..d3cc412 100644 --- a/README.md +++ b/README.md @@ -1,64 +1,62 @@ -# Fakturierung — SE1 Team 3 +# SE1 Team 3 — Fakturierungsanwendung -Desktop-Fakturierungsanwendung (Einzelplatz) für das Hochschulprojekt SE1, Team 3. -Java 25, Swing-GUI, manuelle Kompilierung mit javac. Verwaltet Kunden, Produkte -und den Dokumentenzyklus Angebot → Rechnung inkl. Schreibschutz (GoBD-konform). +Dieses Projekt entstand im Rahmen des Moduls Software Engineering 1 an der Hochschule Mannheim (SoSe 2026). Ziel war die arbeitsteilige Entwicklung einer lokalen Desktop-Anwendung zur Rechnungsstellung für Kleinstunternehmen und Freiberufler. -## Build & Run +Die Anwendung läuft vollständig offline, speichert alle Daten lokal und unterstützt den kaufmännischen Prozess von der Kundenverwaltung über die Produktpflege bis zur GoBD-konformen Rechnungserstellung. + +## Starten ```bash -# Kompilieren -javac -sourcepath "src\main\java" -d out \ - (Get-ChildItem "src\main\java\kundenverwaltung\*.java").FullName \ - (Get-ChildItem "src\main\java\bestandsmanagement\*.java").FullName \ - (Get-ChildItem "src\main\java\belegworkflow\*.java").FullName \ +# Kompilieren (PowerShell) +javac -sourcepath "src\main\java" -d out ` + (Get-ChildItem "src\main\java\kundenverwaltung\*.java").FullName ` + (Get-ChildItem "src\main\java\bestandsmanagement\*.java").FullName ` + (Get-ChildItem "src\main\java\belegworkflow\*.java").FullName ` (Get-ChildItem "src\main\java\ui\*.java").FullName -# GUI starten +# Anwendung starten java -cp "out" ui.MainWindow +``` -# Alle Tests ausfuehren +## Tests ausfuehren + +```bash java -jar "lib\junit.jar" execute --select-class=kundenverwaltung.KundenVerwaltungTest --class-path=out java -jar "lib\junit.jar" execute --select-class=bestandsmanagement.BestandsmanagementTest --class-path=out java -jar "lib\junit.jar" execute --select-class=belegworkflow.BelegworkflowTest --class-path=out ``` -Daten werden lokal als CSV unter `data/` abgelegt (nicht versioniert). +## Projektstruktur -## Architektur - -Vier fachliche Module, jeweils einer Projektgruppe zugeordnet: - -| Paket | Gruppe | Verantwortung | +| Paket | Gruppe | Inhalt | |---|---|---| -| kundenverwaltung | J | Kundenverwaltung (CRUD, Nummernvergabe, Löschsperre) | -| bestandsmanagement | L | Produktverwaltung (CRUD, Nummernvergabe, Löschsperre) | -| belegworkflow | K | Dokumentenzyklus, Belegnummern, Schreibschutz | -| ui | I | Swing-Oberfläche (Hauptfenster, Panels, Dialoge) | +| kundenverwaltung | J | Anlegen, Bearbeiten, Suchen und Loeschen von Kundendaten | +| bestandsmanagement | L | Verwaltung von Artikeln, Preisen und Lagerbestaenden | +| belegworkflow | K | Erstellung von Angeboten und Rechnungen, Schreibschutz | +| ui | I | Grafische Benutzeroberfläche mit Swing | -Quellcode: `src/main/java/` · Tests: `src/test/java/` +Quellcode: `src/main/java/` — Tests: `src/test/java/` ## Testergebnisse -| Gruppe | Testklasse | Testfälle | Ergebnis | +| Gruppe | Testklasse | Anzahl | Status | |---|---|---|---| -| J | KundenVerwaltungTest | 9 | ✅ Alle bestanden | -| L | BestandsmanagementTest | 10 | ✅ Alle bestanden | -| K | BelegworkflowTest | 10 | ✅ Alle bestanden | +| J | KundenVerwaltungTest | 9 | Alle bestanden | +| L | BestandsmanagementTest | 10 | Alle bestanden | +| K | BelegworkflowTest | 10 | Alle bestanden | -**Gesamt: 29 Testfälle — alle bestanden** - -## Dokumentation - -Alle Projektunterlagen liegen unter `Dokumente/`: - -- `Lastenheft/` — Lastenheft Team 3 -- `Pflichtenhefte/` — Pflichtenhefte Gruppe I, J, K, L -- `Project_Charter/` — Project Charter Team 3 +29 Testfaelle — alle bestanden. ## Technologie - Java 25 (Temurin) -- Java Swing (GUI) -- JUnit 5 (Tests) -- Lokale CSV-Datenhaltung \ No newline at end of file +- Java Swing +- JUnit 5 +- Lokale CSV-Datenhaltung + +## Dokumentation + +Alle Projektunterlagen befinden sich unter `Dokumente/`: +- `Lastenheft/` +- `Pflichtenhefte/` +- `Project_Charter/` \ No newline at end of file