Sport frei – Spartakiade 2013

by Anton 25. March 2013 15:56

Letzten Samstag fand in Berlin-Kreuzberg die zweite Spartakiade statt. Es kamen etwa 50 Interessierte zusammen, die an den Workshops teilnehmen wollten.

Domain-Driven Design (DDD)

Da der Architekturworkshop erst am Nachmittag anfing, schaute ich am Vormittag in DDD rein. Es dauerte eine Weile bis an jedem Tisch die Beispielanwendung (brownfield) zum Laufen gebracht wurde. Es war ein Fahrrad-Online-Shop, den wir zunächst begutachteten. Wir arbeiteten die Bestandteile der bestehenden Software heraus. Danach definierten wir die Domäne und die Subdomänen (Aspekte) der Anwendung. Dabei sollte uns klar werden, was die Kernkompetenz des Programms sein würde, also worauf wir uns konzentrieren würden. Das war der Shop an sich (samt Warenkorb). Dinge wie Bezahlung und Versand würden Nebenaspekte bleiben, da wir sie möglicherweise auch auslagern könnten, oder bestehende gute Lösungen finden würden.

Architektur

Nach dem Baguette zum Mittag ging ich dann zum Architekturworkshop bei Sergey Shishkin. Ich weiß also nicht, wie der DDD-Workshop ausging, aber sie wollten sich am Nachmittag mehr um die Umsetzung konkreter Patterns in Zweierteams kümmern.

Sergey erzählte zunächst ein wenig darüber, wie er sich Architektur vorstellt. Dann sollten wir eine Grafik für eine Anwendung erstellen. Das war eine Vermisste-Tiere-Anwendung, in der man auch Sichtungen melden könnte. Innerhalb von 30 Minuten stellten wir etwas fertig, was die Funktionalitäten und Datenflüsse beinhaltete. Wir waren uns sehr unsicher, ob dies das Richtige sei. Immerhin sollten wir aus dieser Grafik ableiten, was für Kosten (insbesondere laufende) auf den Kunden zukämen.

Nach der Besprechung des ersten Fallbeispiels, gab uns Sergey ein komplexeres Problem, welches ich jetzt hier im Einzelnen nicht besprechen werde. Auch hier zeigten alle Gruppen unterschiedliche Ergebnisse, wobei wir kaum über die strukturierte Erfassung der Usecases hinauskamen.

Als letztes zeigte uns Sergey, wie man am besten mit solchen komplexen Anforderungen umgeht: indem man iterativ vorgeht. Man nimmt erst einen Usecase und modelliert ihn, und fügt dann nach und nach die weiteren Usecases hinzu. Dadurch muss man nicht die Gesamtanwendung auf ein Mal verstehen.

Fazit

Insgesamt hat sich die Teilnahme gelohnt. Ich hätte mir gewünscht, dass Sergeys Workshop den ganzen Tag gedauert hätte, so wie es eigentlich auch gedacht war. Die Workshopplanung könnte die Organisation ein wenig verbessern. Die Räumlichkeiten waren gut, das Catering auch. Die Stimmung war auch sehr angenehm, wie beim Developer Open Space.

enjoyed the post?

Tags:

Add comment

  Country flag

biuquote
  • Comment
  • Preview
Loading

About Oliver

shades-of-orange.com code blog logo I build web applications using ASP.NET and have a passion for javascript. Enjoy MVC 4 and Orchard CMS, and I do TDD whenever I can. I like clean code. Love to spend time with my wife and our children. My profile on Stack Exchange, a network of free, community-driven Q&A sites

About Anton

shades-of-orange.com code blog logo I'm a software developer at teamaton. I code in C# and work with MVC, Orchard, SpecFlow, Coypu and NHibernate. I enjoy beach volleyball, board games and Coke.