Service Oriented Architecture / Opinie
SOA-ketentesten: de zwakste schakel
Ik ben betrokken bij diverse soa-test automation-projecten. In veel van deze projecten speelt er naast alle aspecten rond het testen nog iets anders een rol. Voordat je kan beginnen met testen heb je een testomgeving nodig. Dat begint natuurlijk met de nodige hardware en software. Van ijzer, OS tot en met (middleware) software, alles moet aanwezig, geïnstalleerd en geconfigureerd zijn voor je met testen kan beginnen.
Als de applicatie die je gaat testen nu monolithisch is, dan is het opzetten van een testomgeving een klus, maar over het algemeen goed te doen. Als je in een volledig gedistribueerde op soa-principes gebaseerde omgeving een testomgeving nodig hebt, dan is dat wel even een heel ander verhaal. Niet alleen is de hoeveelheid hardware en software die je in een dergelijke omgeving nodig hebt vele malen meer dan in een monolithische omgeving. Het inregelen, configureren en met elkaar verbinden van alle componenten is ook nog eens veel complexer. Het vervelende is dan uiteraard ook nog eens dat het uitvoeren van een integratietest of een ketentest vaak alleen maar zin heeft als alle componenten die hier een rol in spelen allemaal aanwezig zijn en goed (samen)werken. De keten is natuurlijk zo sterk als de zwakste schakel.
Ook hier kan virtualisatie een rol spelen. Zoals het virtualiseren van hardware helpt bij het inrichten van een omgeving (denk aan VMware), zo helpt virtualisatie van de applicatielogica bij het opzetten van een ketentest. Neem als voorbeeld een zojuist ontwikkelde webapplicatie die gebruik maakt van een mainframe via een webservice. Om de webapplicatie te kunnen testen is het mainframe nodig. Door nu de webservice die de verbinding vormt met het mainframe virtueel te maken, is de webapplicatie te testen zonder dat daarvoor een mainframe nodig is. Gebruikelijk is dat ontwikkelaars voor dit doel een stub schrijven, een klein programmatje dat de webservice implementeert en op bij elke vraag een standaard antwoord geeft. Nadeel is dat er totaal geen flexibiliteit in dit antwoord zit en dat als de interface wijzigt je als tester een programmeur nodig hebt om de stub aan te passen. Door het inzetten van een testplatform voor de implementatie van deze virtuele services is het opeens wel mogelijk voor een tester om een flexibele, zelf aan te passen en van logica voorziene service te maken die in de plaats van het mainframe gebruikt kan worden tijdens het testen. Zelfs in een loadtest-scenario is de virtuele service te gebruiken, omdat deze notie heeft van de reactietijd van het mainframe (via een soort zelflerend systeem) kan je een loadtest uitvoeren van de webapplicatie zonder een duur en onhandig mainframe nodig te hebben. Virtuele services beperken zich uiteraard niet tot webservices, allerlei componenten lenen zich ervoor om gevirtualiseerd te worden, denk bijvoorbeeld aan messages queue's, ESB's en databases.
Virtuele services komen in twee smaken: zelflerend aan de hand van een 'record and playback' scenario (ideaal voor services waarvan de achterliggende infrastructuur niet altijd beschikbaar is, zoals een mainframe of een thirdparty service), de tweede variant is een 'service generator', op basis van een interface-beschrijving (bijvoorbeeld een WSDL) wordt een service-implementatie gegenereerd die een tester dan zelf zonder programmeren kan voorzien van logica (een lijst met vaste input en output waardes of een bepaald dynamisch gedrag). Hiermee wordt een keten opeens wel testbaar, terwijl zonder deze voorzieningen de keten heel vaak door de zwakste schakel onderbroken wordt.
- 23:13 Integration as a service
- 12:30 Architecturen voor het nieuwe jaar
- 09:59 2009 krijgt het Febo-model voor ICT
- 13:16 De (e-)overheid en haar vermogen om te veranderen
- 13:34 Politiek zit BPM/SOA-projecten vaak dwars
- 11:36 Modelleringstaal voor SOA begin 2009 klaar
- 10:26 Inter Access levert ontwikkelstraat aan Apeldoorn
- 07:20 SOA: de hype is op zijn retour
- 11:30 Licentiemodel leidt tot perverse klantrelatie
- 09:13 Webdiensten vormen betere middleware
Het data center als ruggengraat van de onderneming
Het verminderen en centraliseren van data centers en werknemers die op grotere afstand van elkaar en de data centers gaan werken: het zijn twee tegengestelde trends in het bedrijfsleven die de druk op de WAN-connectiviteit van de onderneming vergroten. Deze whitepaper gaat in op de uitdaging van...... Download nu
Technologische beloften versus business risico’s
De Service Oriented Approach (SOA) heeft grote voordelen voor bedrijven die het op de juiste wijze implementeren. Het brengt echter ook risico’s met zich mee. Om deze te vermijden moeten de architecten zich al in een vroeg stadium van de management implicaties van SOA bewust zijn.... Download nu
Meer SOA whitepapersComputable Events - SOA
Computable organiseert verschillende events met praktijkgerichte informatie over actuele onderwerpen in de ICT:
SOA Seminar | 25-06-09Coca-Cola verkort tijd interne begripsvorming
10-07 13:40 Tijdens de grote SAP-conferentie Sapphire in mei 2008 in Berlijn heeft Alexander Grobe, innovatiespecialist bij Coca-Cola, een presentatie gehouden over zijn ervaringen met ARIS...
Meer soa praktijkSOA: de hype is op zijn retour
09-12 07:20 Een Service Oriented Architectuur (soa) is een methode om onderdelen van verouderde bedrijfssystemen flexibel beschikbaar te stellen voor interne en externe medewerkers via een...
Meer soa achtergrondIntegration as a service
06-01 23:13 Cloud computing, software as a service (SaaS) en platform as a service zijn al bekende concepten die gestaag populariteit winnen op de markt. Wat volgt is integration as a service.
Meer soa opinieJBoss Operations Network vernieuwd
15-10 14:40 Red Hat introduceert JBoss Operations Network 2.1. Hiermee breidt Red Hat zijn soa-aanbod uit. De nieuwe versie van JBoss Operations Network biedt support en maakt remote...
Meer soa productenBekijk de leveranciers op het gebied van SOA.

