Van Haren Publishing | Corporate

ISO/IEC/IEEE 42010:2011

1                Introductie

De standaard ANSI/IEEE 1471-2000 is in het jaar 2000 gepubliceerd als resultaat van het werk van de IEEE Architecture Working Group in de periode 1995-2000. Het doel van deze groep was om te komen tot een set referenties, termen en concepten ten behoeve van architectuur en zijn beschrijving, het vastleggen van best practices voor architectuurbeschrijvingen van software-intensieve systemen en te zorgen voor verdere ontwikkeling van dit architectuurdenken. In 2000 is de standaard voor het eerst gepubliceerd en in 2001 door ANSI geaccepteerd als standaard voor de USA. In 2006 adopteerde de International Standardization Organization (ISO) IEEE 1471 als een internationale standaard.

Inmiddels is een nieuwe versie van deze standaard gepubliceerd onder de naam ISO/ IEC/IEEE 42010:2011 – Systems and software engineering — Architecture description. Hiermee komt de vorige versie van deze standaard te vervallen.

Het Institute of Electrical and Electronics Engineers (IEEE) is wereldwijd een van de grootste professionele gemeenschappen gericht op technische aangelegenheden. IEEE telt 360.000 leden; ingenieurs en wetenschappers die actief zijn in de elektrotechniek, computerwetenschappen, engineering en aanverwante disciplines. Om haar doelstelling van technologische vooruitgang te realiseren is IEEE actief in 150 landen, publiceert ze meer dan 30% van de wetenschappelijke literatuur in haar interessegebied en organiseert ze voor haar leden opleidingsprogramma’s om hun kennis en expertise actueel en op een hoog niveau te houden.

De internationale organisatie tot standaardisatie heet in ieder land ISO, de naam stamt uit het Griekse ‘isos’, dat ‘gelijk’ betekent. De ISO-leden, de uiteindelijke vertegenwoordigers van ISO voor hun eigen land, zijn verdeeld in drie categorieën: lidorganen (volledige leden), correspondentleden en abonnee leden. Alleen de lidorganen hebben het stemrecht. Het Nederlands Normalisatie-instituut (NEN, voorheen NNI) is voor Nederland het lidorgaan van het ISO. In België is NBN, Bureau voor Normalisatie de vertegenwoordiging van ISO.

ISO lanceert de ontwikkeling van nieuwe standaarden in reactie op sectoren en belanghebbenden die daaraan een duidelijk vastgestelde behoefte hebben. Een industriële sector of andere belanghebbenden groep communiceert het verzoek inzake een standaard aan één van de ISO nationale afgevaardigden. Deze stelt hierna de verdere proce dure tot ontwikkeling van de standaard in werking via de technische commissies van experts.

