Recensie Agile Design

9789492618375-480x600Een van de principes van het Agile Manifesto luidt: “The best architectures, requirements, and designs emerge from self-organizing teams”. Het bestaansrecht van een design wordt echter door veel organisaties in twijfel getrokken. Op het moment dat meerdere teams aan één product werken wordt het hebben van een globaal ontwerp al duidelijker maar ook indien in de ideale situatie slechts één autonoom team verantwoordelijk is voor een product of service is er nog steeds behoefte aan een design. Een design is essentieel voor het borgen van kennisoverdracht, ondersteuning van beheer en het nakomen van wet- en regelgeving. En dit is precies waar het in het boek Agile Design Best Practices – Een set van best practices voor een evolutionair design van informatiesystemen geschreven door Bart de Best over gaat.

In het boek staan twee aspecten centraal. Het veranderparadigma en de design pyramid.

Het veranderparadigma laat zien dat bij een verandering van werkwijze ook het delen van gemeenschappelijke uitgangspunten vereis is. Het is belangrijk dat er eerst een synchronisatie van denkbeelden plaatsvindt. Dit betreft zowel de denkbeelden van de business case (beeld), het eigenaarschap (macht), de werkwijze (organisatie) als de benodigde mensen en middelen (resources). De auteur projecteert dit op zowel een agile aanpak, een waterval aanpak alsmede op een uitgewerkte casus.

QRC (Agile Design, 200504) v1.0

Downloaden: QRC (Agile Design, 200504) v1.0

De design pyramid geeft een classificatie van onderdelen waaruit een design moet bestaan. De non agile design pyramid komt kort aan bod en de ideal design pyramid bestrijkt de hoofdmoot van het boek.

Een non agile design pyramid beschrijft de architectural, functional, technical, requirements, test en code view van een traditionele aanpak. Hierbij wordt in het voortraject de meeste tijd gestopt en naarmate je verder in de tijd bent wordt er steeds minder tijd gestopt in de volgende views en lopen de views vanuit de business (wat) naar de techniek (hoe). Deze pyramide wordt gevisualiseerd door een omgekeerde pyramide.

Het boek beschrijft in detail alle lagen van een ideal design pyramid waarbij de lagen wederom vanuit de business (wat) naar de techniek (hoe) lopen maar waarbij de inspanning omgekeerd is. Aan het begin minder inspanning en naarmate men verder in het project is steeds meer. De lagen en bijbehorende op te leveren producten, die ieder in een hoofdstuk aan bod komen, zijn:

  • Business view: system context diagram en value stream canvas
  • Solution view: use case diagram, system building blocks (Informatie, applicatie en technologie) en value stream mapping
  • Design view: use cases bestaande uit use case narrative en use case scenario
  • Requirements view: Behavior Driven Development (BDD) feature files (Given-When-Then format)
  • Test view: Test Driven Development (TDD) met testframework, testcases en testdatasets
  • Code view: code as documenten of documentation as code of continuous documentation.

In de bijlagen onder andere aan tabel van agile tools inclusief verwijzingen naar websites.

Conclusie. Het boek geeft veel praktische handvatten hoe een agile design vormgegeven kan worden. Als rode draad loopt het ontwerp van een koffiemachine door het boek. Bij iedere laag van de ideal design pyramid krijgen we de bijbehorende  ingevulde op te leveren producten. Verder per laag verschillende tips en trucks (trucs of tricks?).

Bestellen: Agile Design

2 responses to “Recensie Agile Design

  1. Pingback: Quick Reference Cards in 2020 | Henny Portman's Blog

  2. Pingback: Overview of my year 2020 book reviews | Henny Portman's Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s