IT applicatie ontwerpproblemen worden binnen TOGAF gepositioneerd in de informatiesysteem architectuur ontwerpstappen. Naast de bedrijfskundige stappen binnen de TOGAF benadering komen architectuur aspecten voor applicatieontwerp vooral sterk naar voren in de informatiesysteem architectuur fase. Aspecten zijn bijvoorbeeld: software ontwerp, data ontwerp, service ontwerp, hergebruik en applicatie performance aspecten.
De informatiesysteem architectuur binnen TOGAF valt uiteen in de aspecten:
- data architectuur en
- applicatie architectuur
Het kennisdomein rondom de informatiesysteem architectuur is het gebied wat afkomstig is vanuit de informatiekunde. Ofwel de traditionele IT kennisgebieden. Om een informatiesysteem architectuur doordacht te ontwikkelen zijn ruwweg de volgende methoden te onderscheiden:
- Data gecentreerde architectuur; Het voorbeeld hiervan is natuurlijk SAP. SAP biedt een zeer rijke verzameling geïntegreerde applicaties, gebouwd rondom een centrale data architectuur. Maar een data gecentreerde architectuur kan ook opgebouwd worden vanuit verschillende applicaties, waarbij data uitwisseling over een enterprise service bus (ESB) plaats vindt.
- Bericht georiënteerde architectuur; EDI of XML gebaseerde architecturen worden vaak gekenmerkt door een bericht georiënteerde aanpak. Het interactie model bij deze architectuur is vaak gebaseerd op uitwisseling van informatie via een asynchrone structuur.
- Service georiënteerde architectuur; Deze benadering wordt vaak teruggevonden in de opbouw tussen applicaties en applicatiecomponenten. De verschillende applicatiecomponenten bieden afgebakende services die voor meerdere applicaties te gebruiken zijn. Via een procesmodelleringstool (Bijvoorbeeld IBM WebSphere Business Process modeler) zijn dan gemakkelijk meerdere applicatiecomponenten tot een nieuwe applicatie te smeden voor ondersteuning van een nieuwe processtap.
- Informatie georiënteerde architectuur; Een informatie georiënteerde architectuur is vaak opgebouwd vanuit een canonical datamodel met duidelijke regels voor data uitwisseling. Het kern paradigma binnen deze aanpak is de concentratie op de informatie die via services moet worden uitgewisseld.
- Model gebaseerde architectuur. Binnen deze aanpak staat de context waarbinnen informatie moet worden uitgewisseld centraal. Informatie uitwisseling wordt vanuit ontwerp contextafhankelijk opgezet.
Naast deze basale benaderingen zijn in architectuurland nog vele methoden en methodieken bedacht. Moderne termen als semantische architectuuraanpak, cloud enabled architectuur, open architectuur of bpm 2.0 hebben allemaal goede elementen die het denken naar goede oplossingen om bedrijfsproblemen met IT op te lossen kunnen versnellen en versimpelen. Toch is het verstandig om uiteindelijk het doel van een informatiesysteem architectuur aanpak niet uit het oog te verliezen. Namelijk het op een gestructureerde manier ontwerpen van een IT oplossing. Een goed begrip van mogelijkheden en moeilijkheden rondom datamodellering en applicatieconstructie aan de hand van services is hierbij cruciaal.
Voor het ontwerpen van webservices is bijvoorbeeld kennis van de W3C web services architecture stack handig. Ondanks de simpele visualisatie van een web services architectuur stack, liggen bij implementatie echter nog veel vaak context afhankelijke problemen op de loer. Het betrouwbaar sturen van berichten over internet is vaak complexer dan vooraf gedacht. Helaas wordt dit door veel bedrijven pas daadwerkelijk goed onderkend bij het analyseren van fouten en klachten van eindgebruikers.
In de dagelijkse praktijk is de keuze van de gebruikte architectuurbenadering voor applicatieontwerp vaak niet direct zichtbaar gemaakt. Toch loont het om expliciet te maken wat de dominante ontwerpregels zijn bij het opstellen van een architectuur voor een informatiesysteem. Dit bepaalt namelijk de directe bruikbaarheid van het systeem in een bredere context en geeft richting aan de wijze waarop uitbreidingen tot stand kunnen komen.