Ik heb net het themanummer van Bits&Chips over productiviteit achter de kiezen. Een onderwerp dat blijkens de gepubliceerde artikelen aan heel wat andere onderwerpen is gerelateerd. Het sluit daarin naadloos aan bij een artikel dat Barry Boehm in februari schreef in System Engineering, het lijfblad van Incose. Boehm is een man die al ruim veertig jaar meedraait aan de top van beide disciplines. Hij is onder meer de geestelijke vader van het spiraalmodel voor softwareontwikkeling.
In het artikel beschrijft hij een achttal trends voor de komende twintig jaar op het gebied van software-intensieve systemen en hun invloed op software- en systeemengineeringprocessen. De centrale boodschap is dat systemen en organisaties steeds complexer worden en we onze ontwikkelprocessen en organisaties moeten inrichten op kwaliteit voor de eindgebruiker. Niet erg vernieuwend als je het vergelijkt met andere recente publicaties, maar dat was Boehms doel ook niet. Hij gebruikt de acht ontwikkelingen om een nieuwe evolutie van het spiraalmodel te introduceren. Dat betekent dat hij dezelfde zaken onderkent die de laatste jaren ook door de grote Agile-promotors zijn genoemd en dat hij deze in zijn eigen procesmodel probeert onder te brengen. Interessant hieraan is dat hij door zijn lange loopbaan en zijn vele relaties uit tientallen maneeuwen aan ervaring kan putten en daaruit zaken meeneemt die een groot deel van de Agile-gemeenschap in mijn ogen bewust probeert te negeren.
Het Agile Manifesto (www.agilemanifesto.org) poneert een viertal stellingen waarmee de basis onder alle software-engineeringprocessen van de afgelopen veertig jaar wordt weggehaald. Deels terecht, want de processen blijken in de praktijk inmiddels te rigide en te tijdrovend, maar de aanhangers van het Manifesto slaan door in de andere richting. Zo geeft het Agile Manifesto als tweede stelling: ’Working software instead of documentation‘. Een punt waar ik de nodige vraagtekens bij heb. Een ton aan documentatie is geen werkend systeem, maar een miljoen regels code is niet zonder meer overdraagbaar aan een nieuw team van software-engineers.