Workshop-Tage 2010
09.09. - WS 12: Agile Softwareentwicklung hautnah erleben
Ganztages-Workshop
[Referenten] [
Einleitung] [Programm]
[Kursziel] [Adressaten] [Voraussetzungen] [Mitbringen] [max. Teilnehmerzahl]
[Anmelden!] [Programmübersicht] [WS11] [WS13]
Referent/-in
Silvio Heuberger, HSR Rapperswil
Michael Klenk, HSR Rapperswil
Nach dem Studium an der HSR arbeiten die Referenten seit bald 2 Jahren am Institut für Software und beschäftigen sich mit moderner Software-Entwicklung.
Sie betreuen Studenten und kleine Teams in den Bereichen TDD, agile Prozesse und Refactoring.
Einleitung
Wir entwickeln in kleinen Teams mit Hilfe agiler Methoden wie Test Driven Development und Pair Programming ein in sich abgeschlossenes kleines Softwareprojekt. So erfahren die Teilnehmer durch praktisches Üben, wie viel Ärger man sich durch das Anwenden dieser Methoden ersparen kann. Wir legen Wert auf clean Code (leserlich, DRY, gut wartbar) und zeigen, wie man dies einfach erreicht.
Programm
Iterativ werden verschiedene Problemfelder des Programmieralltags kurz beleuchtet und die Beispielsoftware entsprechend weiter entwickelt. Abgerundet werden diese Entwicklungsschritte mit einem Erfahrungsaustausch.
Der Workshop beginnt mit einer kurzen Einführung in TDD und Pair Programming.
Danach wird kurz das Projekt, in dem programmiert werden soll, erklärt bezüglich Aufbau, Konventionen und bereits existierendem Code.
Anschliessend folgen mehrere Iterationen, die nach dem folgenden Schema ablaufen:
- Es werden neue Features bekannt gegeben, welche in Teams aus 4 Programmierern (2 Pairs) implementiert werden sollen. Beim Lösen der Aufgabe stossen die Teilnehmer auf klassische "Probleme", wie zum Beispiel Singletons und Legacy Code, die beim TDD auftauchen können.
- Der Ansatz, wie diese Probleme zu lösen sind, wird kurz aufgezeigt.
- Mehrere komplette TDD Zyklen werden nun in Pairs durchgeführt:
- RED: Fehlschlagender Test für die neue Funktionalität zuerst.
- GREEN: Der Code wird angepasst, so dass der Test durchläuft.
- Refactor: Code aufräumen, Design anpassen.
- Integrate: Neuen Code zusammen mit den den Tests allen zur Verfügung stellen.
- Wenn die neue Funktionalität erreicht ist, wird ein kurzer Review und ein Block Reflexion innerhalb der Teams durchgeführt.
Durch dieses Vorgehen wird ein gutes Verhältnis von Theorie und erlebtem Programmieren mit diesen Methoden erreicht.
Kursziel
Die Teilnehmenden erleben moderne Methodiken, wie TDD, Refactoring und Pair Programming. Dabei lernen sie, mit wechselnden Anforderungen sowie bestehendem Code umzugehen und in diesem Umfeld effizient qualitativ hochwertige Software zu entwickeln.
Adressaten
Dieser Workshop richtet sich an Softwareentwickler/-innen, die in ihrer täglichen Arbeit gerne agil entwickeln würden bis jetzt aber noch nicht dazu gekommen sind oder ihre Kenntnisse vertiefen möchten.Voraussetzungen
Java Grundkenntnisse. Die Entwicklung der Applikation ist auch ohne IDE möglich, allerdings sind Grundkenntnisse in Eclipse von Vorteil.Mitbringen
Für die Übungen wird ein eigener Laptop benötigt. Sollte es Ihnen nicht möglich sein, einen zum Kurs mitzubringen, nehmen Sie bitte mit uns Kontakt auf.
Aktion: "Bring your colleague"
Wenn Sie sich paarweise mit Ihrem Berufskollegen aus der gleichen Firma für diesen Workshop anmelden, dann ist der Workshop für den Berufskollegen gratis!
(Bitte bei der Anmeldung im Feld für Bemerkungen angeben, mit wem zusammen Sie von dieser Aktion profitieren wollen!)
max. Teilnehmerzahl
24
[Anmelden!] [Programmübersicht] [WS11] [WS13]

