Modul 1b
Vom Gerüst zum Dienst
Tag 1 · ca. 25 Minuten · Brücke zu Modul 2
Warum euer Projekt ein Dienst werden muss
Nicht weil der Kurs Quarkus lehrt — sondern weil drei spätere
Übungen sonst nicht funktionieren.
- Modul 2: Eine Regel nur für die Schnittstelle braucht eine Schnittstelle. Ohne sie gibt es nichts, worauf ein Geltungsbereich zeigen könnte.
- Modul 5: Der Diff gegen die Referenz ist nur aussagekräftig, wenn beide Seiten dieselbe Bauart haben.
- Modul 7: Die Referenz als fremden Code erkunden wirkt nur, wenn ihr die Bauform schon kennt.
Am Ende steht ein Projekt, das dieselbe Form hat wie das
Vorlagen-Repository — nur mit eurer Lösung darin.
So sieht die Referenz aus
Das Vorlagen-Repository ist ein Quarkus-Dienst mit klarer Schichtung.
Euer Ziel ist die Form, nicht der Umfang.
src/main/java/at/cgs/training/seminar/
api/ SeminarResource, DTOs, Mapper
service/ Fachlogik
domain/ Seminar, Booking, Kunde
repository/ Datenzugriff
- Ihr baut nur die oberste Schicht dazu — eine Resource, ein Endpunkt.
- Eure Fachlogik bleibt, wo sie ist. Sie wird nicht angefasst.
- Der Rest kommt später oder gar nicht — ihr baut kein zweites
seminar-api nach.
Wer jetzt die Referenz aufmacht und abschreibt, verschenkt Modul 7 —
dort soll sie fremder Code sein.
Drei Dinge, mehr nicht
Der Umbau ist kleiner, als er klingt — und genau deshalb ein
guter erster riskanter Auftrag.
| Was | Vorher | Nachher |
| Build | reines Maven-Projekt | pom.xml mit Quarkus-Erweiterung |
| Start | nur mvn test | zusätzlich mvn quarkus:dev — läuft und lädt neu |
| Zugang | nur über Tests erreichbar | ein Endpunkt, den man aufrufen kann |
Die Fachlogik bleibt unberührt. Das ist zugleich das Abnahmekriterium:
Der Test von vorhin muss danach unverändert grün sein.
Übung 1b — Der Umbau
Ziel vorgeben, nicht die Schritte. Der Agent baut um,
ihr prüft — und greift nicht selbst in den Code.
- Prompt absetzen (rechts). Er nennt das Ziel und die Grenze, nicht den Weg.
- Fehler zurückgeben, nicht selbst reparieren. Auch wenn es schneller ginge.
- Abnahme: Dienst läuft, Endpunkt antwortet, alter Test unverändert grün.
- Sichern:
!git add -A && git commit -m "quarkus"
Prompt · UmbauBaue dieses Maven-Projekt zu einem Quarkus-Dienst um
(Extension rest-jackson, Plattform-Version 3.20.6),
ohne die Fachlogik zu ändern.
Danach: Seminar als REST-Resource anbieten, ein GET-Endpunkt,
der die freien Plätze liefert. Der bestehende Test bleibt grün.
Aktualisiere zum Schluss die Stack-Rubrik in CLAUDE.md.
# Abnahme
!mvn -q test
!mvn quarkus:dev
!curl "localhost:8080/seminare/freie-plaetze?kapazitaet=10&gebucht=3"
Dauer ca. 20 Minuten · Einzelarbeit · hier ist Pause — Auflösung danach
Auflösung Übung 1b
Der Umbau selbst ist Nebensache. Interessant ist, was der Agent
angefasst hat — und was ihr davon vorher wusstet.
- Angefasst wurde mehr als erwartet: Build-Datei, Verzeichnisstruktur, oft auch die Testklasse. Ein Auftrag, drei Baustellen.
- Die Fachlogik blieb — weil ihr es gesagt habt. Ohne die Grenze im Prompt wäre sie wahrscheinlich mit umgebaut worden.
- Der alte Test war der Wächter. Er ist das Einzige, was den Umbau objektiv abnimmt.
- Wer eingegriffen hat, hat einen Zustand, den der Agent nicht kennt — und merkt es beim nächsten Auftrag.
Je größer der Auftrag, desto wichtiger die Grenze darin
— und ein Abnahmekriterium, das nicht verhandelbar ist.
Was der Umbau an CLAUDE.md kaputt macht
In eurer Datei stand „Schnittstelle: noch keine". Das stimmt seit
zwanzig Minuten nicht mehr.
## Stack — vorher
- Java 21, Build mit Maven
- Tests mit JUnit, `mvn test`
- Persistenz: noch keine
- Schnittstelle: noch keine
## Stack — nachher
- Java 21, Quarkus, Build mit Maven
- Tests mit JUnit, `mvn -q test`
- Start: `mvn quarkus:dev`
- Persistenz: noch keine
- Schnittstelle: REST unter /seminare
- Eine veraltete Grundlage ist schlimmer als keine. Sie klingt verbindlich und stimmt nicht mehr.
- Niemand merkt es sofort — der Schaden zeigt sich erst, wenn ein Auftrag auf die falsche Annahme baut.
- Deshalb gehört das Nachziehen in denselben Auftrag, nicht auf eine Liste für später.
Ändert sich die Wirklichkeit, muss die Grundlage nach. Das ist derselbe
Satz wie bei /init in Übung 1a — nur eine Stufe später.
Was ihr jetzt habt
1Ein laufender Dienst mit einem Endpunkt — dieselbe Bauart wie das Vorlagen-Repository.
2Eine Schnittstelle, auf die sich ab Modul 2 eine eigene Regel beziehen kann.
3Eine Grundlage, die stimmt — und die Erfahrung, wie schnell sie das nicht mehr tut.
Modul 2 baut darauf zwei Regeln: eine für alle Java-Dateien,
eine nur für die Schnittstelle.
© 2026 CGS IT Solutions GmbH
Alle Rechte vorbehalten
Diese Schulungsunterlagen sind urheberrechtlich geschützt. Vervielfältigung,
Weitergabe oder kommerzielle Nutzung — auch in Auszügen — nur mit
ausdrücklicher schriftlicher Genehmigung der CGS IT Solutions GmbH.
cgsit-claude-training · Modul 1b · v0.8.1