De standaard is aanzienlijk gegroeid, van 29 naar 46 pagina’s. De standaard is niet gratis, maar kan online worden aangeschaft [[http://www.iso-architecture.org/ieee1471/pr-42010-2011-12.html]. De standaard wordt door IEEE en ISO gepubliceerd  als:

  • ANSI/IEEE Std 1471-2000, Recommended Practice for Architectural Description, en:
  • ISO/IEC 42010:2007 Systems and Software Engineering—Architectural Description.

IEEE en ISO werken gezamenlijk aan een revisie van de standaard, gebaseerd op gebruikerservaringen van de afgelopen acht jaren.

Zoals het doel en de naam al aangeven is de standaard niet zozeer een methode maar een standaard voor de documentatie van architecturen (architectuurbeschrijvingen), en een reeks inhoudsvereisten bij het voorbereiden van architectuurbeschrijvingen. De standaard is bedoeld om in combinatie met bestaande architectuurmethoden of binnen andere architectuurraamwerken te worden toegepast. Echter, de standaard biedt wel aanknopingspunten voor het correct gebruik van architectuurbeschrijvingen in architectuurtrajecten door expliciet uit te gaan van stakeholders en hun belangen (concerns).

Het zeer bekende metamodel van de standaard is uitgebreid en aangepast met een aantal nieuwe concepten waardoor de standaard ook beter bruikbaar wordt in een enterprise context. Veel discussies in het vakgebied van architectuur hebben plaatsgevonden met deze standaard als uitgangspunt. Het concept is door veel andere architectuurmethoden en architectuurraamwerken overgenomen.

Het feit dat de standaard tegenwoordig breder gedragen wordt, kan worden gezien als een teken van rijpheid van het vak. Immers als er standaarden kunnen worden afgesproken dan is er veel overeenstemming en draagvlak tussen de diverse partijen tot stand gekomen.

Definitie

De definitie van architectuur in ISO/IEC/IEEE 42010:2011 luidt als volgt: ‘The architecture (of a system) consists of the fundamental concepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution’. Deze definitie is breed geaccepteerd door de internationale architectuurgemeenschap.

 

2                Beschrijving

De focus van de standaard ligt op de architectuurbeschrijving, dat wil zeggen de producten die gebruikt worden om de architectuur van een gekozen systeem (een organisatie kan ook worden opgevat als een systeem) te documenteren. De standaard is gebouwd rondom verschillende fundamentele begrippen, zoals belanghebbenden van het systeem (stakeholders), architectuurconcerns, modellen en modeltypen, architectuurviews en viewpoints.

In figuur 1 zijn deze begrippen met hun onderlinge verbanden opgenomen.

NOTE 1 The figure uses the conventions for class diagrams defined in [ISO/IEC 19501].

Figuur 1 Het conceptuele model van een architectuurbeschrijving volgens ISO/IEC/IEEE 42010:2011.

Een architectuurbeschrijving bestaat uit een verzameling views. Een view is toegesneden op een of meerdere belanghebbenden van het systeem. Een view wordt opgesteld conform een viewpoint en besteedt aandacht aan de belangen van deze belanghebbenden. Daarbij wordt ook rekening gehouden met de taal van de doelgroep. Bijvoorbeeld een view voor een businessgebruiker zal geen technische zaken bevatten, terwijl dat bij een view bestemd voor de IT-ontwikkelaar wel het geval zal zijn.

Een view bestaat uit een of meerdere modellen welke overeenkomen met een specifiek modeltype. De notaties, technieken en regels voor het construeren en interpreteren van deze modellen zijn vastgelegd om architecten in staat te stellen een goede view te maken die door de doelgroep gelezen en begrepen kan worden. De notatiewijze, technieken en regels zijn geëxpliciteerd in een architectuurviewpoint. Elke view dient gebaseerd te zijn op een dergelijk viewpoint. Het viewpoint bepaalt hoe de concerns worden geadresseerd. Zolang niet alle concerns (in ten minste één view) zijn uitgewerkt, is de architectuurbeschrijving incompleet.

Een viewpoint kan gezien worden als een manier van kijken naar een systeem. Daardoor zijn de viewpoints herbruikbaar: zij kunnen mogelijk worden toegepast bij andere systemen. In die zin bevatten de meeste architectuurmethoden een set van verplichte of aanbevolen viewpoints. Tevens ligt hierin de link naar de belanghebbenden bij het systeem besloten: een viewpoint addresseert een of meer van hun belangen.

Met behulp van deze eenvoudige principes geeft de standaard voorschriften waaruit een architectuurbeschrijving moet bestaan zodat deze een juiste en voor de doelgroep begrijpelijke vorm heeft.

Naast deze set aan concepten rond architectuurbeschrijvingen is tevens een model op- genomen voor het concept van een architectuurbeslissing. Hiermee wordt een link gelegd naar het werk van architecten (wat in de standaard architecting wordt genoemd):

NOTE The figure uses the conventions for class diagrams defined in [ISO/IEC 19501].

Figuur 2L Het conceptuele model van architectuurbeslissingen volgens ISO/IEC/IEEE 42010:2011.

Op basis van de rationale achter (de ontwikkeling van) een systeem worden beslissingen genomen over de (relaties tussen) architectuurelementen. Deze beslissingen worden genomen op basis van de concerns van belanghebbenden.

Annex

De standaard bevat drie belangrijke annexen die (het gebruik van) de standaard ondersteunen. In de annex A wordt dieper ingegaan op de achtergrond van de ge hanteerde concepten. Zo wordt bijvoorbeeld het concept van concern teruggeleid tot het werk van [Dijkstra, 1974] in de context van software-engineering en wordt het concept viewpoint herleid tot het werk van [Ross, 1977] met betrekking tot ‘structured analysis’. Uit het oogpunt van het beschrijven van de standaard voegt deze annex weinig toe. Echter, het maakt de standaard praktisch bruikbaar doordat de oorsprong en motivering achter de concepten duidelijker wordt.

Annex B biedt ondersteuning bij het viewpoint-concept. Annex B beschrijft een sjabloon waarmee viewpoints op een gestructureerde manier beschreven kunnen worden. Hierin wordt niet alleen aandacht besteed aan de inhoud van de views die op basis van dit viewpoint geconstrueerd kunnen worden, maar tevens aan de geadresseerde concerns van belanghebbenden, en relaties (‘correspondence rules’) tussen views.

Tot slot wordt in Annex C ingegaan op de relatie tussen ISO/IEC/IEEE 42010:2011 en andere standaarden. Ook voor deze annex geldt dat de waarde vooral ligt in het toepassen van de standaard in de praktijk. Zo geeft de link met ISO/IEC 12207:2008 en ISO/IEC 15288:2008 richting aan de manier waarop ISO/IEC/IEEE 42010:2011 toegepast kan worden bij software-engineering.

3                Positionering

In figuur 3 is de methode afgebeeld op het vergelijkingenmodel. De score op de verschillende wijzen wordt hierna toegelicht.

Figuur 3 Positionering van ISO/IEC/IEEE 42010:2011 op het vergelijkingsmodel.

Denkwijze

Verschillende belanghebbenden hebben verschillende belangen (concerns). Deze belangen worden geadresseerd door de keuze en het passend gebruik van architectuurviewpoints. ISO/IEC/IEEE 42010:2011 is bestemd voor gebruik door architecten, hun klanten en organisaties die architectuurbeschrijvingen gaan produceren of moeten interpreteren en begrijpen.

De standaard benadrukt dat alle belanghebbenden met hun belangen een ‘eerste klas’-status hebben als het om architectuurbeschrijvingen gaat. Het is niet aannemelijk dat een vaste set notaties en producten in voldoende mate hieraan tegemoet kan komen. In plaats daarvan geeft de standaard de architect de middelen om viewpoints te ontwikkelen die gebruikt kunnen worden om de belangen van elke belanghebbende te adresseren met de daarbij behorende geschikte wijze van vastlegging.

De standaard is neutraal ten aanzien van verschillende architectuurtypes. Hij is bedoeld als hulp voor de architect bij het identificeren van de belanghebbenden en hun concerns in alle soorten architecturen, zodat de viewpoints kunnen worden gebruikt passend bij het respectievelijke type architectuur.

Beheer- en exploitatiewijze eigenaar

IEEE- EN ISO-standaarden worden om de vijf jaar herzien. De ISO/IEC/IEEE 42010 is ontwikkeld door het ‘Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 7, Software and systems engineering’, in samenwerking met de ‘Software and Systems Engineering Standards Committee of the Computer Society of the IEEE’. Bij de ontwikkeling wordt de standaard gesteund door de gebruikersgemeenschappen en internationale deskundigen. Er is een aparte gebruikersgroep voor de standaard. Lidmaatschap van de gebruikersgroep is vrij en staat open voor alle geïnteresseerden in architectuurbeschrijving. De groep gebruikers concentreert zich op ervaringen met de standaard en de integratie daarvan met andere methoden en raamwerken. Op de website is een bibliotheek met links naar ervaringen en soortgelijke toepassingen

Beheer- en exploitatiewijze gebruiker

De gevolgen voor architecten om de concepten van ISO/IEC/IEEE 42010:2011 toe te passen in hun bestaande manier van werken zijn minimaal. Het kunnen kleine wijzigingen betreffen in de gehanteerde terminologie, het expliciet documenteren van sommige zaken die zij eerder impliciet lieten (zoals belanghebbenden, concerns en views) of aanpassing van bepaalde werkwijzen om architectuurbeschrijvingen te laten voldoen aan de regels van de standaard.

Gebruikersorganisaties kunnen kiezen voor de ontwikkeling of het adopteren van een architectuurraamwerk om te helpen bij het maken van een architectuurbeschrijving. De standaard verstrekt aanvullende notities en voorbeelden. Gebruikers worden verwezen naar andere bronnen voor de invoering van de standaard als onderdeel van een architectuurmethode. Dit geldt ook voor de manier van werken: de standaard is ontworpen om tegemoet te komen aan vele verschillende manieren van werken. Zij kent geen voorschrijvend proces, voorgeschreven architectuurmethode of levenscyclus, maar is bedoeld om te worden gebruikt in combinatie met door de organisatie gemaakte keuzes.

Werkwijze

De standaard richt zich op architectuurbeschrijvingen en niet op de processen die moeten leiden tot deze beschrijvingen. De standaard beschrijft de vereiste inhoud en de onderlinge samenhang binnen een architectuurbeschrijving. Er is dus niet voorgeschreven welke manier van werken een architect moet toepassen om tot de uiteindelijke totstandkoming van die inhoud te komen. Van sommige gebruikersorganisaties is bekend dat zij bestaande architectuurontwikkelprocessen hebben aangepast om te kunnen voldoen aan de beschrijvende elementen van de standaard. Het ontbreken van een werkwijze is goed zichtbaar in het vergelijkingsmodel.

Representatie- en modelleerwijze

De standaard schrijft geen bepaalde techniek of werkwijze voor het modelleren en representeren voor. Per viewpoint kunnen zaken als modelleertechnieken, visualiseringtechnieken, architectuurprincipes, standaarden en richtlijnen zelf worden bepaald.

Ondersteuningswijze

Verschillende technieken, zoals ArchiMate en UML, zijn te gebruiken om architectuurbeschrijvingen te produceren. De standaard schrijft niet één taal voor. Per viewpoint moet bepaald worden welke modeltypen gebruikt worden. Doordat niet een enkele notatiewijze of techniek voorgeschreven wordt, zijn diverse modelleeromgevingen bruikbaar.

Bruikbaarheid

Omdat ISO/IEC/IEEE 42010:2011 een internationale standaard is, kan er geen onderzoek gedaan worden naar de aantallen gebruikers omdat iedereen de standaard kan kopen en aan kan passen zonder dat terug te rapporteren. Vele exemplaren van de standaard zijn verspreid sinds de bekendmaking ervan. Elementen van de standaard zijn opgenomen in boeken, onderzoek en architectuurmethoden over de hele wereld en hebben deze beïnvloed.

Identificatie van de verschillende belanghebbenden en hun architectuurconcerns is een essentieel onderdeel van de toepassing van ISO/IEC/IEEE 42010:2011. Op basis van deze concerns van de belanghebbenden worden architectuurviewpoints, met inbegrip van passende notaties en modeltypen, gekozen. Deze keuze brengt de concerns van de belanghebbenden tot uitdrukking in views. Elke view adresseert een verklarende set van concerns voor een of meer van de belanghebbenden.

ISO/IEC/IEEE 42010:2011 stelt geen eisen aan de architectuurvolwassenheid van een organisatie. De standaard schrijft minimale eisen voor wat betreft de begrijpelijkheid en de juiste vormgeving van de architectuurbeschrijvingen. Organisaties bepalen zelf de viewpoints die gebruikt worden voor het ontwikkelen van architectuur- beschrijvingen. Deze viewpoints kunnen net zo informeel of strikt zijn als gewenst, zolang zij maar voldoen aan de regels in de standaard.

De standaard is gecombineerd met een aantal architectuurmethoden om architectuurbeschrijvingen te maken. De regels in de standaard kunnen worden toegepast om deze werkzaamheden te organiseren en de consistente interpretatie te ondersteunen. Zoals hiervoor reeds opgemerkt, is de gebruikelijke wijze van combineren die via de definitie van architectuurviewpoints.

Er zijn verschillende ingebouwde controles op volledigheid en consistentie die voortvloeien uit het toepassen van de regels in de standaard. Volledigheid wordt bepaald door de keten van relaties van belanghebbenden tot concerns, tot viewpoints tot views die de standaard voorschrijft. Binnen views zijn volledigheidstesten afhankelijk van de gekozen viewpoints. De standaard geeft geen gereedschap voor het gebruik, bij de creatie of de analyse van de architectuurbeschrijvingen.

4                Conclusie

ISO/IEC/IEEE 42010:2011 is een standaard die zich geheel richt op het maken van architectuurbeschrijvingen. Heel belangrijk daarbij is dat deze beschrijving zich richt op en de taal spreekt van de diverse belanghebbenden en aansluit op hun belangen (concerns). Bovendien wordt een scherp onderscheid gemaakt tussen de architectuur en de architectuurbeschrijving. Daarnaast biedt ISO/IEC/IEEE 42010:2011 een aantal breed geaccepteerde definities. Als zodanig dient iedere architect kennis te nemen van deze begrippen en de achterliggende concepten. De standaard biedt weinig houvast om als zelfstandige methode gebruikt te worden. Dit blijkt overduidelijk uit de mapping op het vergelijkingenmodel. Daartegenover staat dat in veel andere methoden de inzichten van ISO/IEC/IEEE 42010:2011 zijn ingebouwd.

Wegwijzer voor methoden bij enterprise-architectuur – 2de herziene druk