README hinzugefuegt
parent
85d28c8920
commit
e1753c4830
74
README.md
74
README.md
|
|
@ -1,64 +1,62 @@
|
||||||
# Fakturierung — SE1 Team 3
|
# SE1 Team 3 — Fakturierungsanwendung
|
||||||
|
|
||||||
Desktop-Fakturierungsanwendung (Einzelplatz) für das Hochschulprojekt SE1, Team 3.
|
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.
|
||||||
Java 25, Swing-GUI, manuelle Kompilierung mit javac. Verwaltet Kunden, Produkte
|
|
||||||
und den Dokumentenzyklus Angebot → Rechnung inkl. Schreibschutz (GoBD-konform).
|
|
||||||
|
|
||||||
## 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
|
```bash
|
||||||
# Kompilieren
|
# Kompilieren (PowerShell)
|
||||||
javac -sourcepath "src\main\java" -d out \
|
javac -sourcepath "src\main\java" -d out `
|
||||||
(Get-ChildItem "src\main\java\kundenverwaltung\*.java").FullName \
|
(Get-ChildItem "src\main\java\kundenverwaltung\*.java").FullName `
|
||||||
(Get-ChildItem "src\main\java\bestandsmanagement\*.java").FullName \
|
(Get-ChildItem "src\main\java\bestandsmanagement\*.java").FullName `
|
||||||
(Get-ChildItem "src\main\java\belegworkflow\*.java").FullName \
|
(Get-ChildItem "src\main\java\belegworkflow\*.java").FullName `
|
||||||
(Get-ChildItem "src\main\java\ui\*.java").FullName
|
(Get-ChildItem "src\main\java\ui\*.java").FullName
|
||||||
|
|
||||||
# GUI starten
|
# Anwendung starten
|
||||||
java -cp "out" ui.MainWindow
|
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=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=bestandsmanagement.BestandsmanagementTest --class-path=out
|
||||||
java -jar "lib\junit.jar" execute --select-class=belegworkflow.BelegworkflowTest --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
|
| Paket | Gruppe | Inhalt |
|
||||||
|
|
||||||
Vier fachliche Module, jeweils einer Projektgruppe zugeordnet:
|
|
||||||
|
|
||||||
| Paket | Gruppe | Verantwortung |
|
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| kundenverwaltung | J | Kundenverwaltung (CRUD, Nummernvergabe, Löschsperre) |
|
| kundenverwaltung | J | Anlegen, Bearbeiten, Suchen und Loeschen von Kundendaten |
|
||||||
| bestandsmanagement | L | Produktverwaltung (CRUD, Nummernvergabe, Löschsperre) |
|
| bestandsmanagement | L | Verwaltung von Artikeln, Preisen und Lagerbestaenden |
|
||||||
| belegworkflow | K | Dokumentenzyklus, Belegnummern, Schreibschutz |
|
| belegworkflow | K | Erstellung von Angeboten und Rechnungen, Schreibschutz |
|
||||||
| ui | I | Swing-Oberfläche (Hauptfenster, Panels, Dialoge) |
|
| ui | I | Grafische Benutzeroberfläche mit Swing |
|
||||||
|
|
||||||
Quellcode: `src/main/java/` · Tests: `src/test/java/`
|
Quellcode: `src/main/java/` — Tests: `src/test/java/`
|
||||||
|
|
||||||
## Testergebnisse
|
## Testergebnisse
|
||||||
|
|
||||||
| Gruppe | Testklasse | Testfälle | Ergebnis |
|
| Gruppe | Testklasse | Anzahl | Status |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| J | KundenVerwaltungTest | 9 | ✅ Alle bestanden |
|
| J | KundenVerwaltungTest | 9 | Alle bestanden |
|
||||||
| L | BestandsmanagementTest | 10 | ✅ Alle bestanden |
|
| L | BestandsmanagementTest | 10 | Alle bestanden |
|
||||||
| K | BelegworkflowTest | 10 | ✅ Alle bestanden |
|
| K | BelegworkflowTest | 10 | Alle bestanden |
|
||||||
|
|
||||||
**Gesamt: 29 Testfälle — alle bestanden**
|
29 Testfaelle — 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
|
|
||||||
|
|
||||||
## Technologie
|
## Technologie
|
||||||
|
|
||||||
- Java 25 (Temurin)
|
- Java 25 (Temurin)
|
||||||
- Java Swing (GUI)
|
- Java Swing
|
||||||
- JUnit 5 (Tests)
|
- JUnit 5
|
||||||
- Lokale CSV-Datenhaltung
|
- Lokale CSV-Datenhaltung
|
||||||
|
|
||||||
|
## Dokumentation
|
||||||
|
|
||||||
|
Alle Projektunterlagen befinden sich unter `Dokumente/`:
|
||||||
|
- `Lastenheft/`
|
||||||
|
- `Pflichtenhefte/`
|
||||||
|
- `Project_Charter/`
|
||||||
Loading…
Reference in New Issue