Softwaretechnik 1 (ST1), WS24
Die Veranstaltung ST1 beschäftigt sich damit, wie man aus eine natürlich-sprachliche Anforderungsbeschreibung Schritt für Schritt ein Software erstellt. Dabei formalisieren wir die Anforderungen, um wesentliche Modelle (Use Cases und Datenmodell) zu erstellen. Aus diesen Modellen wird dann dann mit Hilfe von Java und Spring Boot eine erste lauffähige Version der Software. Dabei nutzen Sie die Grundlagen der objektorientierten Programmierung und des Domain-Driven Designs.
- Studiengang und Modulbeschreibung
-
Informatik Bachelor
(siehe auch Modulbeschreibung auf der Studiengangs-Seite)
- Zeitraum und zeitliche Organisation der Veranstaltung
-
07.10.2024 - 20.01.2025. Organisiert als 7 Ganztages-Workshops (Montags 10:00 - 17:00). Genaue Daten und Inhalte stehen weiter unten.
- Ort der Veranstaltung
- Die Veranstaltung findet in Präsenz statt. In Ausnahmefällen (aber nur wenn explizit für den Tag kommuniziert) weichen wir auf eine Remote-Option (Videokonferenz) aus. Wenn mehrere Räume angegeben sind, dann schauen schauen Sie bitte bei dem jeweiligen Zeitschlitz oder Workshoptag nach (siehe unten auf dieser Seite), welcher Raum an welchem Tag genutzt wird. Falls auf dieser Seite keine Angaben sind, prüfen Sie bitte die sonstigen Kommunikationkanäle für diese Veranstaltung (z.B. Discord).
-
-
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung
-
Videokonferenz-Link:
https://th-koeln.zoom-x.de/j/63296199418?pwd=aU00Z0JoQWViK0tOUEMrTko0dy8wUT09
(nur in Ausnahmefällen und wenn explizit vorher für den Tag kommuniziert)
- ILIAS/ILU-Kurs zur Veranstaltung
- https://ilu.th-koeln.de/ilias.php?baseClass=ilrepositorygui&ref_id=431173
- Praktikum
- Das Praktikum wird über eine Folge von personalisierten und individuell für Sie generierten Git-Repos durchgeführt. Für jeden Meilenstein erhalten Sie ein neues Repo von uns. Jede*r Teilnehmer*in muss eine eigenständige Bearbeitung der Praktikumsaufgabe durchführen. Wir ermutigen Sie ausdrücklich, Ihre Lösungen in Arbeitsgruppen zu diskutieren. Ein einfaches Copy-Paste von Lösungen (unter Anpassung der Personalisierung) werten wir aber als Täuschungsversuch. Studierende, bei denen wir dieses sehen (und wir haben automatisierte Möglichkeiten, dies zu sehen) werden ohne Vorwarnung vom Praktikum ausgeschlossen. Das gilt sowohl für die Person, die kopiert hat, wie auch für die-/denjenigen, die/der die Lösung zur Verfügung gestellt hat.
-
Anmeldung
zum Praktikum
-
Bitte werden Sie Mitglied
in dieser ILIAS/ILU-Gruppe
.
(liegt
in diesem ILIAS/ILU-Kurs).
Die Deadline ist 09.10.2024.
Bitte denken Sie daran, dass Sie sich zusätzlich noch über PSSO zur Prüfung anmelden müssen. Die Anmeldefristen dafür finden Sie auf den F10-Informationsseiten der TH Köln.
- Git-Repo für das Praktikum
-
https://git.archi-lab.io/.
Bitte loggen Sie sich unbedingt vorab einmal mit Ihrer campusId dort ein. Sonst kann das Repo Ihnen nicht automatisch zugewiesen werden. (Achtung, wir sind auf einen neuen Gitlab-Server umgezogen. Wenn Sie die Veranstaltung vor einiger Zeit absolviert haben, müssen Sie sich erneut einloggen.)
- Discord-Server für schnelle Kommunikation
-
Discord hat sich als sehr effektive Plattform für den Informationsaustausch, Diskussionen und Fragen an Lehrende/Betreuer:innen erwiesen. Deshalb sollten Sie dem ArchiLab-Discord-Server beitreten unter
https://discord.gg/YYNYb5whU8.
Navigieren Sie zum Channel
#rollenzuweisung
und klicken Sie auf
st1
.
Die entsprechenden Kanäle zur Veranstaltung werden anschließend für Sie freigeschaltet.
- Youtube-Kanal
-
Für diese Veranstaltung sind Lehrvideos auf Youtube verfügbar. Abonnieren Sie dafür am besten den Kanal
ArchiLab.
Für die Videos zu dieser Veranstaltung gibt es eine
Playlist.
(Disclaimer - die Videos auf diesem Kanal sind nicht monetarisiert. Weder ich persönlich noch das Labor ArchiLab verdienen damit Geld. Wir nutzen YouTube vor allem deshalb, weil es für Studierende ein leicht zugänglicher Kanal ist. Außerdem bekommen wir als Labor an der TH Köln so auch Sichtbarkeit nach außen, was z.B. bei dem Einwerben von externen Gastvorträgen hilft.)
- Script
-
Für diese Veranstaltung ist ein Script verfügbar
(in den Videos verwendete Folien als PDF, mit abschnittsweisen Links auf das entsprechende Video).
Learning Outcome
Im ST1-Praktikum wird großer Wert darauf gelegt, das theoretische Wissen auch praktisch umzusetzen. Folgendes Learning Outcome liegt der Veranstaltung zugrunde - das sollten Sie am Ende können, wenn Sie für sich das Beste aus der Veranstaltung herausholen.
Als SW-Entwickler:in kann ich aus einer textuellen Anforderungsbeschreibung das Backend einer Software konzipieren und implementieren,
indem ich ...
- das fachliche Datenmodell aus einer textuellen Anforderungsbeschreibung ableite,
- Use Cases und Szenarien (als Text und als Aktivitätsdiagramm) ausgehend vom Anforderungstext spezifiziere,
- die Geschäftslogik in Form von Zustandsdiagrammen beschreibe,
- das logische Datenmodell aus dem fachlichen Datenmodell ableite, um die Implementierung vorzubereiten,
- aufbauend auf den vorherigen Schritten die Implementierung in Java und Spring Boot umsetze,
- diese Implementierung mittels Unit-Tests teste,
damit ich eine gut strukturierte, robuste und leicht weiter zu entwickelnde erste Version meines Backends habe.
Regeln für das Praktikum
Für das Praktikum gelten die nachfolgenden Regeln.
Zusammenarbeit ist gewollt, simples Copy-Paste ist ein Täuschungsversuch
Jede*r Teilnehmer*in muss eine eigenständige Bearbeitung der Praktikumsaufgabe durchführen.
Wir ermutigen Sie ausdrücklich, Ihre Lösungen in Arbeitsgruppen zu diskutieren. Ein einfaches
Copy-Paste von Lösungen (unter Anpassung der Personalisierung) werten wir aber als
Täuschungsversuch.
Wir haben die Möglichkeit, die Lösungen automatisiert zu vergleichen und “merkwürdige” Ähnlichkeiten zu
erkennen. Das Tooling vergleicht Repos paarweise und deckt Code-Ähnlichkeiten mit großer Zuverlässigkeit auf.
Ein solches Kopieren von Lösungen ist ein Betrugsversuch und zieht einen sofortigen Ausschluss aus dem
Praktikum nach sich - und zwar sowohl für den “Nehmer” wie auch für den “Spender” einer solchen Lösung.
Was geht?
Wir möchten ausdrücklich, dass Sie über Lösungen diskutieren und diese auch gern gemeinsam erarbeiten.
Das werden wir dadurch aktiv fördern, dass Sie in den Workshops schon an den Praktikumsaufgaben arbeiten.
Sie können da also ausgiebig miteinander drüber diskutieren und die Lehrenden um Hilfe bitten.
Das Folgende ist also ok:
- Das Modell, die Klassenstruktur und einen Algorithmus gemeinsam überlegen
- Fragen diskutieren
- Das Ergebnis dann jede/r für sich aufschreiben, modellieren oder implementieren
In diesem Fall gibt unser Tooling keinen Match aus, weil Modelle und Code so individuell wie Handschrift sind.
Ähnliche Klassenstrukturen sind ok, die werden nicht als Match gewertet, wenn der Code erkennbar einzeln geschrieben wurde.
Was geht NICHT?
- Arbeitsteilig arbeiten (ich mache Service A, und du machst Service B, und dann tauschen wir
die Klassen aus und passen die Individualisierung an)
- Gemeinsam im Pair Programming-Modus eine Lösung entwickeln und dann die Individualisierung anpassen
(Pair Programming ist ein guter und in der beruflichen Praxis oft genutzter Weg, um Software zu
entwickeln. Im Beruf machen das aber Entwickler:innen, die ihre Qualifikation schon praktisch bewiesen haben.
Hier möchten wir das bewusst ausschließen, damit jede/r von Ihnen sich einmal daran gewöhnt, eigenständig
komplexen Code zu schreiben.)
- ganze Lösungen kopieren und die Individualisierung anpassen (oder Lösungen weitergeben).
So etwas findet unser Tooling.
KI-Tools wie ChatGPT und Github Co-Pilot stellen gerade eine Disruption der Arbeitsweise von
Softwareentwickler*innen dar. Sie stellen mächtige Werkzeuge dar, die es ermöglichen, Code
wesentlich schneller zu schreiben. Trotzdem sind sie noch nicht so weit, dass sie die Arbeit
von Softwareentwickler*innen ersetzen können. Sie müssen also weiterhin den generierten Code
lesen und verstehen, um ihn zu verbessern. Außerdem müssen Sie die Konzepte kennen, die dem
generierten Code zugrunde liegen.
Die entsprechenden Kompetenzen kann man anhand der sogenannten
Bloom’s Revised Taxonomy einordnen.
Im Beruf braucht man eigentlich immer die Kompetenzen ab Stufe 4 (Analyse). Damit Sie sich
das aneignen können, müssen Sie die entsprechenden Aktivitäten auch selbst und
eigenständig durchgeführt haben.
Sie dürfen KI-Tools im Praktikum auf eigene Gefahr nutzen. “Auf eigene Gefahr” bedeutet, dass wir die Nutzung
dieser Tools im Praktikum nicht kontrollieren oder einschränken werden. Wenn Sie diese Tools nutzen,
müssen Sie also die nötigen Kompetenzen mitbringen, um die generierten Lösungen zu verstehen und
sinnvoll einzusetzen.
In der Klausur wird eine Nutzung solcher Tools allerdings NICHT möglich sein (siehe unten).
Sie müssen also sicherstellen, dass Sie die Aufgabenstellungen des Praktikums auch ohne solche
Tools lösen können.
Langfristiges Ziel muss es sein, solche Tools in der Softwareentwicklung zu nutzen, und ihre
Verwendung zu erlernen. Wir möchten sie also langfristig sowohl im Praktikum wie auch in der
Klausur erlauben. Dafür müssen wir aber Praktikum und Klausur so gestalten können, dass die
“kompetente” Nutzung dieser Tools geprüft werden kann, und man nicht einfach mit “Aufgabe
in den ChatGPT-Prompt pasten” auskommt. In einer zukünftigen Lehrveranstaltung würde ich gern,
wenn es die Kapazitäten hergeben, gezielter auf diese Kompentenzen eingehen und diese KI-Tools auch
aktiv in die Lehre integrieren. Momentan ist das aus diversionen Gründen noch zu früh.
Disclaimer zur Auswertung der Repo-Daten
Wir behalten uns vor, die Daten Ihrer Commits in dieses Repo zur Lernstandskontrolle
sowie - in anonymisierter Form - für die Beforschung der eigenen Lehre (SoTL, Scholarship of Teaching
and Learning) und bei der (Weiter-)Entwicklung von Lehrunterstützungs-Tools zu verwenden.
Bewertung (Klausur)
Die Bewertung von ST1 erfolgt über die ST1-Klausur in der Prüfungsphase in Februar. Die Klausur wird im PC-Pool der Hochschule geschrieben.
Wie gewohnt erhalten Sie für die Klausur ein individualisiertes Repo, das nur Sie selbst und wir sehen können.
Vorher müssen wir Ihre Identität sicherstellen. Im Hörsaal ist das einfach - Kontrolle von MultiCa und
Personalausweis, plus Sichtkontrolle, ob Sie es selbst sind.
Die Klausur ist eine Closed-Book-Klausur mit Erlaubnis, bestimmte Hilfsmittel zu nutzen. Dazu zählen:
- Eigene Praktikumsmaterialien (z.B. Lösungen, die Sie im Praktikum entwickelt haben)
- Eigene Notizen (Papier oder digital, wenn Sie diese z.B. in Ihrem eigenen Repo angelegt haben)
- Die Materialien aus https://www.archi-lab.io/, allerdings weder die Videos
noch verlinkte Materialien, nur die auf der Seite direkt zugänglichen Materialien
- Noch genauer festzulegende Resourcen zum Nachschauen technischer Details zu Spring (z.B. Stackoverflow, Baeldung
und/oder die Spring-Dokumentation)
Blockiert und verboten sind:
- Kommunikation mit anderen Personen, z.B. über Discord-Chat, Telefon, SMS, WhatsApp, etc.
- Nutzung von KI-Tools wie z.B. ChatGPT oder Github Co-Pilot
Die KI-Tools sind deshalb verboten, weil sie bei den vergleichsweise kurzen und in sich abgeschlossenen
Klausuraufgaben die Kompetenz-Prüfung von Ihnen als Studierende aushebeln würden. Sollte wir einen Verstoß gegen
diese Regeln feststellen, so ist dies ein Täuschungsversuch im Sinne der Prüfungsordnung. Sie
müssen dann mit den entsprechenden Konsequenzen rechnen.
Inhalte der Klausur
Inhalt und Form der Klausur werden den Meilensteinen des Praktikums ähneln, allerdings natürlich - wegen der begrenzten
Zeit - in deutlich komprimierter Form. Die Klausur wird aus mehreren Aufgaben bestehen, die Sie in beliebiger
Reihenfolge bearbeiten können. Die Aufgaben werden in sich abgeschlossen sein und bauen nicht aufeinander auf.
Es wird Code in der Klausur zu schreiben sein. Anders als im Praktikum wird der Code aber nicht automatisiert
getestet, sondern manuell von uns bewertet. Es wird vermutlich auch keine vordefinierten Tests in der Klausur
geben. Sie können gern selbst Tests schreiben. Bonuspunkte gibt es dafür (und für andere Extraleistungen) nur,
wenn in der Klausuraufgabe ausdrücklich vermerkt. Ihr Code muss nicht notwendig compilieren, allerdings kann
nicht compilierender Code Abzüge geben. Auch hierfür stehen die Details noch nicht fest, und ich verweise
auf die Aufgabenbeschreibungen in der Klausur.
Sie sollten davon ausgehen, dass alle Inhalte der Praktikums-Meilensteine vorkommen können.
Workshops
Mon 07.10.2024, 10:00 - 15:30: ST1-Kickoff
Wir starten mit einer Einführung in das Praktikum und die Rahmenbedingungen.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie kennen die Rahmenbedingungen für ST1.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 11:00:
Organisatorisches
- Zeitplan
- Youtube-Channel
- Discord als präferiertes Kommunikationsforum
- Klausur
- Inhalt der Praktikums-Meilensteine
- Regeln für Praktikum und Klausur
- Nutzung von KI-Assistenten
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M0.
Mon 21.10.2024, 10:00 - 14:00: Fachliches Datenmodell und Glossar
In diesem Workshop gibt es Impulse und Erklärungen zum Thema des Meilensteins. Sie können Fragen stellen und dann in Gruppen an Ihren Lösungen arbeiten.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie sind in der Lage, den Meilenstein zu bearbeiten.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 10:15:
Retrospektive zu M0
-
10:15 - 10:45:
Vorstellung von M1
-
10:45 - 17:00:
Gemeinsames Bearbeiten von M1
- Offene Diskussion in Gruppen
- Sie können schon einmal anfangen, am Meilenstein zu arbeiten
- Fabian ist vor Ort, kann gefragt werden und hilft
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M1.
Mon 04.11.2024, 10:00 - 17:00: Use Cases, Szenarios und Aktivitätsdiagramme
In diesem Workshop gibt es Impulse und Erklärungen zum Thema des Meilensteins. Sie können Fragen stellen und dann in Gruppen an Ihren Lösungen arbeiten.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie sind in der Lage, den Meilenstein zu bearbeiten.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 10:15:
Retrospektive zu M1
-
10:15 - 10:45:
Vorstellung von M2
-
10:45 - 17:00:
Gemeinsames Bearbeiten von M2
- Offene Diskussion in Gruppen
- Sie können schon einmal anfangen, am Meilenstein zu arbeiten
- Fabian ist vor Ort, kann gefragt werden und hilft
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M2.
Mon 18.11.2024, 10:00 - 17:00: Zustandsmodellierung
In diesem Workshop gibt es Impulse und Erklärungen zum Thema des Meilensteins. Sie können Fragen stellen und dann in Gruppen an Ihren Lösungen arbeiten.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie sind in der Lage, den Meilenstein zu bearbeiten.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 10:15:
Retrospektive zu M2
-
10:15 - 10:45:
Vorstellung von M3
-
10:45 - 17:00:
Gemeinsames Bearbeiten von M3
- Offene Diskussion in Gruppen
- Sie können schon einmal anfangen, am Meilenstein zu arbeiten
- Fabian ist vor Ort, kann gefragt werden und hilft
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M3.
Mon 02.12.2024, 10:00 - 17:00: Logisches Datenmodell und Implementierung eines Zustandsmodells
In diesem Workshop gibt es Impulse und Erklärungen zum Thema des Meilensteins. Sie können Fragen stellen und dann in Gruppen an Ihren Lösungen arbeiten.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie sind in der Lage, den Meilenstein zu bearbeiten.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 10:15:
Retrospektive zu M3
-
10:15 - 10:45:
Vorstellung von M4
-
10:45 - 17:00:
Gemeinsames Bearbeiten von M4
- Offene Diskussion in Gruppen
- Sie können schon einmal anfangen, am Meilenstein zu arbeiten
- Fabian ist vor Ort, kann gefragt werden und hilft
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M4.
Mon 16.12.2024, 10:00 - 17:00: Implementieren des Logischen Datenmodells mit Businesslogik und Unit Tests
In diesem Workshop gibt es Impulse und Erklärungen zum Thema des Meilensteins. Sie können Fragen stellen und dann in Gruppen an Ihren Lösungen arbeiten.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie sind in der Lage, den Meilenstein zu bearbeiten.
Schauen Sie bitte vorab nachfolgende Videos
Agenda
-
10:00 - 10:15:
Retrospektive zu M4
-
10:15 - 10:45:
Vorstellung von M5
-
10:45 - 17:00:
Gemeinsames Bearbeiten von M5
- Offene Diskussion in Gruppen
- Sie können schon einmal anfangen, am Meilenstein zu arbeiten
- Fabian ist vor Ort, kann gefragt werden und hilft
Aufgabe bis zum nächsten Workshop
Nach dem Workshop bearbeiten Sie bitte
Meilenstein M5.
Mon 20.01.2025, 10:00 - 17:00: Fragen zum Stoff und Wiederholung
In Vorbereitung auf die Klausur wiederholen wir den Stoff, der noch unklar ist.
Ort des Workshops
Raum:
0501 (Gebäude LC6, gegenüber dem Haupteingang der Schwalbe-Arena), siehe auch
detaillierte Wegbeschreibung.
Ziel des Tages
Sie haben alle für die Klausur relevanten Verständnisfragen geklärt.
Agenda
-
10:00 - 10:30:
Allgemeine Hinweise zur Klausur
- Es wird kurz vorgestellt, was in der Klausur zu erwarten ist (siehe auch Inhalte der Klausur).
- Sie können alle Fragen zur Klausur loswerden, die Sie noch haben.
-
10:30 - 11:00:
Fragen zum Stoff
-
11:00 - 17:00:
Wiederholung
Praktikums-Meilensteine
Das Praktikum gliedert sich in die folgenden Meilensteine. Alle Meilensteine müssen bestanden sein, um das Gesamtpraktikum zu bestehen. Die Tests eines Meilensteins müssen komplett 'grün' sein, um ihn zu bestehen. Eine Teilnahme an einem Meilenstein ist nur möglich, wenn alle vorigen Meilensteine bestanden wurden.
M0: Wiederholung Coding-Aufgaben
In diesem Meilenstein wiederholen wir einfache Programmieraufgaben und üben die Nutzung von Git. Außerdem schreiben Sie (als Einstieg in das automatisierte Testen) einfache Unit-Tests.
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Tue 09.01.2024,
10:00
-
Abgabe bis spätestens:
Fri 18.10.2024,
10:00
Zugehörige Videos
M1: Fachliches Datenmodell und Glossar
In diesem Meilenstein erstellen Sie aus einer textuellen Anforderungsbeschreibung ein Glossar mit den wichtigen Geschäftsobjekten. Dafür wenden Sie Methoden der Textanalyse an. Auf der Basis des Glossars machen Sie dann ein fachliches Datenmodell.
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Mon 21.10.2024,
10:00
-
Abgabe bis spätestens:
Fri 01.11.2024,
10:00
Zugehörige Videos
M2: Use Cases und Szenarien
Ähnlich wie in M1 beschäftigen Sie sich damit, wie man aus einem natürlichsprachlichen Anforderungstext eine formalere Beschreibung des gewünschten Verhaltens erhält (in Form von Use Cases und Szenarien).
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Mon 04.11.2024,
10:00
-
Abgabe bis spätestens:
Fri 15.11.2024,
10:00
Zugehörige Videos
M3: Aktivitätsdiagramm und Zustandsmodellierung
In diesem Meilenstein lernen Sie Zustandsdiagramme als eine Möglichkeit kennen, Geschäftslogik genau und trotzdem kompakt und übersichtlich zu beschreiben. Weiterhin überführen Sie das Szenario aus M2 in ein Aktivitätsdiagramm.
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Mon 18.11.2024,
10:00
-
Abgabe bis spätestens:
Fri 29.11.2024,
10:00
Zugehörige Videos
M4: Logisches Datenmodell und Implementierung eines Zustandsdiagramms
Das Fachliche Datenmodell (siehe M1) kann man im nächsten Schritt in ein Logisches Datenmodell überführen, das dann unmittelbar in Code umgesetzt werden kann. Zusätzlich bereiten Sie die Implementierung vor, indem Sie eine prototypische Implementierung des Zustandsdiagramms aus M3 vornehmen.
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Mon 02.12.2024,
10:00
-
Abgabe bis spätestens:
Fri 13.12.2024,
10:00
Zugehörige Videos
M5: Implementierung des Logischen Datenmodells mit Geschäftslogik und Unit Tests
Im letzten Meilenstein führen Sie die bisherigen Ergebnisse zusammen, indem Sie das Logische Datenmodell aus M4 in Java-Code überführen. Dabei nutzen Sie Spring Boot und JPA, um persistente Objekte zu haben. Zusätzlich implementieren Sie einen kleinen Teil Geschäftslogik und testen das Ganze mit selbstgeschriebenen Unit-Tests. Damit haben Sie das Meiste zusammen, was man für ein einfaches Backend braucht.
Der Meilenstein wird
teils automatisch (per Unit-Tests) überprüft, teils gibt es manuelles Feedback.
Manuelles Feedback geben wir frühestens dann, wenn die automatisch überprüften Aufgaben davor alle grün sind.
Bitte beachten Sie, dass wir
nur ein (Zwischen-)Feedback
vor der Abgabe garantieren können. Nutzen Sie also die Workshops, um Fragen zu stellen und Ihre Lösung(en) zu diskutieren.
-
Ausgabe: Mon 16.12.2024,
10:00
-
Abgabe bis spätestens:
Sat 11.01.2025,
10:00
Zugehörige Videos