Verandering is de enige zekerheid. Daarom ontwikkel je informatiesystemen op basis van een architectuur die verandering ondersteunt.
En onvermijdelijke valt niet te vermijden
Tijden hebben we geprobeerd om applicaties te maken die vooral goed waren in één trucje. Maar de wereld verandert continu, er valt niet aan te ontkomen. Dus moet je zorgen dat applicaties kunnen meeveranderen. Veranderingen aan bestaande informatiesystemen zijn vaak duur. Meestal weten we dit niet, omdat we de onderhoudskosten op een algemeen budget boeken, in plaats van op het onderhavige systeem.
Op zoek naar een goede architectuur
Onderhoud op informatiesystemen kan verbeterd worden door een goede architectuur te ontwikkelen waarin onderhoudbaarheid en aanpasbaarheid belangrijke eisen zijn. Bijvoorbeeld door het opdelen van applicaties in apart aanroepbare stukjes functionaliteit. Hoor ik daar iemand Service Oriented Architecture en (web) services roepen?
Grip krijgen op het totale applicatielandschap
Applicaties als onderdeel van een applicatielandschap zien, en het totale applicatielandschap evolueren vormt de basis onder grip op veranderingen hebben. Verandering zit namelijk niet in het totale landschap, maar vooral in de applicaties die eindgebruikers direct ondersteunen bij het uitvoeren van hun taken. Als je applicaties zou ontwikkelen rondom belangrijke domeingegevens, dan blijken veranderingen veel minder frequent op te treden. Een modern applciatielandschap bevat beide soorten applicaties, en koppelt deze applicaties aan elkaar via service-aanroepen.
De bovenstaande opdeling wordt methodisch ondersteund vanuit "De Infrastructurele Benadering", een architectuurmethode van het vroegere Panfox. "Select Perspective" is een, minder bekende, systeemontwikkelmethode die hetzelfde gedachengoed uitdraagt.
Enterprise architectuur, programmamanagement en applicatieportfoliomanagement
Een goed ontwikkelproces helpt bij het realiseren van de bovenstaande applicaties uit het beschreven landschap. Idealiter is dit een iteratief en incrementeel ontwikkelproces. Dit proces zul je wel moeten aansturen vanuit een integrale visie: de visie op het toekomstige applicatielandschap. Enterprise architectuurprocessen als The Open Group Architecture Framework (TOGAF) of Sogeti's Dynamische Architectuur (DYA) helpen om de verschillende veranderprojecten in samenhang te besturen. Dit soort methoden alleen zijn echter niet zaligmakend. Goed programmamanagement en applicatieportfoliomanagement zijn ook belangrijk.
