Rol van de IT auditor bij agile systeemontwikkeling

Maat: px
Weergave met pagina beginnen:

Download "Rol van de IT auditor bij agile systeemontwikkeling"

Transcriptie

1 Rol van de IT auditor bij agile systeemontwikkeling Auteurs Jan Rodenburg & Vincent Vlaanderen Versie 1.1 Datum Mei 2009 Instituut Vrije universiteit Amsterdam Team 911

2 Colofon Titel Rol van de IT auditor bij agile systeemontwikkeling Auteurs Drs. Ing. J. (Jan) Rodenburg & V. (Vincent) Vlaanderen Opleiding Postgraduate IT (EDP)-audit opleiding Scriptiebegeleider Drs. R. (Rob) Christiaanse RA Faculteit Faculteit der Economische Wetenschappen en Bedrijfskunde (FEWEB) Universiteit Vrije Universiteit Amsterdam Werkgevers Collis Achmea Vastgoed Bedrijfsbegeleiders Ir. D.J. (Derk-Jan) de Grood drs. J.H. (Hans) Evers File Name 911_Rol_IT_auditor_bij_agile_systeemontwikkeling_Rodenburg_Vlaanderen_v1.1 Status Definitief Distributie Scriptiecoordinator VU, secretariaat VU PGO IT-audit, scriptiebegeleider, Achmea Vastgoed, Collis Versie historie Versie Datum Status Auteurs maart 2009 Definitief Jan Rodenburg Vincent Vlaanderen mei 2009 Definitief Jan Rodenburg Vincent Vlaanderen 2009 Jan Rodenburg & Vincent Vlaanderen Het is toegestaan (gedeelten van ) dit document te verveelvoudigen mits voorzien van een uitdrukkelijke bronvermelding. Status: Definitief 2/60 Versie: 1.1

3 SAMENVATTING IT-projecten hebben de naam om onbeheersbaar te zijn, in de zin van het niet voldoen aan de verwachtingen of een substantiële overschrijding van tijd en middelen mee te brengen. Een van de belangrijkste oorzaken hiervoor is dat het inherent is aan systeemontwikkeling dat de requirements pas gedurende het project exact bepaald kunnen worden. De traditionele, watervalgebaseerde, ontwikkelmethoden hebben hier onvoldoende antwoord op gevonden. Agile systeemontwikkeling gaat er wel bij voorbaat van uit dat requirements gedurende het ontwikkelproces zullen evolueren. Daarnaast wordt bij Agile door middel van korte iteraties, beheerst door middel van expliciete timeboxes, steeds een release van hoge kwaliteit opgeleverd die direct valideerbaar is voor de acceptant van het systeem. Op basis van deze validatie kunnen vervolgens verbeteringen worden voorgesteld. Om deze korte cycli mogelijk te maken en toch een hoge kwaliteit te kunnen leveren wordt voornamelijk gesteund op de kracht van geoliede samenwerking tussen gekwalificeerde mensen, processen en ondersteunende tools in één team. Daarbij is voortdurende samenwerking met de acceptanten vanuit de opdrachtgever essentieel en heeft het projectmanagement voornamelijk een faciliterende rol, in plaats van een controlerende rol. De organisatie zal echter al een bepaald niveau van volwassenheid moeten hebben om Agile ontwikkeling succesvol te kunnen implementeren in organisatie en processen. In dit referaat zetten wij de verschillen tussen de processen van traditionele watervalmethode en Agile ontwikkeling uiteen. Aangezien IT-systemen en systeemontwikkelingsprojecten een steeds substantiëler deel van de kosten van een organisatie vormen is beheersing ervan belangrijk. Het verschaffen van zekerheid aan het management omtrent de beheersing van de systeemontwikkelingsprojecten zal dan ook voor ITauditors een belangrijker werkveld worden. Daarbij beoordeelt de auditor de beheersing van het proces dat ten grondslag ligt aan de totstandkoming van het softwareproduct en de effectiviteit van de beheersing. Vanuit de traditionele systeemontwikkeling is er een referentiemodel opgesteld, dat de auditor een handreiking geeft in het opstellen van het normenkader voor het uitvoeren van een audit. Gezien het grote verschil tussen de processen en bijbehorende risico s van traditionele ontwikkeling en die van Agile ontwikkeling, is het bestaande referentiemodel van het IT-Governance Institute ontoereikend om te hanteren bij een IT audit ten aanzien van een Agile ontwikkelingsproject. Belangrijkste vraag voor IT-auditors is of Agile ontwikkelingsprocessen te beheersen en te beoordelen zijn. Wij hebben de beheersingsmaatregelen geformuleerd die benodigd zijn voor de toetsing of het Agile ontwikkelingsproject adequaat beheerst wordt en de randvoorwaarden vervuld zijn om dit proces te faciliteren. Het Agile ontwikkelproces kan dan optimaal tot zijn recht komen. De auditor zal zich daarbij ook voornamelijk richten op de afweging van de juiste mix aan randvoorwaarden voor het Agile ontwikkelproject. Dit wordt onder meer bepaald door de typologie van de organisatie en de wijze waarop de organisatie in staat is de Agile werkwijze toe te passen. De door ons voorgestelde beheersingsmaatregelen voor een Agile ontwikkelproject kunnen door auditors worden gebruikt in hun referentiemodel. Ook uit de praktijktoetsing door middel van interviews onder IT-managers en ITauditors worden de beheersmaatregelen voor een groot deel onderschreven. Wel blijven er vragen over ten aanzien van standaardisatie en brede toepasbaarheid, wat een benadering vanuit een typologie gedachte bevestigt. Verder hebben de interviews ook aanvullende aandachtspunten opgeleverd, die bijdragen aan een verdere vergroting van inzicht ten aanzien van de beheersing van agile ontwikkelingsprojecten. Tenslotte zouden auditors moeten proberen om de audit zo aan te pakken dat de efficiency en effectiviteit van het Agile ontwikkelproces zo min mogelijk wordt verstoord. Status: Definitief 3/60 Versie: 1.1

4 VOORWOORD Voor u ligt onze scriptie waarin verslag wordt gedaan van ons onderzoek naar de rol van de IT-auditor in systeemontwikkelingsprojecten die gebruik maken van Agile ontwikkelmethoden. Deze scriptie is het resultaat van de afronding van onze postdocorale IT (EDP)-audit opleiding aan de Vrije Universiteit te Amsterdam. Vanuit onze professie zijn wij beide geïnteresseerd in de moderne methoden van systeemontwikkeling en vanuit het IT-audit vakgebied tevens naar de maatregelen tot beheersing van systeemontwikkelingsprojecten. Deze componenten samen hebben tot ons onderzoek geleid. Het referaat is mede mogelijk gemaakt door onze werkgevers, Collis B.V. en Achmea Vastgoed B.V. Graag willen wij zowel Collis als Achmea Vastgoed hiervoor bedanken. In het bijzonder willen wij de begeleiders vanuit onze werkgevers, Derk-Jan de Grood en Hans Evers, bedanken voor het adviseren en meelezen. Verder bedanken wij Sara Schüttenhelm voor de tekstuele review. Gedurende de onderzoeksperiode hebben wij een buitengewoon goede samenwerking gehad met onze scriptiebegeleider vanuit de Vrije Universiteit: Rob Christiaanse. Wij willen Rob dan ook bijzonder bedanken voor zijn inspanningen en goede begeleiding en adviezen met betrekking tot ons onderzoek en deze scriptie. Verder bedanken we een ieder die ons geïnspireerd heeft tot het volgen en volbrengen van de postdoctorale IT (EDP)-audit opleiding. Veel leesplezier! Amsterdam, maart 2009 Jan Rodenburg Vincent Vlaanderen Status: Definitief 4/60 Versie: 1.1

5 INHOUDSOPGAVE SAMENVATTING...3 VOORWOORD...4 INHOUDSOPGAVE KADER EN VRAAGSTELLING INLEIDING PROBLEEMSTELLING VRAAGSTELLING EN ONDERZOEKSVRAGEN AFBAKENING LITERATUURONDERZOEK INLEIDING REFERENTIE BELANG VAN REQUIREMENTS KWALITEITSMODELLEN RAAMWERK ONTWIKKELPROCESSEN ONTWIKKELMETHODEN TRADITIONELE ONTWIKKELMETHODE AGILE ONTWIKKELMETHODE DE HUIDIGE TREND IN TOEPASSING VAN AGILE REFERENTIEMODEL SDLC ASSURANCE ROL SDLC RISICO S CONFRONTATIE TYPOLOGIEBEPALING MANAGEMENT CONTROL RAAMWERK RANDVOORWAARDEN VOOR AGILE ONTWIKKELING GENERAL IT CONTROLS GEVOLGEN VOOR RISICO S SYSTEEMONTWIKKELING REFERENTIEMODEL AGILE ONTWIKKELING INLEIDING RISICOANALYSE BEHEERSINGSMAATREGELEN INTERPRETATIE VAN BEHEERSINGSMAATREGELEN AANDACHTSPUNTEN VOOR DE AUDIT TOETSING IN DE PRAKTIJK INLEIDING VRAGENLIJST RESULTATEN INTERVIEWS ANALYSE VAN DE INTERVIEW RESULTATEN...45 Status: Definitief 5/60 Versie: 1.1

6 5.1 INLEIDING THEORIE PRAKTIJK ANALYSE CONCLUSIE INLEIDING CONCLUSIE AANBEVELINGEN DISCUSSIE...48 REFERENTIES...50 BIJLAGEN...53 A.1 SDM...53 A.2 EXTREME PROGRAMMING...56 A.3 SCRUM...58 Status: Definitief 6/60 Versie: 1.1

7 1 KADER EN VRAAGSTELLING 1.1 Inleiding Systeemontwikkelingsprojecten lopen uit of leveren niet altijd het gewenste resultaat. In die zin mislukt een groot deel van de systeemontwikkelingsprojecten. Naar de oorzaak van dergelijke mislukkingen zijn vele onderzoeken gedaan, waaruit blijkt dat de uitkomst van een systeemontwikkelingsproject door velerlei factoren wordt bepaald. Uit een onderzoek van Capers Jones (Capers Jones, 1994), genaamd Assessment and Control of Software Risks blijken de volgende oorzaken van het falen van systeemontwikkelingsprojecten; de grootste oorzaak is het onvoldoende of op niet heldere wijze definiëren van eisen aan het eindproduct. De tweede oorzaak is het verschuiven van de scope en de producteisen gedurende het project. Gevolg van beide bovengenoemde oorzaken is dat het opgeleverde softwareproduct niet voldoet aan de verwachtingen in de geplande eindfase. Deze bevindingen worden ook ondersteund in recentere onderzoeken van onder andere Forrester, waarin gesteld wordt dat 71% van de fouten het gevolg zijn van slechte requirements (Schwaber et al., 2006). Door herstelwerkzaamheden vallen de kosten hoger uit dan begroot en wordt het project op een later moment afgerond dan gepland. In het ergste geval wordt het project voortijdig gestaakt. Om een eind te maken aan bovengenoemde problematiek, is men vanaf het begin van de éénentwintigste eeuw meer evolutionaire ontwikkelmethoden gaan benoemen en gebruiken. Deze staan nu bekend onder de naam Agile. De term Agile, die onder meer alert, levendig en behendig betekent, verwijst naar de snelle, flexibele wijze waarop ingespeeld wordt op tijdens het ontwikkelproces gewenste veranderingen. De Agile filosofie en methodiek met haar verschillende varianten worden steeds meer ingezet in plaats van de traditionele ontwikkelmethoden, omdat deze methoden de producteisen gedurende het systeemontwikkelingsproject inzichtelijk maken. De traditionele ontwikkelmethode wordt ook wel de watervalmethode genoemd. Waar traditionele systeemontwikkeling wordt gekenmerkt door een strikte overgang van fasen binnen de systeemontwikkeling, richt de Agile ontwikkelmethodiek zich op het tot stand te brengen softwareproduct, waarbij directe communicatie belangrijker is dan het opstellen van documentatie. De verantwoordelijkheid voor het eindproduct ligt bij het individu binnen het projectteam. Een Agile ontwikkelproject wordt opgedeeld in kleine eenheden met een eigen planning en levenscyclus en een specifieke timebox om de voortgang te bewaken. De Agile ontwikkelmethodiek promoot een klein projectteam samengesteld uit verschillende functies, zoals ontwerpers, programmeurs, testers en een vertegenwoordiger van de opdrachtgever. Deze laatste ziet erop toe dat elke deeloplevering voldoet aan de eisen van de opdrachtgever. Voorbeelden van de Agile ontwikkelmethoden zijn Extreme Programming (XP)en Scrum. Een voorbeeld van traditionele systeemontwikkeling is de methodiek SDM. 1.2 Probleemstelling De auditor is in staat om zekerheid te verschaffen ten aanzien van het proces door de inrichting van interne controlemaatregelen vast te stellen en de effectiviteit ervan vast te stellen. Door de groeiende complexiteit en grootte van IT projecten is er een toenemende behoefte aan zekerheid en daarmee is een belangrijke rol weggelegd voor de IT-auditor. De IT-auditor moet in staat zijn om tijdens systeemontwikkelingsprojecten aanvullende zekerheid te verschaffen ten aanzien van de beheersing van het project en met name ook het beoordelen in hoeverre risico s gerelateerd aan systeemontwikkeling, onderkend en gemitigeerd worden. De IT-auditor kan ingezet worden gedurende het systeemontwikkelingsproject, zodat tijdens dat traject bijsturing kan plaatsvinden. De IT-auditor kan ook gevraagd worden om vlak voor of na de release datum van het systeem een onderzoek uit te Status: Definitief 7/60 Versie: 1.1

8 voeren om daarmee de opdrachtgever aanvullende zekerheid te verschaffen. IT-auditors hebben ook de toename van het gebruik van Agile ontwikkelmethoden opgemerkt. Agile ontwikkelmethoden worden toegepast in een organisatie met een op vertrouwen gebaseerde omgeving in contrast met een op controle gebaseerde omgeving. Onduidelijk is of deze nieuwe methodiek invloed heeft op de wijze waarin de IT-auditor zijn werkzaamheden uitvoert om tot een oordeel te kunnen komen. 1.3 Vraagstelling en onderzoeksvragen De volgende vraag staat in dit onderzoek centraal: Wat betekenen de Agile ontwikkelmethoden voor de Assurance rol van de IT-auditor bij een systeemontwikkelingsproject? De centrale vraag van dit onderzoek is of de aandachtspunten voor een IT-auditor veranderen indien er bij systeemontwikkeling een Agile ontwikkelmethodiek wordt toegepast. De doelstelling van dit onderzoek is om een raamwerk te verschaffen als handvat voor de IT-auditor bij een opdracht tot verschaffing van zekerheid over de kwaliteit van een ontwikkelproces dat gekenmerkt wordt door een Agile ontwikkelmethodiek. Uit voornoemde vraagstelling volgen de volgende onderzoeksvragen: 1.1 Wat is een systeemontwikkelingmethode? 1.2 Wat zijn de kenmerken van een traditionele ontwikkelmethode? 1.3 Wat zijn de kenmerken van een Agile ontwikkelmethode? 1.4 Welke rol heeft de IT-auditor bij het verschaffen van zekerheid omtrent systeemontwikkeling? 1.5 Welke aandachtspunten staan centraal in een IT-audit op een systeemontwikkelingsproject dat gekenmerkt wordt door een traditionele ontwikkelmethode? 1.6 Welke aandachtspunten staan centraal in een IT-audit op een systeemontwikkelingsproject gekenmerkt door een Agile ontwikkelmethode? 1.7 Wat zijn de belangrijkste verschillen tussen de aandachtspunten voor een IT-audit bij systeemontwikkeling gekenmerkt door een Agile ontwikkelmethode in vergelijking met een traditionele ontwikkelmethode? 1.4 Afbakening In het hiernavolgende onderzoek wordt ingegaan op het kader waarbinnen software wordt ontwikkeld. Met methoden voor systeemontwikkeling wordt bedoeld de processtructuur die is gericht op de ontwikkeling van software. De processen binnen de levenscyclus van systeemontwikkeling zijn methoden en standaarden voor het verbeteren en het beheersen van ontwikkelprocessen, ondersteunen van processen en het managen van processen gedurende de levencyclus van systeemontwikkeling. Wij hanteren breed geaccepteerde normen zoals ISO/IEC 12207, een standaard voor het ontwikkelproces van software. Bij ontwikkelmethoden maken we onderscheid tussen de traditionele systeemontwikkeling en agile systeemontwikkeling. Wij beperken ons daarbij tot de meest gebruikte traditionele ontwikkelmethode SDM en Agile ontwikkelmethoden Extreme Programming (XP) en SCRUM. Daarnaast laten we de problematiek die speelt bij uitbesteding van systeemontwikkeling buiten het onderzoek. Er zijn meerdere soorten opdrachten die een IT-auditor met betrekking tot systeemontwikkeling en softwareproducten kan uitvoeren. De opdracht kan zijn een technische audit waarbij ontwikkelde softwareproducten een test ondergaan. Anderzijds kan de auditor ook een belangrijke adviesfunctie of een Quality Assurance functie vervullen gedurende het ontwikkelproject. In dit onderzoek beperken wij ons tot de volgende opdrachtvorm; de assurance rol van de IT-auditor ten aanzien van de benoeming en beheersing van risico s binnen een systeemontwikkelingsproject. Wij richten ons uitsluitend op de beoordeling van de beheersing van het proces van tot stand komen dat ten grondslag ligt aan het van het softwareproduct binnen het systeemontwikkelingsproject. Primaire kwaliteitsaspecten voor toetsing van de auditor zijn beheersbaarheid, efficiency en effectiviteit, waarbij secundair ook de Status: Definitief 8/60 Versie: 1.1

9 kwaliteitsaspecten beschikbaarheid, integriteit en vertrouwelijkheid en controleerbaarheid, worden meegenomen Als uitgangspunt voor het formuleren van normatief kader hanteren wij de richtlijn voor reviews op de System Development Life Cycle (SDLC) van Information Systems Audit and Control Association (ISACA, 2003). Status: Definitief 9/60 Versie: 1.1

10 2 LITERATUURONDERZOEK 2.1 Inleiding In dit hoofdstuk wordt ingaan op de theoretische aspecten van onze vraagstelling en de bijbehorende onderzoeksvragen. In paragraaf 2.2 gaan wij nader in op raakvlakken van normenkaders en kwaliteitsmodellen met systeemontwikkeling. Daarin laten we allereerst zien dat de eisen die de opdrachtgever aan de software stelt (hierna: de requirements) een belangrijke invloed hebben op het slagen van een systeemontwikkelingsproject. Ook worden besproken de verschillende normenkaders die bij systeemontwikkeling van toepassing zijn. Voorts worden drie aspecten van systeemontwikkelingsprojecten besproken: de programmastrategie, het projectmanagement en het proces van de systeemontwikkeling. In dit onderzoek gaan wij in op het derde aspect: de systeemontwikkeling. Wij bespreken de verschillen maar ook de overeenkomsten tussen traditionele ontwikkelingmethode en Agile ontwikkelmethoden. In de daaropvolgende paragraaf wordt de rol van de IT-auditor in systeemontwikkelingsprojecten besproken en we stellen het kader vast waar de auditor gebruik van maakt in de beoordeling volgens de traditionele ontwikkelmethode. Wij starten met het belang van requirements voor de uiteindelijke slagingskans van een project. 2.2 Referentie Belang van requirements De kwaliteit van de requirements bepaalt in hoge mate het succes van IT-projecten. Deze conclusie blijkt uit diverse onderzoeken. Zo stelt Forrester dat 71 procent van de fouten het gevolg zijn van slechte requirements (Schwaber et al., 2006). Ook uit eerdere onderzoeken zoals die van Capers Jones (Capers Jones, 1994) blijkt dat de voornaamste reden voor het falen van systeemontwikkelingsprojecten slecht gedefinieerde en incomplete software-eisen zijn. De Standish Group doet in zijn Chaos Report sinds 1994 elke twee jaar onderzoek naar de oorzaken van het falen van systeemontwikkelingsprojecten. Dit onderzoek geeft aan dat gemiddeld 50 procent van de fouten gerelateerd zijn aan de requirements (Standish Group, 2004). Daarnaast heeft het Software Engineering Institute van Carnegie Mellon University uit Californië, een autoriteit op het gebied van systeemontwikkeling, onderzoek gedaan naar de oorzaken van fouten in software. Daaruit blijkt dat 42 tot 64 procent van de fouten ontstaan door slechte requirements (Firesmith, 2003). Voorbeelden van slechte kwaliteit van requirements (Easterbrook et al., 1998): Onjuistheden; Weglating; Inconsistentie; Dubbelzinnig taalgebruik; Verkeerde aannames; Ontoereikendheid; Slechte traceerbaarheid. In bovenstaande opsomming wordt echter niet gesproken over voortdurend veranderende requirements gedurende het project. Deze zijn enerzijds ook het gevolg van slechte requirements, aan de andere kant hebben requirements de neiging om veel veranderingen te ondergaan, voornamelijk Status: Definitief 10/60 Versie: 1.1

11 ook als de ontwikkeling een lange doorlooptijd kent en daarmee de buitenwereld met zijn behoeften en verwachtingen ook mee verandert. Wanneer de requirements niet goed zijn opgesteld heeft dit effect op de volgende activiteiten in het systeemontwikkelingsproces. Ongeacht hoe goed er gewerkt wordt in het vervolgtraject, als de requirements, de allereerste input, onjuist, onvolledig of niet consistent zijn, is de kans dat het eindproduct voldoet klein (Arendsen et al, 2008). Slechte requirements hebben hoge herstelkosten en uitloop van projecten tot gevolg. Onder meer Boehm heeft onderzoek gedaan naar de gevolgen van fouten in een project en de gevolgen van de fouten in de levenscyclus van een softwareproduct. Boehm geeft in zijn onderzoek uit 1988 aan dat het oplossen van fouten uit requirements in de bouwfase tien keer duurder is dan in de requirementsfase en in onderhoud vijftig tot tweehonderd keer duurder (Boehm, 1988). Ook McConnell stelt dat het tien tot honderd keer duurder is een fout in de requirements na de requirementsfase te herstellen (McConnell, 2004). Het opstellen van requirements is een losstaand proces. The Booch Methode is de objectgeoriënteerde methode in systeemontwikkeling voor het analyseren, modelleren en documenteren van systeem eisen (Booch, 1994). Deze methode is een leidraad om te komen van de gestelde eisen tot een implementatie. De methode onderscheidt twee verschillende fasen. De eerste fase is de analyse, waarbinnen het probleem geanalyseerd wordt en een object georiënteerd model wordt gepresenteerd van het probleem gebied. Daarna volgt een ontwerpfase, waarbij gekeken wordt op welke manier alle functies van het systeem kunnen worden uitgevoerd. De ontwerpfase leidt tot een uiteindelijke architectuur die nodig is om het systeem te implementeren. In dit proces zijn meerdere belanghebbenden betrokken in het te realiseren systeem die ieder hun eigen referentiekader bezitten. Er zijn meerdere niveaus van requirements te onderkennen waarbij ieder niveau bedoeld is voor een groep belanghebbenden. De requirements van verschillende belanghebbenden zijn in drie types te onderscheiden: gebruikers eisen (quality in use); product eisen (external quality attributes); product component eisen (internal quality attributes). Deze requirements worden gedurende het requirementsproces steeds concreter. De requirements zijn dus een belangrijk aandachtspunt voor het zorgdragen dat ook daadwerkelijk het gewenste product gebouwd gaat worden in een ontwikkelproject. Als antwoord op de geconstateerde lage requirements kwaliteit is er een verschuiving gaande van de traditionele ontwikkelmethode naar Agile ontwikkelmethoden. De Agile ontwikkelmethoden zijn voorbereidend in die zin dat requirements gedurende de ontwikkelingsfase van een product veranderen en pretenderen er voor te kunnen zorgen dat het systeem wordt ontwikkeld waar de eindgebruiker daadwerkelijk tevreden mee is. De manier waarop invulling wordt gegeven aan de input van requirements is een wezenlijk andere bij Agile ontwikkelmethoden, dan bij de traditionele ontwikkelmethode. Voor de IT-auditor is het van belang te weten wat het gebruik van de Agile ontwikkelmethoden betekent voor de interne controlemaatregelen in het ontwikkelproces en de effectiviteit van het stelsel van maatregelen. Als gevolg van slechte requirements en falende projecten bestaat een toenemende behoefte aan zekerheid verschaffing gedurende het systeemontwikkelingsproject, vooral bij de grote IT projecten. Het is de IT-auditor die deze rol op zich moet nemen. Echter de IT-auditor wordt momenteel bij grote ITprojecten nog nauwelijks ingeschakeld (Matthijse, 2009). Dus op dat gebied is er voor de IT-auditor nog veel te winnen. Status: Definitief 11/60 Versie: 1.1

12 2.2.2 Kwaliteitsmodellen Behalve slechte kwaliteit van requirements zijn er ook andere redenen voor het mislukken van systeemontwikkelingsprojecten. Bedrijven stellen daarom diverse beheersingsmaatregelen op om het risico van het mislukken van een systeemontwikkelingsproject tegen te gaan. Voor dergelijke beheersingsmaatregelen bestaan verschillende normenkaders. In 1987 is een comité opgericht door de International Organisation for Standardisation (ISO) en de International Electrotechnical Commission (IEC) voor het opstellen van een standaard voor software life cycle processen. De bedoeling was om met deze standaard te voorzien in een behoefte om dezelfde taal te spreken bij het ontwerpen en beheren van software. Enerzijds zijn er normen die de organisatie helpen om de productkwaliteit te verhogen, anderzijds zijn er normen die de organisatie meer controle over het proces geven met als resultaat een verhoogde kwaliteit van het product. Bij het confirmeren aan een norm geeft de organisatie een signaal in control te willen zijn. Voor het bepalen van de kwaliteit van het softwareproduct is er een kwaliteitsnorm ISO/IEC (2005). Een norm voor het inrichten van processen met de bijbehorende procesbeschrijvingen en levenscyclus is ISO/IEC (2007) en ISO/IEC (2007). Voor het beoordelen van het volwassenheidsniveau van systeemontwikkeling binnen een organisatie is er ook een ISO norm bekend onder ISO/IES 15504/SPICE en het CMMi model. In deze paragraaf zijn deze uiteengezet als referentiekader voor de IT-auditor. Kwaliteit softwareproduct ISO norm ISO/IEC Software product Quality Requirements and Evaluation (SQuaRE) is ontwikkeld als antwoord op de toenemende behoefte aan een verbeterde en uniforme normering van drie in elkaar overlopende kwaliteitsprocessen, te weten: specificatie van product eisen, meten en evalueren. Het doel van ISO/IEC is om degenen, die verantwoordelijk zijn voor het ontwerpen en ontwikkelen van softwareproducten, bij te staan met instrumenten voor het opstellen van specificaties en evaluatie van kwaliteitseisen (Suryn et al., 2003). ISO/IEC25000 is een vervolg op de ISO/IEC9126 (2001) en het QUINT model, waar in de literatuur naar verwezen wordt. ISO/IEC is een model dat de kwaliteit van softwareproducten bepaalt aan de hand van de volgende kwaliteitsaspecten. Functionaliteit; Betrouwbaarheid; Bruikbaarheid; Efficiency; Onderhoudbaarheid; Portabiliteit. Deze hoofdaspecten zijn onderverdeeld in subaspecten welke op hun beurt weer zijn onderverdeeld. De aspecten kunnen gecontroleerd worden en zijn meetbaar. Hiermee is een kwaliteitsmodel voor een softwareproduct op te zetten. De eisen die aan de hand van de kwaliteitsaspecten worden gesteld zijn zowel functioneel als niet-functioneel. De kwaliteit van de software die tot stand komt binnen het systeemontwikkelingsproject heeft invloed op de onderhoudbaarheid en het functioneren van het systeem later in de productiefase (van Biene- Hersey, 1996). General IT controls omvatten de algemene procedures rond toegangsbeveiliging en onderhoud van software voor specifieke toepassingen. Als het de software aan kwaliteit ontbreekt, kunnen de general IT controls niet goed werken, hetgeen risico s oplevert voor de betrouwbaarheid en continuïteit van de gegevensverwerking. Als er bijvoorbeeld in de ontwikkelfase van een softwareproduct onvoldoende aandacht is voor beveiliging aspecten kan dit consequenties hebben voor het beveiligingsmanagement binnen de productiefase van een systeem. Status: Definitief 12/60 Versie: 1.1

13 Kwaliteit ontwikkelproces ISO norm ISO/IEC Life Cycle Management System Life Cycle Processes is een raamwerk dat bestaat uit een beschrijving van de levenscyclus van systemen en procesbeschrijvingen met bijbehorende terminologie. De processen worden gedurende de levenscyclus gebruikt voor het beheer tijdens de verschillende levensfasen van het systeem. Systemen zijn door mensen gemaakt en worden door mensen gebruikt om diensten te bieden in gedefinieerde omgevingen ten behoeve van gebruikers en andere belanghebbenden. De levenscyclus van een systeem begint bij een concept van de behoefte voor een systeem en gaat door tot realisatie, productie, ingebruikname, ondersteuning en uiteindelijk het uit gebruik nemen van het systeem. In 1995 is de ISO/IEC international standaard gepubliceerd. De norm ISO/IEC 12207:2007, Software Life Cycle Processes is een compleet raamwerk dat alle processen beschrijft die een organisatie naar alle waarschijnlijkheid zal opstellen, ten behoeve van de bouw van een complete en efficiënte System Development Life Cycle. Volwassenheidsmodel voor ontwikkelprocessen Een ontwikkelproces voor software is een stelsel van goedgedefinieerde procedures dat leidt tot de ontwikkeling van softwareproducten (Zahran, 1998). Ontwikkelprocessen worden verbeterd door het toepassen van training, kwaliteitsbewaking, meting, ontwerp, code reviews en wijzigingenbeheer (Dekleva et al., 1997). ISO norm ISO/IES (Process Improvement and Capability determination, voorheen bekend onder de werknaam SPICE ) is een model voor de beoordeling van ontwikkelprocessen. Een ander belangrijk algemeen model voor de bepaling van volwassenheid van ontwikkelprocessen is CMMi (Capability Maturity Model Integration), ontwikkeld door het Software Engineering Institute (SEI) van de Carnegie Mellon University in de Verenigde Staten. CMMi beschrijft de principes en de praktijken die aan een volwassen bedrijfsproces ten grondslag liggen (Cannegieter et al, 2007). CMMi helpt organisaties hun processen te verbeteren door middel van een evolutionair pad. Dit pad vertrekt vanuit georganiseerde processen naar volwassen, gedisciplineerde processen. Net als ISO/IEC 12207:2007 richt CMMi zich op de levenscyclus van het proces. Het CMMi model wordt gebruikt voor een stapsgewijze verbetering van de procesvaardigheid. Het model onderkent vijf niveau s: Niveau Naam Criteria 1 Initieel Geen eisen, het ontwikkelproces verandert van moment tot moment. 2 Beheerst Basisbeheersing van processen en projecten zijn ingericht. 3 Gedefinieerd Processen zijn organisatiebreed gedefinieerd en onderhouden. 4 Kwantitatief Processen worden gestuurd op basis van kwantitatieve gegevens. beheerst 5 Optimaliserend De organisatie verbetert haar processen continue. Elk CMMi niveau heeft criteria die naarmate het niveau hoger wordt uitgebreider zijn. De procesvaardigheid van een organisatie wordt beter geacht naarmate aan meer criteria wordt voldaan. Dit resulteert in een vermindering in doorlooptijd en kosten van processen en resulteert in verhoogde productkwaliteit. In de systeemontwikkeling literatuur wordt vaak het verband gelegd tussen de mate van volwassenheid van het proces en de kwaliteit van het product (e.g., Harter et al. 2000, Harter et al. 2003, Krishnan et al. 2000, Herbsleb et al. 1997). In volwassen, gedisciplineerde processen zit meer consistentie en discipline omdat er bijvoorbeeld reviews zijn verricht op het ontwerp, de code en de configuratie (Krishnan et al., 1999). Reviews in het ontwerp zorgen voor minder fouten in de softwareproducten doordat op een eerder moment verschillen geconstateerd worden tussen de requirements, het functioneel ontwerp, het technisch ontwerp, de code zelf en de testontwerpen. Aldus worden inconsistenties of fouten tussen de verschillende tussenproducten en de uiteindelijke systeemeisen van de eindgebruikers eerder geïdentificeerd in de SDLC (Harter et al., 2003). Onderzoek (Harter et al., 2000) geeft aan dat een toename van proces volwassenheid leidt tot een hogere product kwaliteit in de vorm van minder fouten per geschreven code regels, zoals ook in onderstaande figuur wordt weergegeven; Status: Definitief 13/60 Versie: 1.1

14 Figuur: Mate van procesvolwassenheid ten opzichte van productkwaliteit (Harter et al., 2000) Indien procesverbetering leidt tot een hogere productkwaliteit van de software is de verwachting dat minder herstelwerk verricht hoeft te worden in de infrastructuur die ondersteunend is voor systeemontwikkeling. Met de daarmee te realiseren besparingen van de kosten van de infrastructuur worden de uitgaven voor procesverbeteringen ruimschoots gecompenseerd Raamwerk ontwikkelprocessen Het raamwerk voor ontwikkelprocessen voor software bestaat uit drie pijlers (Hettigei, 2007): Programmastrategie; Projectmanagement; System Development Life Cycle. Programmastrategie De programmastrategie bepaalt het programmamanagement. Een programma bestaat uit meerdere projecten die er samen op gericht zijn een of meerdere doelstellingen te bereiken. De programmastrategie houdt verder in: - Strategische keuze voor programmamanagement; - Sturingsfilosofieën; - Succesvol inrichten van programma s; - Relatie lijn- en programmaorganisatie. Daarnaast bepaalt het programmamanagement welke ontwikkelmethode er gebruikt wordt in een project. Projectmanagement De levenscyclus van het product begint bij een idee en eindigt bij het buitengebruikstelling van het product. Het systeemontwikkelingsproject maakt deel uit van deze levenscyclus. Hoe het product zich verhoudt tot het project is weergegeven in onderstaand figuur: Status: Definitief 14/60 Versie: 1.1

15 Figuur: OGC (2002) Een goede projectmanagementmethode richt zich op de onderdelen van de projectlevenscyclus van specificatie tot en met overdracht. De termen project en projectmanagement worden door Van Onna (Van Onna et al, 2008) als volgt omschreven: Een project is een tijdelijke organisatievorm die nodig is om een uniek en vooraf gedefinieerd product te maken of resultaat te behalen op een vooraf afgesproken tijdstip, gebruikmakend van vooraf gestelde middelen. Professioneel projectmanagement is het op projectbasis uitvoeren van die activiteiten die nodig zijn om de juiste mensen, op de juiste tijd, op basis van het verkrijgen van de juiste informatie, de juiste activiteiten te laten uitvoeren om te komen tot het juiste doel: de juiste producten die de businesscase ondersteunen. Dit zijn producten die voldoende bijdragen aan de doelstellingen van de organisatie. Een belangrijk aspect van projectmanagement is de inschatting van de projectrisico s. Maatregelen tegen dergelijke risico s zijn onder te verdelen in beheersingsmaatregelen en borgingsmaatregelen. Beheersingsmaatregelen richten zich op een goede procesgang van het project. Borgingsmaatregelen zorgen ervoor dat er voldoende kwaliteit in het product aanwezig is en dat de organisatie met het product uit de voeten kan. Borgingsmaatregelen staan ook bekend als Quality Assurance. Binnen een systeemontwikkelingsproject is een goede inrichting van het projectmanagement essentieel voor het slagen van een project. Best practices dienen daarvoor als leidraad. De IT-auditor kijkt naar de inrichting van het projectmanagement alvorens hij zal kijken naar de SDLC processen. In dit onderzoek gaan wij niet verder in op het projectmanagement aangezien daarover genoeg literatuur voor handen is. Wij beperken ons tot het schetsen van randvoorwaarden waar een goed projectmanagement voor systeemontwikkeling aan moet voldoen: Maatregelen ten aanzien van projectmanagement (Hettigei, 2007): Projectmanagement methodiek; Betrokkenheid van de business bij het project; Betrokkenheid van het projectmanagement met belanghebbende; Betrokkenheid IT medewerkers met de eindgebruikers; Monitoring gedurende het project op scope, planning en budget; Tussentijdse reviews. Aan de volgende aspecten ten aanzien project risico management zal invulling gegeven dienen te worden; Project risico management proces; Status: Definitief 15/60 Versie: 1.1

16 Organisatorische aansluiting op het project vanuit de business; Adequate training en communicatie; Service niveaus zijn gedefinieerd; Proces voor de project oplevering is gedefinieerd; Plan voor exceptie en roll back scenario. Wij benadrukken dat een goed ingericht projectmanagement en goed functionerende project monitoring, essentieel zijn voor het succes van een systeemontwikkelingsproject. Binnen dit onderzoek beperken we ons tot de beschrijving en verdieping van de ontwikkelmethodiek. System Development Life Cycle System Development Life Cycle (SDLC) is een geformaliseerde informatiesysteem ontwikkelmethode. Siau en Tan (Siau en Tan, 2005) definiëren dit als volgt: Een systematische benadering voor het uitvoeren van een fase in informatiesysteemontwikkeling bestaande uit aanbevolen fasen, technieken, procedures, tools en documentatie. SDLC is een van de eerste methoden die een geformaliseerde, gestructureerde methode voor het bouwen van informatiesystemen voorschrijft. De traditionele SDLC heeft zijn oorsprong in de 60er jaren bij het ontwikkelen van grootschalige informatiesystemen bij grote organisaties. Het SDLC concept is in latere jaren uitgewerkt in verschillende ontwikkelingsmethoden. SDLC heeft fundamentele fasen die van essentieel belang zijn voor een ontwikkelaar. De primaire procesfasen zijn o.a. planning, systeem analyse, ontwerp, invoering en onderhoud. Deze zijn weergegeven in onderstaande figuur. Figuur: weergave levenscyclus van een informatiesysteem Het management hanteert een SDLC als beheersingsmaatregel om controle te houden over de ontwikkeling. Het opdelen van een project in meerdere fasen vermindert de complexiteit van planning, monitoren en controle. SDLC is beschreven in ISO/IEC Er bestaan verschillende invullingen van een SDLC. De oudste SDLC, bekend als de waterval methode, gebruikt de output van een fase als input voor een opvolgende fase. Een bekend voorbeeld van de waterval methode is System Development Methodology (SDM) die in en verder in bijlage A.1 wordt beschreven. De specifieke ontwikkelingsfase kan zich in de verschillende stadia van de SDLC bevinden: Nieuwbouw Toevoegen van nieuwe componenten Herbouw van een bestaand systeem Status: Definitief 16/60 Versie: 1.1

17 Voor de IT-auditor is dit van belang aangezien bij een productioneel systeem het aanpassen van de processen een intensievere taak is dan bij nieuwbouw waarbij meer tijd en middelen geïnvesteerd moeten worden om maatregelen, naar aanleiding van een IT audit, geïmplementeerd te krijgen (Van Biene-Hershey, 1996). 2.3 Ontwikkelmethoden In deze paragraaf beschrijven we de traditionele systeemontwikkelingen en Agile systeemontwikkeling. In de bijlagen wordt dat verder geïllustreerd aan de hand van beschrijving van verschijningsvormen van beide methoden Traditionele ontwikkelmethode De vormen van traditionele systeemontwikkeling die ook bekend staan als de watervalmethode bestaan uit de volgende meest voorkomende fasen: 1. Analysefase (met definitiestudies en analyserapporten als eindproduct); 2. Ontwerpfase (met functionele en technische ontwerpen als eindproduct); 3. Bouwfase (met broncode als eindproduct); 4. Testfase (met werkende broncode als eindproduct); 5. Integratiefase (eindgebruikers gaan ermee aan de slag); 6. Beheer en onderhoud fase (het systeem wordt draaiend gehouden). Figuur: Fasen van SDM systeemontwikkeling (college Christiaanse, april 2008) De systeemontwikkeling gaat volgens een watervalmethode, waarbij het ene proces het andere sequentieel opvolgt in een rechtlijnige beweging. Dit is als volgt te illustreren: allereerst worden de requirements opgesteld, wanneer deze volledig zijn afgestemd en geaccordeerd, gaat men over naar de volgende fase, het ontwerp. Waterval systeemontwikkeling houdt in dat pas naar een andere fase overgegaan kan worden indien de voorgaande volledig is afgerond en geperfectioneerd. Waterval systeemontwikkeling gaat ervan uit dat de tijd die aan de eerste fasen wordt gespendeerd tot een betere efficiency leidt verder in het proces. Immers een ontwerpfout leidt tot een niet werkend product waardoor er tijd opgaat aan herstelwerkzaamheden. Traditionele systeemontwikkeling benadrukt tevens het belang van documentatie, zoals requirements en ontwerp documentatie en source code. De reden hiervoor is dat teamleden gedurende het project het team kunnen verlaten met het gevaar dat kennis verloren gaat. Verder levert de traditionele systeemontwikkeling een gestructureerde aanpak van systeemontwikkeling, het model is lineair gericht, de fasering is eenvoudig te begrijpen en geeft duidelijke mijlpaalproducten. De verschillende fasen om tot een eindproduct te komen worden vaak ook in een V-model weergegeven. Status: Definitief 17/60 Versie: 1.1

18 In bijlage A.1 beschrijven wij in detail de traditionele systeem ontwikkelmethode SDM. Ervaringen met SDM In een artikel uit het Information Center Quarterly uit 1991 wordt Larry Runge als volgt geciteerd (Runge, 1991): De traditionele ontwikkelmethode werkte erg goed in de tijd dat wij processen automatiseerden voor kantoorpersoneel en accountants. Het werkt niet zo goed, of helemaal niet wanneer wij informatie systemen bouwen voor ontwikkelde gebruikers helpdesk personeel, experts die problemen proberen op te lossen of voor managers die een bedrijf in de Fortune 100 proberen te leiden. Uit dit citaat is af te leiden dat de traditionele ontwikkelmethode voor het ontwikkelen van bepaalde systemen niet geschikt is als beheersingsmaatregel. De traditionele ontwikkelmethode is een solide, goed begrepen model wat hoort bij een stabiel, herhaalbaar en lage complexiteit project. De software-eisen zijn stabiel en gefixeerd. Het ontwikkeltraject is precies te voorspellen. Problemen ontstaan indien er veranderingen optreden in de requirements gedurende het project. Het fundament van een traditionele ontwikkelmethode is namelijk de requirements waarop men trapsgewijs bouwt. Er is weinig tot geen speelruimte voor veranderingen in de uitgangspunten voor ontwikkeling. Elke fase wordt immers afgesloten met een "contract" voor de volgende fase. Indien de eisen veranderen moeten er dus stappen teruggezet worden wat een tijdsrovende zaak is. Een ander probleem met de watervalmethode is dat het opstellen van het functionele ontwerp en het technisch ontwerp een zodanig groot deel van de looptijd van het project in beslag nemen dat de gehele looptijd om tot een werkende applicatie te komen lang is, waardoor de kans groot is dat requirements achterhaald zijn. Verder is ook het voortschrijdend inzicht in het project moeilijk te verwezenlijken Agile ontwikkelmethode Agile is een geformaliseerde methode die ontstaan is uit ontevredenheid over de resultaten van veel systeem ontwikkelingtrajecten. De basis van de Agile methode is Iteratieve en evolutionaire systeemontwikkeling. Volgens Larman (Larman, 2005) is iteratieve systeemontwikkeling en evolutionaire systeemontwikkeling een ontwikkeling die al voor 1960 zijn oorsprong kent. Iteratieve systeemontwikkeling is een methode om software te bouwen. De levenscyclus van software bestaat uit een aaneenschakeling van iteraties, waarbij elke iteratie een miniproject is waarin met betrekking tot een afgebakende functionaliteit een groot aantal fasen uit de levenscyclus van software wordt doorlopen, zoals requirements analyse, ontwerp, ontwikkeling en testen. De doelstelling van één iteratie is dat de afgebakende functionaliteit compleet en foutvrij wordt opgeleverd en beschikbaar is voor de eindgebruiker. Elke iteratie beoogd een hoge mate van kwaliteit code op te leveren en elke iteratie is niet een prototype maar een onderdeel van het te ontwikkelen systeem. Een iteratie kan ook als doel hebben om functionaliteit te verwijderen of performance te verbeteren. Een voorbeeld van een iteratieve systeemontwikkeling is Rapid Application Development (RAD). Evolutionaire systeemontwikkeling houdt in dat requirements, de planning en de oplossing evolueren over de verschillende iteratieve releases. Dit is een andere insteek dan bij traditionele systeemontwikkeling, waarbij de requirements zoveel mogelijk van te voren zijn bepaald en deze vervolgens worden bevroren tijdens de ontwikkelingfase. Dit betekent overigens niet dat gedurende één iteratie de functionaliteit voortdurend aan verandering onderhevig is, maar na elke iteratie is het wel mogelijk om functionaliteit te wijzigen of toe voegen. Wanneer een iteratie is gestart worden er geen wijzigingen geaccepteerd van externe belanghebbenden in het project. Dit betekent dat aan het begin van elke iteratie de prioriteiten vastgesteld worden en hierbij wordt veelal een risicogebaseerde benadering gehanteerd. Lean Thinking Status: Definitief 18/60 Versie: 1.1

19 Lean Thinking heeft zijn oorsprong bij autofabrikant Toyota met haar Toyota Production System (TPS). Toyota is daarmee in staat kwalitatief hoogwaardige producten te maken en op tijd te leveren. Zij hanteren het principe van TPS in het zoveel mogelijk elimineren van uitgaven voor resources en activiteiten die geen waarde hebben voor het eindproduct. Toyota is daarmee zo succesvol dat het bedrijf is uitgegroeid tot één van de grootste autofabrikanten. Mede door het succes van Toyota worden de principes van Lean Thinking ook buiten de automobielindustrie toegepast. Lean Thinking kent 7 vormen van verspilling, die uit de processen geëlimineerd dienen te worden: 1. Overproductie 2. Wachten 3. Transport 4. Extra processtappen 5. Voorraad 6. Beweging 7. Correcties In feite staat Lean Thinking aan de basis van Agile (Harvey, 2004). Agile Manifesto Agile systeemontwikkeling is geformaliseerd in 2001 door 17 vooraanstaande ontwikkelaars die de toen bestaande afgeslankte methodieken gecombineerd hebben tot een methodiek Agile. De term Agile betekent onder meer alert, levendig en behendig. Dit verwijst naar de snelle, flexibele wijze waarop ingespeeld wordt op veranderingen tijdens het ontwikkelproces. De groep heeft een Agile Manifesto opgesteld voor Agile systeemontwikkeling. De groep onderscheidt vier niveaus van afspraken: 1) Er is behoefte aan een ontwikkelmethode voor software die is ontworpen om te reageren op veranderingen gedurende systeemontwikkelingsprojecten. Binnen het Manifesto is daarom voor de term Agile gekozen. De term Agile staat voor snel kunnen denken en reageren op een overwogen, gecoördineerde manier (Koch, 2005). 2) Het Agile Manifesto heeft de volgende kernwaarden: Belangrijk processen en tools gedetailleerde documentatie contractonderhandeling strikt het plan volgen Belangrijker individuen en interactie werkende software samenwerken met de klant Reageren en inspelen op verandering Het Agile Manifesto benadrukt dat zij de linker waarden zeker niet onbelangrijk vinden, maar de nadruk op de rechter kolom is om een statement te maken. Deze kernwaarden hebben echter wel gezorgd voor het ontstaan van misverstanden en verschillen van interpretatie. 3) Het Agile Manifesto gaat uit van een set principes die bovenstaande waarden verder uitdiepen: Onze hoogste prioriteit is het tevreden stellen van de klant door snelle en continue levering van waardevolle software. Sta open voor veranderende eisen, zelfs laat in de ontwikkeling. Agile processen benutten veranderingen om de concurrentiepositie van de klant te verstevigen; Lever regelmatig werkende software af, van eenmaal in de paar weken tot eenmaal in de paar maanden, met de voorkeur voor vaker afleveren; Medewerkers van het bedrijf en ontwikkelaars werken gedurende het project dagelijks samen; Bouw projecten rond gemotiveerde individuele personen en biedt ze de omgeving en ondersteuning die ze nodig hebben en vertrouw erop dat ze het werk gedaan krijgen; De efficiëntste en effectiefste methode voor het overdragen van informatie binnen een ontwikkelteam is directe communicatie; Werkende software is de belangrijkste maat voor voortgang; Status: Definitief 19/60 Versie: 1.1

20 Agile processen bevorderen duurzame ontwikkeling. De sponsors, ontwikkelaars en gebruikers moeten in staat zijn om langdurig een constant tempo aan te houden; Continue aandacht voor technische topkwaliteit en goed ontwerp vergroot de agiliteit; Eenvoud (de kunst om de hoeveelheid werk die niet hoeft te gebeuren, te maximaliseren) is het kenmerk van het ware; De beste architecturen, vereisten en ontwerpen komen voort uit zelforganiserende teams; Met enige regelmaat bekijkt het team hoe het effectiever kan zijn, stelt het werk bij en past zijn gedrag overeenkomstig aan. 4) Elke Agile methode mag zijn eigen inhoud bepalen De teamleden binnen een Agile project bepalen zelf hoe zij het proces vorm geven binnen de kaders die de specifieke ontwikkelvariant voorschrijft. De keuzes voor tools bepalen zij zelf. Net als Iteratieve systeemontwikkeling hanteert Agile een regelmatige oplevering van software om in te kunnen spelen op de veranderende requirements. Agile gebruikt echter timeboxen waarbij elke iteratie een gelijke duur heeft. Daarnaast is bij Agile de opdrachtgever permanent vertegenwoordigd in het project. De Agile Alliance [ vertegenwoordigt de gebruikersgemeenschap die de belangen van Agile vertegenwoordigt en beheert. Toepassing Agile De mate van inzetbaarheid van Agile ontwikkeling hangt af van een aantal factoren. Een van de betrokkenen bij de totstandkoming van Agile, Alistair Cockburn (Cockburn, 2006) hanteert hiervoor een aantal principes: 1. Interactieve, directe en fysieke communicatie is de goedkoopste manier voor het uitwisselen van informatie; 2. Te strikte toepassing van de toegepaste methode is kostbaar; 3. Grotere teams hebben striktere discipline nodig; 4. Grotere plichtpleging is toepasbaar in projecten met een hogere kritieke factor; 5. Verhoging van feedback en communicatie verlaagt de behoefte aan tussentijdse opleveringen; 6. Discipline, vaardigheden en het begrijpen van de processen, formaliteit en documentatie; 7. Mogelijkheid van gelijktijdige ontwikkeling door verschillende teams. 1. Interactieve, directe en fysieke communicatie is het goedkoopste kanaal voor het uitwisselen van informatie Dit principe gaat er vanuit dat mensen die frequent bij elkaar zitten en overleggen makkelijker en efficiënter tot een ontwikkeld softwareproduct komen. Naarmate de omvang van het project groeit, zal interactieve en directe communicatie moeilijker worden waardoor de kosten voor communicatievoorzieningen stijgen, terwijl de kwaliteit daalt. Dit heeft vervolgens ook zijn uitwerking op de moeilijkheidsgraad van het ontwikkelen van de software. Uit een onderzoek van professor Allen (Allen, 1987) blijkt dat communicatie tussen partijen dramatisch daalt wanneer de fysieke afstand tussen partijen meer is dan 50 meter. Dit impliceert verder dat het management er naar zal moeten streven om kleine teams te formeren, waarbij persoonlijk contact voorop staat. 2. Te strikte toepassing van de toegepaste methode is kostbaar Alle activiteiten buiten het ontwikkelen van software hebben hun weerslag op de geïnvesteerde tijd en budget van de leden van het team. Wanneer een team een beperkte grootte heeft, volstaat een lichtere vorm van een methode en hardheid van werkwijze om tot een goed resultaat te komen. De activiteiten die uitgevoerd worden om de methode strikt te volgen kunnen aardig oplopen en dit neemt de aandacht weg van waar het eigenlijk om gaat; het komen tot een kwalitatief goed product dat voldoet aan de wensen van de business. 3. Grotere teams hebben striktere discipline nodig Status: Definitief 20/60 Versie: 1.1

21 Met elke verhoging van de bezetting van het ontwikkelteam is het moeilijker voor de teamleden om te bepalen waar anderen zich mee bezig houden en te zorgen dat hun activiteiten aansluiten. Dit betekent dat er behoefte ontstaat aan extra coördinatie en communicatie. De hoeveelheid tijd die daarin geïnvesteerd moet worden kan de activiteiten van systeemontwikkeling zelfs gaan overschrijden. 4. Grotere plichtpleging is toepasbaar in projecten met een hogere kritieke factor. Naarmate de potentiële schade groter wordt is het gerechtvaardigd om hogere ontwikkelkosten te maken om de kans op fouten te verkleinen. De genomen stringentere maatregelen beperken de toleranties waarbinnen het systeem ontwikkeld wordt. 5. Verhoging van feedback en communicatie verlaagt de behoefte aan tussentijdse opleveringen Tussentijdse opleveringen zijn producten zoals een project plan, requirements documentatie, ontwerpdocumentatie en testplannen. Deze documenten hebben het karakter dat ze allen binnen het projectteam gebruikt worden ter bevordering van de communicatie binnen het team. Een werkende release van software zegt vaak meer en op basis daarvan kan de business beter een oordeel geven over in hoeverre de software voldoet aan de eisen. Het projectteam profiteert daar op meerdere manieren van. Er zijn minder reviews nodig van de requirements; de ontwerpers kunnen snel het resultaat zien van hun ontwerpbeslissingen en testers kunnen per iteratie een korte test uitvoeren of steunen op de geïntegreerde testcases in de code. 6. Discipline, vaardigheden en inzicht in plaats van processen, formaliteit en documentatie Beheersingmaatregelen hebben pas echt toegevoegde waarde als deze ook effectief worden toegepast. Discipline betekent dat een persoon kiest ervoor om op een consistente manier te werken, terwijl het proces het volgen van instructies inhoudt. Discipline heeft de voorkeur aangezien het teamlid zelf kiest om op een consistente manier zijn werk te doen in plaats van voorgeschreven instructies uit te voeren. De kennis van teamleden in een project kan groot worden. Teamleden zijn op de hoogte van alle ins en outs, weten op welke wijze ze met elkaar communiceren, weten welke persoon welke informatie bezit en weten welke overwegingen hebben gespeeld bij bepaalde besluiten. Inzicht heeft dan ook meer om het lijf dan alleen documentatie. Documentatie is slechts een deel van de kennis. 7. Mogelijkheid van gelijktijdige ontwikkeling door verschillende teams. Het is afhankelijk van de situatie of ontwikkeling gelijktijdig door meerdere teams kan plaatsvinden, namelijk zolang de ontwikkeling zich niet in een kritieke fase bevindt. Het programmamanagement moet in de keuze van de ontwikkelmethode voor het project rekening houden met de verschillende aandachtspunten. Het is niet een kwestie van Agile tegen traditionele ontwikkeling, maar het is situatie afhankelijk welke methode het meest geschikt is. De consequenties van genoemde principes zijn; 1. Het toevoegen van mensen aan een project brengt extra kosten mee; 2. Het verhogen van de teamgrootte en de daarmee gepaard gaande aanvullende controlemaatregelen zorgen niet voor de effectiviteit die men zou verwachten; 3. Teams verbeteren, niet vergroten. Door toename van het aantal teamleden wordt de communicatie moeizamer, wat gecompenseerd moet worden door aanvullende procedures; 4. Verschillende ontwikkelmethoden zijn geschikt voor verschillende projecten; 5. Methoden en processen moeten steeds aangepast worden zodat ze passend zijn voor de specifieke situatie. Agile projectervaring De volgende factoren zijn van belang bij een succesvolle invoer van de Agile ontwikkelmethode; Teams zijn beperkt tot ongeveer tien mensen, bij een grotere groep worden deze opgedeeld in naast elkaar opererende teams; Status: Definitief 21/60 Versie: 1.1

22 Een betrokken opdrachtgever; Planning en evaluatie wordt beheerst door middel van time boxes ; Rolling Wave planning of continue planning; Teams bevinden zich op dezelfde locatie en kunnen verschillende rollen innemen; Alle teamleden zijn individueel competent en bekend met Agile. Figuur: de centrale plaats van een timebox in een Agile ontwikkelingsproject Net als bij traditionele ontwikkeling is Agile ontwikkeling niet succesvol indien: Er geen proces is; Er geen discipline is; Er geen planning is. Wanneer een organisatie geen ervaring heeft met Agile is het verstandig om een pilot te starten en te evalueren. Op deze manier kan de organisatie wennen aan de aanpassing aan de nieuwe werkmethoden, processen en verantwoordelijkheden. Koppeling beheersingsmaatregelen van Agile aan fasen uit de SDLC In een onderzoek van Pikkarainen (Pikkarainen, 2006) wordt door middel van een aantal case studies empirisch bewijs geleverd dat Agile systeemontwikkeling te spiegelen is aan de ISO/IEC standaard. Agile technieken zoals planning games en sprint planning kunnen volgens dit artikel vergeleken worden met de taak status management en requirements definitie activiteiten in het ontwikkelproces volgens ISO/IEC De post iteratie workshops, reflection workshops en Agile assessments bieden goede technieken om de Agile systeemontwikkeling te verbeteren. Ook geeft het artikel aan dat test driven development en pair programming mechanismen zijn voor test en implementatie activiteiten van het ontwikkelproces zoals beschreven in ISO/IEC Bij test driven development worden eerst testscenario s opgesteld voordat code wordt geschreven. In bijlage A.2 geven wij uitleg van het begrip pair programming. Uit een onderzoek van Sutherland (Sutherland et al, 2007) blijkt dat projecten die Agile methoden combineren met CMMi succesvol zijn in het verhogen van de softwarekwaliteit en effectief zijn in de aansluiting op de behoeften van de opdrachtgever. Succesvolle systeemontwikkeling wordt bepaald door de wijze waarop de business de complexiteit, technologische innovatie en veranderde requirements weet te managen. Agile en CMMi methoden zijn ontwikkeld om hier mee om te kunnen gaan maar verschillen in aanpak. Het beheersen van complexiteit vraagt om discipline in het proces wat CMMi voorschrijft terwijl Agile zorgt voor het beheersen van veranderingen. In het onderzoek van Sutherland wordt ingegaan op de praktijkervaringen bij een CMMi- niveau 5 organisatie. Het onderzoek Status: Definitief 22/60 Versie: 1.1

23 geeft 12 beheersingsmaatregelen die het volwassenheidsniveau van een organisatie positief beïnvloeden bij de invoering van Agile methode: 1. Stel een organisatorisch beleid op voor de uitvoer van Agile methoden; 2. Stel een plan op voor de uitvoer van Agile methoden en onderhoud dit plan; 3. Stel voldoende middelen beschikbaar voor de uitvoer van Agile methoden; 4. Stel een verantwoordelijkheid en autoriteit op voor de uitvoer van Agile methoden; 5. Verschaf training aan medewerkers die Agile methoden uitvoeren (kritische succes factor); 6. Plaats gedefinieerde producten van ontwikkeling onder een gepast niveau van configuratie management; 7. Identificeer en betrek de benodigde belanghebbenden volgens planning; 8. Monitor en beheers Agile methoden volgens het plan en neem indien nodig correctieve maatregelen; 9. Evalueer de striktheid waarmee de Agile methoden worden toegepast; 10. Bespreek de activiteiten, status en resultaten van de Agile methoden met het hoger management; 11. Stel een omschrijving op van Agile methoden en onderhoud deze; 12. Verzamel de resultaten van het gebruik van Agile methoden voor toekomstig gebruik en verbeter de toepassing van Agile methoden binnen de organisatie. Verschijningsvormen Agile heeft meerdere verschijningsvormen, de meest bekende en gebruikte zijn de onderling verschillende Scrum en Extreme Programming (XP). Beide hebben gemeen dat zij de onderliggende principes uit het Agile Manifesto onderschrijven. Het verschil is dat Scrum een Agile management methode is, terwijl XP een Agile ontwikkelmethode is. De doelstelling van beide is om meer zichtbaarheid te geven en betere aansluiting op de business te krijgen. Scrum staat voor een betere samenwerking in het team, XP voor een eenvoudiger requirements management en hoger product kwaliteit. SCRUM en XP zijn te combineren waardoor van beide invalshoeken wordt geprofiteerd. Zie bijlagen A.2 en A.3 voor nadere details met betrekking tot XP en Scrum De huidige trend in toepassing van Agile Uit enkele publicaties blijkt dat er een trend waarneembaar is van een groeiend gebruik van de Agile ontwikkelmethode. Daarnaast laten de publicaties zien dat er interpretatieverschillen bestaan over het gebruik van Agile. Voor de IT-auditor is het belangrijk ontwikkelingen op dit vlak te volgen. Agile ontwikkelmethoden zijn nog niet volwassen en op het moment van onderzoek zijn er wellicht nieuwe invalshoeken en aandachtspunten. Daarnaast zijn er ook verschijningsvormen en varianten van Agile met ieder hun eigen specifieke eigenschappen. Daarbij zijn Scrum en XP, en vooral in combinatie, breder geaccepteerd dan de andere varianten. De populariteit van Agile groeit. Het Forrester Research Instituut laat enerzijds zien dat meer dan de helft van de onderzochte organisaties aspecten en best practices van Agile ontwikkelmethodiek in gebruik hebben, anderzijds hebben organisaties voornemens Agile te gaan gebruiken. Echter voor de meeste organisaties is het niet precies duidelijk wat de adoptie van Agile precies inhoudt (Schwaber, 2007). Door de snelle opmars van Agile nemen ook de misverstanden over Agile toe en daarmee bestaat ook het risico dat de daadwerkelijke filosofie en beoogde doelen van de Agile ontwikkelmethode onduidelijk zijn en de methode niet echt begrepen wordt (Computable, 2008). Eind 2008 is eveneens bekend geworden dat het kabinet heeft besloten om Agile toe te passen bij de IT projecten. Het besluit betekent dat alle grote IT projecten van de overheid vanaf 2010 per projectfase worden beoordeeld op het resultaat van de afgeronde fase en op de gereedheid van de volgende fase (Computable, 2008). De overheid kan door het gebruik van iteraties sneller zien of het beoogde resultaat bereikt wordt. Het is echter de vraag wat precies bedoeld wordt met de verschillende projectfasen en het uiteindelijke resultaat. Het gebruik van de woorden fasen duiden namelijk nog steeds op een traditioneel ontwikkelmodel of op fasen zoals deze zijn gedefinieerd in projectmethodiek Prince2. Als dit een invulling is van incrementele en iteratieve ontwikkeling dan heeft dit zeker een Agile Status: Definitief 23/60 Versie: 1.1

24 karakter. Echter er zijn meer randvoorwaarden die moeten worden ingevuld, zoals we die in dit referaat onderkennen. Het bericht geeft aan dat Agile in populariteit wint, maar het is wel zorg dat hier de juiste interpretatie en invulling aan wordt gegeven. Feit blijft dat Agile wel degelijk bij bestuurders als kritische succesfactor wordt gezien. Een onderzoek van Shine Technologies geeft aan dat 96% van de ondernemingen bekend is met Agile en dat deze mogelijk van plan zijn Agile te gebruiken of het gebruik er van door te zetten (Shine, 2003). Ondanks de intentie van ondernemingen geeft de meerderheid van de respondenten aan dat zij denken dat niet alle projecten zich lenen voor de toepassing van Agile. Dit is de reden dat er onderzoeken lopen waarin de toepasbaarheid van de Agile ontwikkelingsmethodiek bij grotere IT projecten onderzocht wordt. Dat neemt niet weg dat steeds meer ondernemingen principes en waarden gebruiken uit het Agile Manifesto. Ook worden steeds vaker formele Agile methoden gebruikt. Grote ondernemingen zoals BT Group in UK en Ericsson hebben bekend gemaakt volgens een Agile ontwikkelingsmethode te werken. 2.4 Referentiemodel SDLC In deze paragraaf beschrijven we in grote lijnen de assurance rol van de IT-auditor en de richtlijn voor reviews van de SDLC van de Information Systems Audit and Control Association (ISACA, 2003) Assurance rol Zoals beschreven in de afbakening van dit onderzoek richten wij ons tot de assurance rol van de ITauditor ten aanzien van het proces dat ten grondslag ligt aan het eindproduct van het systeemontwikkelproject. De auditor gaat na of er adequate controls aanwezig zijn in het proces en stelt tevens de effectiviteit vast van de controls. De doelstellingen voor de audit zijn tweeledig; Bescherming van kapitaalinvesteringen en aanbeveling van interne controlemaatregelen (Hettigei, 2005). De IT-auditor onderkent de risico s en bepaalt of de aanwezige beheersingsmaatregelen afdoende zijn. De audit is gericht op het proces en geeft geen garantie dat het juiste product ontwikkeld is, ook al wijst onderzoek uit dat het proces voldoet aan de gestelde eisen. De IT-auditor neemt dit expliciet op in de opdrachtomschrijving. Tevens merken we op, dat de IT-auditor ook binnen een systeemontwikkelingsproject meerdere rollen kan vervullen, zoals een adviesfunctie ten aanzien van specifieke vraagstukken of een Quality Assurance rol in het project. De opzet, het bestaan, als de werking kunnen onderwerp van onderzoek zijn voor de opdracht. In dit onderzoek gaan we er van uit dat de opdracht tot het uitvoeren van een IT audit bij een systeemontwikkelingsproject van buiten het project afkomstig is en dat aan het hoger management zekerheid wordt verschaft. Hiermee is de onafhankelijke positie van de IT-auditor gewaarborgd. De ITauditor moet altijd nagaan wat de positie van de opdrachtgever is ten aanzien van het audit proces. De integriteit van de opdrachtgever is belangrijk omdat bij het ontbreken hiervan het risico optreedt dat de IT-auditor tot onjuiste conclusies komt (Praat, Suerink, 2004). Status: Definitief 24/60 Versie: 1.1

25 IT Project Hoger management Kwaliteits bewaking Risico management Onafhankelijke verschaffing van zekerheid omtrent adequate beheersing Auditor Figuur: Rol van auditor ten aanzien van systeemontwikkelproject Audit Onderzoek Afhankelijk van in welke fase het IT project zich bevindt zijn er verschillende onderzoeken mogelijk: pre-implementatie fase De IT-auditor onderzoekt het door het programmamanagement beoogde SDLC model voor een project op geschiktheid. Tevens onderzoekt de IT-auditor potentiële risico s en de beheersingsmaatregelen om deze risico s tegen te gaan; parallelle/gelijktijdige fase De IT-auditor onderzoekt de SDLC fase waar het project zich momenteel in bevindt. Hij inventariseert risico s en stelt beheersingsmaatregelen vast om deze risico s tegen te gaan; postimplementatie fase De IT-auditor onderzoekt achteraf de doorlopen SDLC fasen en inventariseert opgetreden problemen, daarnaast stelt hij vast hoe deze problemen een volgende keer voorkomen kunnen worden. IT-Governance IT-Governance is een onderdeel van Corporate Governance dat zich richt op behoorlijk bestuur van de informatie voorziening. Hierbij is inbegrepen integer en transparant handelen, evenals goed toezicht hierop en het afleggen van verantwoording over het uitgeoefende toezicht. Binnen het raamwerk voor IT-Governance worden een ontwikkelmethodiek en bijbehorende processen geadresseerd. Systeemontwikkelingsprojecten moeten voldoen aan het beleid van de organisatie. Daarom is ook het algemeen raamwerk voor IT-Governance in dit kader relevant. Het bekendste uitgewerkte IT- Governance normenstelsel is COBIT (Control Objectives for Information and related Technology) van het Amerikaanse IT-GovernanceInstitute. Cobit Cobit is een door IT-auditors veel gebruikte toetsingsnorm voor IT-Governance. Inhoudelijk is Cobit gebaseerd op onderliggende standaarden en raamwerken zoals ITIL, BS7799, ISO en COSO. Cobit is geen vervanger van deze standaarden maar eerder een raamwerk dat als controlemodel over een IT organisatie en haar processen wordt gelegd. In het Cobit model worden 34 IT processen onderscheiden onderverdeeld over 4 aandachtsgebieden (domeinen) (Singleton, 2006). Voor dit raamwerk van 34 deelprocessen worden liefst 318 specifieke control objectives geformuleerd. Cobit draagt zorg dat de IT de bedrijfsstrategie ondersteund door invulling te geven aan onderstaande punten: 34 deelprocessen; 318 control objectives; Status: Definitief 25/60 Versie: 1.1

26 key performance indicatoren; key goal indicatoren; kritische succesfactoren; een volwassenheidsmodel. Het proces A12 acquire and maintain application structure uit Cobit geeft aan dat de volgende beheersdoelstellingen het meest relevant zijn voor de inrichting van General IT controls: - De organisatie heeft een SDLC methodologie inclusief beveiliging- en integriteiteisen; - De SDLC methode schrijft voor dat informatiesystemen worden ontwikkeld met application controls die een accurate en geautoriseerde transactieverwerking ondersteunen; - De organisatie verwerft of ontwikkelt informatiesysteem software in overeenstemming met de verwerving, ontwikkeling en planning processen. COBIT beschrijft 7 criteria waar informatie systemen aan moeten voldoen, te weten: effectiviteit, efficiency, vertrouwelijkheid, integriteit, beschikbaarheid, betrouwbaarheid en verantwoording. Ook vanuit de IT-Governance is het belangrijk om de doelstellingen van een organisatie te bereiken en niet alleen de procedures te volgen omdat dit noodzakelijk is aangezien de auditor eisen hieraan stelt met betrekking tot de controleerbaarheid (Woda, 2002). ISACA, wereldwijde organisatie voor IT-Governance specialisten, waaronder IT-auditors, hanteert een richtlijn voor de aanpak van een SDLC audit (ISACA, 2003). De richtlijn van deze organisatie concentreert zich feitelijk op een audit in het kader van breedgedragen traditionele systeemontwikkeling. In deze richtlijn is onder meer de rol van de IT-auditor beschreven, bij het verschaffen van zekerheid bij systeemontwikkeling. In de volgende subparagraaf gaan we hier nader op in SDLC risico s Bij de definitie van de SDLC gaat ISACA uit van het systeemontwikkeling proces bestaande uit verschillende fases van de levenscyclus zoals eerder beschreven in De SDLC van een applicatie systeem is afhankelijk van de gekozen ontwikkelmethode. Enkele zaken uit het ISACA richtlijn voor SDLC reviews die relevant zijn voor dit onderzoek zetten we nader uiteen: SDLC Risico s Gedurende de levenscyclus zijn er risico s dat een project onvoldoende beheerst wordt en dat een project niet effectief en efficiënt tot het gewenste eindresultaat weet te komen. Vanuit het bovengenoemde ISACA richtlijn voor de beoordeling van systeemontwikkeling zijn risico geïdentificeerd die betrekking hebben op traditionele systeemontwikkeling. # Risico s traditionele ontwikkeling 1 het aannemen van een ongeschikte SDLC voor het applicatie systeem 2 onvoldoende beheersingsmaatregelen in het SDLC proces 3 het applicatie systeem voldoet niet aan de eisen van gebruikers 4 onvoldoende betrokkenheid van belanghebbenden 5 onvoldoende management ondersteuning 6 onvoldoende project management 7 ongepast gebruik van techniek en architectuur 8 scope variaties 9 tijd en budget overschrijdingen; 10 onvoldoende kwaliteit van het applicatie systeem 11 onvoldoende aandacht voor beveiligingsmaatregelen in het applicatiesysteem 12 niet voldoen aan performance criteria 13 onvoldoende documentatie 14 onvoldoende aandacht voor afhankelijkheden met andere applicaties en Status: Definitief 26/60 Versie: 1.1

27 processen 15 onvoldoende configuratie management De auditor zal bij zijn beoordeling ten aanzien van traditionele systeemontwikkeling af moeten wegen of er voldoende beheersingsmaatregelen ten aanzien van de risico s genomen zijn. Onderstaande, door de ISACA aangedragen zijn, zijn volgens ISACA aspecten die de IT-auditor zou kunnen hanteren om vast te kunnen stellen of beheersingsmaatregelen in het proces geborgd zijn. # Beheersmaatregel 1 Business case 2 project plan 3 project structuur inclusief rollen en verantwoordelijkheden 4 ontwikkelmethode; en gekozen gereedschap; 5 opzet van controle processen in het te beoordelen SDLC model 6 verslagen van relevante vergaderingen, zoals bv. van stuurgroepvergaderingen 7 mijlpalen in het SDLC model beoordeling, validatie (verificatie en testen), goedkeuring met afmelding bij de verschillende SDLC fasen 8 project verslagen bv. over de voortgang en eventuele escalatie 9 configuratie management en versiebeheer 10 Risicomanagement 11 Kwaliteitmanagement 12 Wijzigingenbeheer 13 data conversie en migratie 14 project gerelateerde documentatie zoals bv een testplan 15 voorgaande SDLC onderzoeken 16 voorgaande onderzoeken met als object een voorgaande SDLC fase 17 relevante jurisprudentie Daarnaast verwijzen de richtlijnen van ISACA naar het gebruik van COBIT voor het beoordelen van systeemontwikkeling. Opvallend in het normenkader zijn de regelgebaseerde benadering in plaats van een op principe gebaseerde benadering. Een artikel van ISACA (Singleton, 2007) benadrukt de functie van vastlegging gedurende de fasen van de SDLC als potentieel bewijsmateriaal voor de IT-auditor. Het artikel onderscheidt 8 SDLC fasen en benoemt per fase de documenten die het proces moet voortbrengen. Dit is te vergelijken met de mijlpaalproducten die SDM levert. Zo dient de SDLC niet alleen als beheersingsmaatregel, maar biedt het ook mogelijkheden, in de vorm van documentatie, voor de IT-auditor om zekerheid te verkrijgen over de effectiviteit en efficiency van het SDLC systeem. Naast interviews en controlelijsten is ook hier SDLC documentatie het aangewezen verificatie middel. 2.5 Confrontatie In deze paragraaf zetten we traditionele systeemontwikkeling en Agile systeemontwikkeling tegenover elkaar. Wij laten eerst zien welke organisatietopologie passend is voor toepassing van Agile. Daarna, aan de hand van het management control raamwerk schetsen we de randvoorwaarden die ingevuld moeten worden om de Agile processen succesvol te kunnen toepassen Typologiebepaling In de literatuur zijn er ook modellen die aangeven in hoeverre de ontwikkelmethode past bij een organisatie. Een aantal factoren worden geïdentificeerd die bepalend zijn voor de toepassing van de systeemontwikkelmethode. Vinekar (Vinekar, 2006) geeft aan dat de ontwikkelstrategie van een Status: Definitief 27/60 Versie: 1.1

28 informatiesysteem afhankelijk is van twee factoren: Organisatiecultuur en de mate van voorspelbaarheid van een project. 1. Organisaties die een overwegend individualistische cultuur hebben vertrouwen meer op expliciete kennis dan die met een collectieve cultuur. 2. Naarmate een project minder voorspelbaar is wordt vaker gekozen voor een ontwikkelstrategie die gericht is op verandering. 3. Ook wordt bij minder voorspelbare projecten vaker gekozen voor een strategie van samenwerking met gebruikers. 4. Organisaties met een individualistische cultuur hanteren een meer proces gedreven ontwikkelstrategie ten opzichte van organisaties met een collectieve cultuur. Met deze stellingen kunnen op het kwadrant van organisatiecultuur en onzekerheid in het project vier ontwikkelstrategieën onderkend worden. Deze worden in onderstaande figuur weergegeven; Figuur 4; ontwikkelstrategieën afhankelijk van organisatiecultuur en zekerheid met betrekking tot de requirements (Vinekar, 2006) Ook Boehm en Turner (Boehm, 2003) opperen het toepassen van een risicoanalyse om te kiezen tussen adaptieve (Agile) en voorschrijvende (traditionele) methoden. Volgens hen hebben beide uiteinden van het continuüm hun eigen bestaansgrond. Volgens dit artikel wijst de praktijk uit dat de Agile methode het best gedijt in een situatie waarin requirements voortdurend en snel veranderen. Hierbij zijn onderstaande kenmerken te onderscheiden, waarbij die van Agile ontwikkeling gelden als randvoorwaarden in deze scriptie; Agile ontwikkeling Grote oplossingsruimte Senior ontwikkelaars Zeer veranderlijke projecteisen Beperkt aantal ontwikkelaars in een team Cultuur die in chaos gedijt Traditionele ontwikkeling Scherpe specificaties Junior ontwikkelaars Vaststaande projecteisen Groot aantal ontwikkelaars Cultuur die orde vereist De auditor zal na moeten gaan of bovengenoemde aspecten in de gegeven situatie aanwezig zijn en of daarmee de randvoorwaarden zijn ingevuld om te komen tot een beheerste omgeving. In de volgende paragraaf bespreken we het management control raamwerk dat als vertrekpunt dient voor de beschrijving van randvoorwaarden die gelden bij Agile processen Management Control raamwerk Het onderzoeksobject verandert bij Agile ontwikkeling niet. De IT-auditor voert de onafhankelijke attest functie uit en komt tot een oordeel om zekerheid te verschaffen of een systeemontwikkelingsproject in voldoende mate wordt beheerst en de maatregelen effectief zijn. De specifieke controle activiteiten die de IT-auditor uitvoert hebben een andere invulling bij Agile systeemontwikkeling dan bij traditionele ontwikkeling. De IT audit van een klassieke ontwikkelmethode is gebaseerd op de producten die gedurende het ontwikkelproces worden opgeleverd. Bij een audit worden voornamelijk de resultaten en tussenproducten van een proces getoetst en niet zozeer de totstandkoming (het procesverloop zelf). Status: Definitief 28/60 Versie: 1.1

29 Bij een traditionele ontwikkelmethode zijn de mijlpaalproducten, rapportages en besluitvorming het object van onderzoek. Bij Agile is een productgericht onderzoek beperkt mogelijk. Agile steunt niet op vastlegging maar steunt op menselijke factoren, feedback en ondersteunende tools. De IT audit van een Agile ontwikkelproject zal daarom voornamelijk op het proces gericht zijn. Procesgericht wil zeggen dat de controle gericht is op het toetsen van het proces zelf: is de opzet (inrichting) van een proces goed en wordt daadwerkelijk gewerkt zoals het proces is opgezet? De IT-auditor moet zich ervan bewust zijn dat naast de procesmatige inrichting goed ingevulde randvoorwaarden essentieel zijn voor het beheersen van een Agile project. Deze randvoorwaarden zijn onder andere de directe communicatie binnen een team en de interactie met de opdrachtgever. Het Agile proces heeft korte iteraties met feedbackcycli met als doel een zelflerend effect te bewerkstelligen waardoor continue procesverbetering optreedt. Hierdoor sluit Agile goed aan bij volwassenheidsmodellen zoals CMMi. De IT-auditor kan deze constatering gebruiken in zijn onderzoek naar het volwassenheidsniveau van het proces in een organisatie. Figuur: Aandachtspunten voor beheersing Agile ontwikkeling vanuit het perspectief van de IT-auditor Samenvattend is het onderzoeksgebied van de rol van de IT-auditor bij een systeemontwikkelingsproject te illustreren in onderstaande figuur. Hierbij zijn de relaties binnen het management control raamwerk gevisualiseerd en wordt de relatie van de gehanteerde normen en de rol van IT audit aangeduid. Het management control raamwerk vertegenwoordigt het beleid en de procedures die ervoor zorgen dat resultaten behaald worden en doelstelling bereikt worden. Status: Definitief 29/60 Versie: 1.1

Agile systeemontwikkeling. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Agile systeemontwikkeling. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. Agile systeemontwikkeling Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. Inleiding... 3 2. Terminologie... 4 3. Uitgangspunten...

Nadere informatie

Handout. Pagina 1. SYSQA B.V. Almere. Capability Maturity Model Integration (CMMI) Technische Universiteit Eindhoven SYSQA SYSQA.

Handout. Pagina 1. SYSQA B.V. Almere. Capability Maturity Model Integration (CMMI) Technische Universiteit Eindhoven SYSQA SYSQA. Capability Maturity Model Integration (CMMI) Technische Universiteit Eindhoven Johan Zandhuis SYSQA Start: 1999 Onafhankelijk Quality Assurance in IT 150 medewerkers (en groeiend) 2 SYSQA Operationeel

Nadere informatie

Definitief 1.0 Handreiking voor toepassen van Agile Scrum binnen Overheidsdiensten april 2012

Definitief 1.0 Handreiking voor toepassen van Agile Scrum binnen Overheidsdiensten april 2012 1 Kennis Agile Scrum 1.1 Inleiding In dit eerste deel wordt de lezer meegenomen in de Agile Scrum methodiek. Binnen DR, onder meer met ondersteuning vanuit Quintor, worden steeds meer projecten op deze

Nadere informatie

Evo Evolutionary Project Management. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Evo Evolutionary Project Management. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. Evo Evolutionary Project Management Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. INLEIDING... 3 2. EVO... 4 3. FASERING...

Nadere informatie

Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil

Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil Scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum scrumscrumscrumscrumscrumscrum agileagileagileagileagileagileagileagil eagileagileagileagileagileagileagileagi leagileagileagileagileagileagileagileag

Nadere informatie

Medical device software

Medical device software Medical device software Medical device software Software ontwikkeling voor de medische wereld Nspyre Herculesplein 24 3584 AA Utrecht T 088-827 50 00 F 088-827 50 99 www.nspyre.nl Medical devices zijn

Nadere informatie

ISO 9000:2000 en ISO 9001:2000. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V.

ISO 9000:2000 en ISO 9001:2000. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V. ISO 9000:2000 en ISO 9001:2000 Een introductie Algemene informatie voor medewerkers van: SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 11 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER...

Nadere informatie

fysieke beveiliging onder controle Fysieke beveiliging Lean & Agile Thimo Keizer

fysieke beveiliging onder controle Fysieke beveiliging Lean & Agile  Thimo Keizer fysieke beveiliging onder controle Fysieke beveiliging Lean & Agile www.fysiekebeveiliging.nl Thimo Keizer Fysieke beveiliging Lean & Agile 2016 www.fysiekebeveiliging.nl Thimo Keizer Niets uit deze uitgave

Nadere informatie

PRINCE2 Symposium: Zin en Onzin van een Methode. PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen SYSQA B.V.

PRINCE2 Symposium: Zin en Onzin van een Methode. PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen SYSQA B.V. PRINCE2 Symposium: PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen Jan Jaap Cannegieter SYSQA B.V. SYSQA B.V. Operationeel Tactisch Strategisch Testen Requirements Quality assurance Auditing

Nadere informatie

Releasen met een druk op de knop: Met behulp van Continuous Delivery sneller uw doel bereiken

Releasen met een druk op de knop: Met behulp van Continuous Delivery sneller uw doel bereiken Releasen met een druk op de knop: Met behulp van Continuous Delivery sneller uw doel bereiken De business organisatie heeft altijd stijgende verwachtingen van uw IT organisatie. Meer dan ooit is het van

Nadere informatie

Scrum. Een introductie

Scrum. Een introductie Organisatie SYSQA B.V. Pagina 1 van 10 Scrum Een introductie Almere 1999 Proud of it Pagina 1 van 10 Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1 Inleiding... 3 2 Scrum... 4 3 Scrum rollen...

Nadere informatie

Inhoud. 1. Agile werken. 2. Het belang van Agile werken. 3. Basisprincipes van Agile werken. 4. De meest gebruikte Agile methode: Scrum

Inhoud. 1. Agile werken. 2. Het belang van Agile werken. 3. Basisprincipes van Agile werken. 4. De meest gebruikte Agile methode: Scrum Inhoud 1. Agile werken 2. Het belang van Agile werken 3. Basisprincipes van Agile werken 4. De meest gebruikte Agile methode: Scrum 5. Drie rollen binnen een Scrum squad De wereld waarin je leeft verandert

Nadere informatie

PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen

PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen PRINCE2 Symposium: PRINCE 2 versus CMMI; raakvlakken, overlap en aanvullingen Jan Jaap Cannegieter SYSQA B.V. SYSQA B.V. Operationeel Tactisch Strategisch Testen Requirements Quality assurance Auditing

Nadere informatie

Problematiek in projecten

Problematiek in projecten Problematiek in projecten Het project bouwt andere producten dan afgesproken Het project valt duurder uit dan begroot Het project loopt langer dan gepland Het product sluit niet aan bij de werksituatie

Nadere informatie

weer wat nieuws KEMA KEMA Reden van verandering KLANT- & PRESTATIEGERICHT! Oude norm was onvoldoende 16-04-2003 KEMA Quality B.V.

weer wat nieuws KEMA KEMA Reden van verandering KLANT- & PRESTATIEGERICHT! Oude norm was onvoldoende 16-04-2003 KEMA Quality B.V. Ze hebben weer wat nieuws bedacht! 16-04-2003 Quality B.V. 1 Reden van verandering Oude norm was onvoldoende KLANT- & PRESTATIEGERICHT! 16-04-2003 Quality B.V. 2 1 Reden van verandering a. ISO normen iedere

Nadere informatie

ORGANISATORISCHE IMPLENTATIE BEST VALUE

ORGANISATORISCHE IMPLENTATIE BEST VALUE ORGANISATORISCHE IMPLENTATIE BEST VALUE EEN ONDERZOEK NAAR DE IMPLEMENTATIE VAN BEST VALUE BINNEN EEN SYSTEMS ENGINEERING OMGEVING STEPHANIE SAMSON BEST VALUE KENNIS SESSIE WESTRAVEN 17 JUNI 09.00 12.00

Nadere informatie

4.2 Inzichten in de behoeften en verwachtingen van de belanghebbenden. 4.3 Het toepassingsgebied van het milieumanagementsystee m vaststellen

4.2 Inzichten in de behoeften en verwachtingen van de belanghebbenden. 4.3 Het toepassingsgebied van het milieumanagementsystee m vaststellen 4 Context van de organisatie 4 Milieumanagementsysteemeisen 4.1 Inzicht in de organisatie en haar context 4.2 Inzichten in de behoeften en verwachtingen van de belanghebbenden 4.3 Het toepassingsgebied

Nadere informatie

Ontwikkelaar ICT. Context. Doel

Ontwikkelaar ICT. Context. Doel Ontwikkelaar ICT Doel Ontwikkelen en ontwerpen van ICT-producten, binnen overeen te komen dan wel in een projectplan vastgelegde afspraken ten aanzien van tijd, budget en kwaliteit, opdat overeenkomstig

Nadere informatie

Checklist Slimme vragenlijst regievoering

Checklist Slimme vragenlijst regievoering Checklist Slimme vragenlijst regievoering versie 2.0 Slimme vragenlijst Leveranciersselectie Hoe stel ik vast dat dit beste leverancier is? Welke criteria hanteer ik daarbij? Wat als het selectieproces

Nadere informatie

Acceptatiemanagement meer dan gebruikerstesten. bridging it & users

Acceptatiemanagement meer dan gebruikerstesten. bridging it & users Acceptatiemanagement meer dan gebruikerstesten bridging it & users Consultancy Software Training & onderzoek Consultancy CEPO helpt al meer dan 15 jaar organisaties om integraal de kwaliteit van hun informatiesystemen

Nadere informatie

De Agile Business Scan

De Agile Business Scan E-book De Agile Business Scan Naar een volgend Agile volwassenheidsniveau Door: Joyce Thijssen Inhoud Inleiding De basis: wetenschappelijk onderzoek Agile Business Scan Uitgangspunten Volwassenheidniveaus

Nadere informatie

Whitepaper ChainWise bedrijfssoftware

Whitepaper ChainWise bedrijfssoftware Whitepaper ChainWise bedrijfssoftware Product CMMi (Capability Maturity Model Integration) Jaar 2018 Alle rechten voorbehouden aan ChainWise Niets in deze uitgave mag worden gebruikt in welke vorm dan

Nadere informatie

Testen. Presentatie. Open-i Software Services BV, Maarssen Datum : 06-07-2013 Versie : 1.2

Testen. Presentatie. Open-i Software Services BV, Maarssen Datum : 06-07-2013 Versie : 1.2 Testen Presentatie Open-i Software Services BV, Maarssen Datum : 06-07-2013 Versie : 1.2 Algemeen Tegenwoordig behoeft het belang van testen nauwelijks nog te worden uitgelegd. Binnen organisaties speelt

Nadere informatie

Tentamen Systeemontwikkeling 1 (I00100)

Tentamen Systeemontwikkeling 1 (I00100) Tentamen Systeemontwikkeling 1 (I00100) 26 januari 2004, 10:30 12:30 Naam: Studentnummer: Noteer op dit tentamen als eerste je naam en studentnummer Er mogen geen boeken, aantekeningen, etc. worden geraadpleegd

Nadere informatie

Investeren in duurzame inzetbaarheid loont

Investeren in duurzame inzetbaarheid loont Investeren in duurzame inzetbaarheid loont Samen verantwoordelijk voor mens en organisatie Een belangrijk onderwerp binnen organisaties is de duurzame inzetbaarheid van medewerkers. We zitten midden in

Nadere informatie

Inleiding ontwikkelmethoden

Inleiding ontwikkelmethoden Inleiding ontwikkelmethoden 1 Ontwikkelmethoden en Technieken POMT HC1 2 Ronald de Waal Opleiding TU Delft: industrieel ontwerpen Diverse softwarebedrijven, internet ontwerp vanaf 1994 Docent systeemontwikkeling

Nadere informatie

BluefieldFinance Samenvatting Quickscan Administratieve Processen Light Version

BluefieldFinance Samenvatting Quickscan Administratieve Processen Light Version BluefieldFinance Samenvatting Quickscan Administratieve Processen Light Version Introductie Quickscan De financiële organisatie moet, net zo als alle andere ondersteunende diensten, volledig gericht zijn

Nadere informatie

Software Test Plan. Yannick Verschueren

Software Test Plan. Yannick Verschueren Software Test Plan Yannick Verschueren November 2014 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 1 Inhoudstafel 1 Introductie 3 1.1

Nadere informatie

Oplossingsvrij specificeren

Oplossingsvrij specificeren Oplossingsvrij specificeren ir. J.P. Eelants, projectmanager Infrabouwproces CROW Samenvatting De methodiek van oplossingsvrij specificeren richt zich niet alleen op het formuleren van functionele eisen.

Nadere informatie

AGILE WERKEN Leer je eigen capaciteiten optimaal te benutten dankzij een effectieve samenwerking.

AGILE WERKEN Leer je eigen capaciteiten optimaal te benutten dankzij een effectieve samenwerking. AGILE WERKEN Leer je eigen capaciteiten optimaal te benutten dankzij een effectieve samenwerking T: +31 (0)20 24 022 44 E: info@gladwell.nl www.gladwell.nl WAT IS AGILE? Agile is een denkwijze die erop

Nadere informatie

Betere dienstverlening financiële organisaties met continuous delivery Flexibeler, efficiënter en in kort tijdsbestek software ontwikkelen

Betere dienstverlening financiële organisaties met continuous delivery Flexibeler, efficiënter en in kort tijdsbestek software ontwikkelen Betere dienstverlening financiële organisaties met continuous delivery Flexibeler, efficiënter en in kort tijdsbestek software ontwikkelen Sinds de kredietcrisis en door opkomende technologieën staan banken

Nadere informatie

AERIUS II. Mark Wilmot Product Owner AERIUS. Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS)

AERIUS II. Mark Wilmot Product Owner AERIUS. Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS) AERIUS II Mark Wilmot Product Owner AERIUS Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS) m.j.wilmot@mineleni.nl Inhoud Toelichting AERIUS II Project Demo Agile / Scrum proces

Nadere informatie

Software Test Plan. Yannick Verschueren

Software Test Plan. Yannick Verschueren Software Test Plan Yannick Verschueren Maart 2015 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 2 December 2014 Yannick Verschueren

Nadere informatie

Unified Process. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Unified Process. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. Unified Process Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1. Inleiding... 3 2. Unified Process... 4 3. Fasering... 5 3.1.

Nadere informatie

Checklist. Informatievoorziening. Grote Projecten

Checklist. Informatievoorziening. Grote Projecten Checklist Informatievoorziening Grote Projecten Najaar 2010 Rekenkamercommissie Berkelland, Bronckhorst, Lochem, Montferland 1. Inleiding De uitvoering van grote projecten in Nederland heeft nogal eens

Nadere informatie

PROJECT PLAN VOOR DE IMPLEMENTATIE VAN EEN STANDAARD SITE VOOR DE VERENIGING O3D

PROJECT PLAN VOOR DE IMPLEMENTATIE VAN EEN STANDAARD SITE VOOR DE VERENIGING O3D PROJECT PLAN VOOR DE IMPLEMENTATIE VAN EEN STANDAARD SITE VOOR DE VERENIGING O3D Auteur : P. van der Meer, Ritense B.V. Datum : 17 juli 2008 Versie : 1.3 2008 Ritense B.V. INHOUD 1 VERSIEBEHEER...1 2 PROJECT

Nadere informatie

Ontwikkelen en testen van e-business: beheerste dynamiek

Ontwikkelen en testen van e-business: beheerste dynamiek Ontwikkelen en testen van e-business: beheerste dynamiek Het ontwikkelen en gestructureerd testen van administratieve systemen is gebaseerd het watervalprincipe. Bij het ontwikkelen volgens het watervalprincipe

Nadere informatie

25 Het CATS CM Maturity Model

25 Het CATS CM Maturity Model 25 Het CATS CM Maturity Model Op basis van de ervaringen die zijn opgedaan in het advies- en trainingswerk van CM Partners is, uitgaande van CATS CM, een volwassenheidsmodel opgesteld dat ingezet kan worden

Nadere informatie

Oplossingen voor het testen van objectgeoriënteerde software

Oplossingen voor het testen van objectgeoriënteerde software Oplossingen voor het testen van objectgeoriënteerde software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14 maart 2013 HOM/FHTeL Oplossingen voor het testen

Nadere informatie

RUM. requirements Management. SPIder session Project. driven by requirements 25th april. Risk assessed User

RUM. requirements Management. SPIder session Project. driven by requirements 25th april. Risk assessed User RUM Risk assessed User requirements Management - SPIder session Project driven by requirements 25th april Copyright 2006 ps_testware - Gijs Kuiper Risk assessed User requirement Management Personalia Gijs

Nadere informatie

Functiepuntanalyse. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V.

Functiepuntanalyse. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V. Functiepuntanalyse Een introductie Algemene informatie voor medewerkers van: SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 8 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER... 3 2 WAT

Nadere informatie

Scrum. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Scrum. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. Scrum Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1 INLEIDING... 3 2 SCRUM... 4 3 FASERING... 5 4 KENMERKEN... 6 4.1 DE SCRUM-MEETING...

Nadere informatie

Gemeente Veenendaal. ICT-beveiligingsassessment. Suwinet Inkijk Ten behoeve van gemeenten Rhenen en Renswoude. Audit Services

Gemeente Veenendaal. ICT-beveiligingsassessment. Suwinet Inkijk Ten behoeve van gemeenten Rhenen en Renswoude. Audit Services Gemeente Veenendaal ICT-beveiligingsassessment Suwinet Inkijk Ten behoeve van gemeenten Rhenen en Renswoude Datum rapport: 6 april 2018 Rapportnummer: AAS2018-254 Dit rapport heeft 13 pagina s Inhoudsopgave

Nadere informatie

1. De watervalmethode... 2. 2. Agile softwareontwikkeling... 2. 3. Iteratief werken... 3. 4. Agile technieken voor teams... 3

1. De watervalmethode... 2. 2. Agile softwareontwikkeling... 2. 3. Iteratief werken... 3. 4. Agile technieken voor teams... 3 Naar Voren: Tijdschrift voor webwerkers» Artikel #155 Agile (web)ontwikkeling Omarm de verandering Als ICT-professional heb je het liefst dat de klant exact weet wat hij wil, dat jij exact weet hoe je

Nadere informatie

Project methodiek. Auxilium BV Oude Delft 48 2611 CD Delft. T: 015-261 23 16 F: 015-213 34 83 E: info@auxilium.nl

Project methodiek. Auxilium BV Oude Delft 48 2611 CD Delft. T: 015-261 23 16 F: 015-213 34 83 E: info@auxilium.nl Project methodiek Auxilium BV Oude Delft 48 2611 CD Delft T: 015-261 23 16 F: 015-213 34 83 E: info@auxilium.nl Inhoud 1 PROJECTMETHODIEK... 3 1.1 TIME-BOXING... 3 1.2 USER-STORIES EN STORY-POINTS... 3

Nadere informatie

Agile Foundation examen - OEFENVragenformulier

Agile Foundation examen - OEFENVragenformulier Agile Foundation examen - OEFENVragenformulier 1) Wat is het beste dat je kunt doen volgens de principes van het Agile Manifesto? a) Afspraken nakomen b) Opleveren wat waardevol is c) Regelmatig resultaat

Nadere informatie

De beheerrisico s van architectuur

De beheerrisico s van architectuur De beheerrisico s van architectuur Een overzicht van de ArChimate Risico Extensie versie 0.2 Bert Dingemans Inleiding Het implementeren van een (enterprise) architectuur brengt altijd risico s met zich

Nadere informatie

Oplossingen voor het testen van objectgeoriënteerde software. Oplossingen voor het testen van. Overzicht. Pieter van den Hombergh.

Oplossingen voor het testen van objectgeoriënteerde software. Oplossingen voor het testen van. Overzicht. Pieter van den Hombergh. Oplossingen voor het testen van objectgeoriënteerde software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14 maart 2013 HOM/FHTeL Oplossingen voor het testen

Nadere informatie

Kwaliteitsbewaking en testen in ICT beheerorganisaties

Kwaliteitsbewaking en testen in ICT beheerorganisaties DKTP Informatie Technologie Veembroederhof 1 1019 HD Amsterdam Telefoon 020 427 52 21 Kwaliteitsbewaking en testen in ICT beheerorganisaties Voor de meeste projectgroepen die software ontwikkelen vormt

Nadere informatie

IT Service CMM. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

IT Service CMM. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. IT Service CMM Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 8 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 2 GESCHIEDENIS EN ACHTERGROND...

Nadere informatie

Projectmatig betekent: op de wijze van een project. Je moet dus eerst weten wat een project is. Een eenvoudige definitie van project is:

Projectmatig betekent: op de wijze van een project. Je moet dus eerst weten wat een project is. Een eenvoudige definitie van project is: Projectmatig werken Inhoudsopgave Projectmatig werken vs. niet-projectmatig werken... 1 Projectmatig werken... 1 Niet projectmatig werken... 2 Waarom projectmatig werken?... 2 Hoe herken je wanneer projectmatig

Nadere informatie

8-12-2015. Hoe test je een pen? Je kunt de presentatie na afloop van elke les downloaden. Ga naar : www.gelsing.info Kies voor de map Acceptatietesten

8-12-2015. Hoe test je een pen? Je kunt de presentatie na afloop van elke les downloaden. Ga naar : www.gelsing.info Kies voor de map Acceptatietesten Les 1 Docent: Marcel Gelsing Je kunt de presentatie na afloop van elke les downloaden. Ga naar : www.gelsing.info Kies voor de map Acceptatietesten Hoe test je een pen? 1 Bekijk eerst het filmpje over

Nadere informatie

Ontwikkelmethoden en technieken DSDM POMT HC3

Ontwikkelmethoden en technieken DSDM POMT HC3 DSDM Ontwikkelmethoden en technieken DSDM POMT HC3 HC WG rollenspel praktijktoets 1 praktijktoets 2 praktijktoets 3 Mei week 1 week 2 week 3 Week 4 vakantie Inleiding Ontwikkel methodiek DSDM Technieken

Nadere informatie

SmartScrum: Agile én duurzaam

SmartScrum: Agile én duurzaam SmartScrum: Agile én duurzaam SmartScrum: slimmer, sneller, goedkoper! 20% tot 30% snellere time-to-market 20% tot 30% kostenbesparing 100% voorspelbaar 100% duurzaam 100% begrijpelijk PNA Group lanceert

Nadere informatie

Lessons Learnt: de Inzichten

Lessons Learnt: de Inzichten Lessons Learnt: de Inzichten De pilot asset management vindt plaats bij het district Haaglanden. Het doel van de pilot is tweeledig: het helder krijgen van de rollen en bevoegdheden van de verschillende

Nadere informatie

Functieprofiel Ondersteuner ICT Functieprofiel titel Functiecode 00

Functieprofiel Ondersteuner ICT Functieprofiel titel Functiecode 00 1 Functieprofiel Ondersteuner ICT Functieprofiel titel Functiecode 00 Doel Registreren en (laten) oplossen van vragen en storingen van ICTgebruikers binnen de richtlijnen van de afdeling, teneinde bij

Nadere informatie

Op naar een excellente controle

Op naar een excellente controle Op naar een excellente controle Welke controlewerkzaamheden kunnen verder geoptimaliseerd worden om kosten te besparen of om meer toegevoegde waarde te kunnen bieden aan cliënten? Hoe kunnen deze werkzaamheden

Nadere informatie

De SYSQA dienst auditing. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

De SYSQA dienst auditing. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. De SYSQA dienst auditing Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 8 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER... 3

Nadere informatie

Het W-model: de groei naar voren. Jan Jaap Cannegieter. Praktijk van ICT-projecten

Het W-model: de groei naar voren. Jan Jaap Cannegieter. Praktijk van ICT-projecten Het W-model: de groei naar voren Jan Jaap Cannegieter Adjunct Directeur SYSQA B.V. Praktijk van ICT-projecten Req Ontwerp Realisatie Testen Testen Testen 44% van de projecten overschrijdt budget of tijd

Nadere informatie

Aan de Voorzitter van de Tweede Kamer der Staten-Generaal Postbus EA DEN HAAG

Aan de Voorzitter van de Tweede Kamer der Staten-Generaal Postbus EA DEN HAAG > Retouradres Postbus 20011 2500 EA Den Haag Aan de Voorzitter van de Tweede Kamer der Staten-Generaal Postbus 20018 2500 EA DEN HAAG Ministerie van Turfmarkt 147 Den Haag Postbus 20011 2500 EA Den Haag

Nadere informatie

Procesmanagement. Waarom processen beschrijven. Algra Consult

Procesmanagement. Waarom processen beschrijven. Algra Consult Procesmanagement Waarom processen beschrijven Algra Consult Datum: 22 oktober 2009 Inhoudsopgave 1. INLEIDING... 3 2. WAAROM PROCESMANAGEMENT?... 3 3. WAAROM PROCESSEN BESCHRIJVEN?... 3 4. PROCESASPECTEN...

Nadere informatie

Functieprofiel: Projectleider Functiecode: 0302

Functieprofiel: Projectleider Functiecode: 0302 Functieprofiel: Projectleider Functiecode: 0302 Doel Voorbereiden en opzetten van en bijbehorende projectorganisatie, alsmede leiding geven aan de uitvoering hiervan, binnen randvoorwaarden van kosten,

Nadere informatie

Tips & Tricks: Tip van de maand januari 2009

Tips & Tricks: Tip van de maand januari 2009 Tips & Tricks: Tip van de maand januari 2009 Project Management met Teamcenter 2007 Door: Ramon van Raak Beheert u complexe projecten dan weet u als geen ander dat de projectvoorbereiding de basis legt

Nadere informatie

Grip op fiscale risico s

Grip op fiscale risico s Grip op fiscale risico s Wat is een Tax Control Framework? Een Tax Control Framework (TCF) is een instrument van interne beheersing, specifiek gericht op de fiscale functie binnen een organisatie. Een

Nadere informatie

LSSN seminar Amsterdam 01-11-2012 Edwin Kippers Master Black Belt. Project Management

LSSN seminar Amsterdam 01-11-2012 Edwin Kippers Master Black Belt. Project Management Lean Six Sigma Scrum Niet alleen voor software projecten LSSN seminar Amsterdam 01-11-2012 Edwin Kippers Master Black Belt Project Management Project succes survey The Standish Group's report: "CHAOS Summary

Nadere informatie

De controller met ICT competenties

De controller met ICT competenties De controller met ICT competenties Whitepaper door Rob Berkhof Aangeboden door NIVE Opleidingen De controller met ICT competenties De huidige samenleving is nauwelijks meer voor te stellen zonder informatisering.

Nadere informatie

De impact en implementatie van de outsourcing op de bedrijfsvoering is als één van de 6 deelprojecten ondergebracht binnen het project outsourcing.

De impact en implementatie van de outsourcing op de bedrijfsvoering is als één van de 6 deelprojecten ondergebracht binnen het project outsourcing. Bijlagen 1 en 2: Aanbevelingen en opvolging Gateway Reviews (corsa 2018017934) Bijlage 1: Aanbevelingen en opvolging Gateway Review 2018 Aanbeveling Opvolging Status Opmerking 1. Richt een apart project

Nadere informatie

1. Work Breakdown Structure en WBS Dictionary

1. Work Breakdown Structure en WBS Dictionary 1. Work Breakdown Structure en WBS Dictionary CUSTOMER migratie Management Technische Transitie Meetings Status Reporting Administratie Technisch Upgegrade Systemen (3-tier) Delta Analyse & Functioneel

Nadere informatie

Programme Power. De weg van Portfoliomanagement naar Programmaregie

Programme Power. De weg van Portfoliomanagement naar Programmaregie Programme Power De weg van Portfoliomanagement naar Programmaregie Agenda Introductie Stedin Historie van Project- en Portfoliomanagement Van Portfoliomanagement naar Programmaregie Waar staan we nu Oog

Nadere informatie

Factsheet CONTINUOUS VALUE DELIVERY Mirabeau

Factsheet CONTINUOUS VALUE DELIVERY Mirabeau Factsheet CONTINUOUS VALUE DELIVERY Mirabeau CONTINUOUS VALUE DELIVERY We zorgen ervoor dat u in elke volwassenheidsfase van uw digitale platform snel en continu waarde kunt toevoegen voor eindgebruikers.

Nadere informatie

Wat drijft het werkveld?

Wat drijft het werkveld? Wat drijft het werkveld? Presentatie uitkomsten survey Jacob Brunekreef, Fontys ICT Jacob Brunekreef Meer dan 25 jaar werkzaam in de IT Nu: Projectleider EQuA project, Fontys ICT Adviseur / trainer bij

Nadere informatie

Projectmatig 2 - werken voor lokale overheden

Projectmatig 2 - werken voor lokale overheden STUDIEDAG Projectmatig werken in lokale overheden LEUVEN 27 oktober 2011 Projectmatig werken in de lokale sector Katlijn Perneel, Partner, ParFinis Projectmatig 2 - werken voor lokale overheden 1 Inhoud

Nadere informatie

Wanneer ga je Agile? Wat is Agile Project Management?

Wanneer ga je Agile? Wat is Agile Project Management? Wanneer ga je Agile? Agile Project Management 1 past goed in deze tijd. Het is snel, flexibel en leuk. Je kunt het echter niet altijd en overal gebruiken. Het werk en de organisatie moeten geschikt zijn

Nadere informatie

Concretere eisen om te (kunnen) voldoen aan relevante wet- en regelgeving zijn specifiek benoemd

Concretere eisen om te (kunnen) voldoen aan relevante wet- en regelgeving zijn specifiek benoemd >>> Overgang Maatstaf 2016 Onderstaand overzicht bevat de selectie van de geheel nieuwe eisen uit de Maatstaf 2016 en de eisen waarbij extra of andere accenten zijn gelegd, inclusief een korte toelichting.

Nadere informatie

Software Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces

Software Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces Software Processen Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Het software proces Een gestructureerd set van activiteiten nodig om een software systeem te ontwikkelen Specificatie;

Nadere informatie

De zorg is onze passie, verbeteren ons vak. Productive Ward

De zorg is onze passie, verbeteren ons vak. Productive Ward Productive Ward Verbeter de kwaliteit, veiligheid en doelmatigheid van uw zorg door reductie van verspilling Brochure Productive Ward CBO 2012 CBO, Postbus 20064, 3502 LB UTRECHT Alle rechten voorbehouden.

Nadere informatie

Functieprofiel Projectleider Functieprofiel titel Functiecode 00

Functieprofiel Projectleider Functieprofiel titel Functiecode 00 1 Functieprofiel Projectleider Functieprofiel titel Functiecode 00 Doel Voorbereiden en opzetten van projecten en bijbehorende projectorganisatie, alsmede leiding geven aan de uitvoering hiervan, binnen

Nadere informatie

van onderwijs en onderwijsondersteuning binnen Directeur onderwijsinstituut

van onderwijs en onderwijsondersteuning binnen Directeur onderwijsinstituut Opleidingsmanager Doel Ontwikkelen van programma( s) van wetenschappenlijk onderwijs en (laten) uitvoeren en organiseren van onderwijs en onderwijsondersteuning binnen de faculteit, uitgaande van een faculteitsplan

Nadere informatie

4.3 Het toepassingsgebied van het kwaliteitsmanagement systeem vaststellen. 4.4 Kwaliteitsmanagementsysteem en de processen ervan.

4.3 Het toepassingsgebied van het kwaliteitsmanagement systeem vaststellen. 4.4 Kwaliteitsmanagementsysteem en de processen ervan. ISO 9001:2015 ISO 9001:2008 Toelichting van de verschillen. 1 Scope 1 Scope 1.1 Algemeen 4 Context van de organisatie 4 Kwaliteitsmanagementsysteem 4.1 Inzicht in de organisatie en haar context. 4 Kwaliteitsmanagementsysteem

Nadere informatie

Aliens? http://www.youtube.com/watch?v=e5pqleh2hz8

Aliens? http://www.youtube.com/watch?v=e5pqleh2hz8 Aliens? http://www.youtube.com/watch?v=e5pqleh2hz8 Ontwikkelmethoden en technieken Kenmerken van ontwikkelmethoden POMT HC2 2 Vorige week 3 Rollenspel Klant is koning Communicatie en afspraken Documentatie

Nadere informatie

Functieprofiel Beleidsadviseur Functieprofiel titel Functiecode 00

Functieprofiel Beleidsadviseur Functieprofiel titel Functiecode 00 1 Functieprofiel Beleidsadviseur Functieprofiel titel Functiecode 00 Doel Ontwikkelen, implementeren en evalueren van beleid en adviseren op één of meerdere aandachtsgebieden/beleidsterreinen ten behoeve

Nadere informatie

Vergelijking van de eisen in ISO 9001:2008 met die in ISO FDIS 9001:2015

Vergelijking van de eisen in ISO 9001:2008 met die in ISO FDIS 9001:2015 ISO Revisions Nieuw en herzien Vergelijking van de eisen in ISO 9001:2008 met die in ISO FDIS 9001:2015 Inleiding Dit document maakt een vergelijking tussen ISO 9001:2008 en de Final Draft International

Nadere informatie

Software Engineering (I00094) College 3:

Software Engineering (I00094) College 3: Software Engineering (I00094) College 3: Kwaliteit, organisatie en documentatie Marko van Eekelen marko@cs.ru.nl kamer HG02.074 1 Huidige planning 1. 6 feb: Het systeemontwikkelproces 2. 13 feb: Requirements-analyse

Nadere informatie

Plan van Aanpak. project Tetris Packing

Plan van Aanpak. project Tetris Packing Plan van Aanpak project Tetris Packing Inleiding! 4 Projectomschrijving! 5 Producten! 5 Testplan! 5 Ontwerprapport! 5 Implementatierapport! 5 Testrapport! 5 Systeemdocumentatie! 5 Aanpak! 6 Projectmethodiek!

Nadere informatie

FUNCTIEFAMILIE 5.3 Projectmanagement

FUNCTIEFAMILIE 5.3 Projectmanagement Doel van de functiefamilie Leiden van projecten en/of deelprojecten de realisatie van de afgesproken projectdoelstellingen te garanderen. Context: In lijn met de overgekomen normen in termen van tijd,

Nadere informatie

Training Projectmanagement

Training Projectmanagement Training Projectmanagement Projectmanagement, sturen op resultaat Binnen jullie organisatie werken jullie veel met projecten. Jij bent projectleider, of je maakt deel uit van een speciaal opgesteld projectteam.

Nadere informatie

WHITEPAPER IN 5 MINUTEN. 11. Scrum

WHITEPAPER IN 5 MINUTEN. 11. Scrum WHITEPAPER IN 5 MINUTEN A U G U S T U S 2 0 1 4 11. Scrum Deze whitepaper gaat over Scrum. Kort en bondig: Scrum is een software-ontwikkelmethode met vaste sprints van enkele weken waarin steeds een verbeterde

Nadere informatie

Global Project Performance

Global Project Performance Return on investment in project management P3M3 DIAGNOSTIEK IMPLEMENTATIE PRINCE2 and The Swirl logo are trade marks of AXELOS Limited. P3M3 -DIAGNOSTIEK (PROJECT PROGRAMMA PORTFOLIO MANAGEMENT MATURITY

Nadere informatie

Agile-ontwikkelmethoden auditen

Agile-ontwikkelmethoden auditen Agile-ontwikkelmethoden auditen BBij steeds meer organisaties waar software ontwikkeld wordt, gebruikt men software-ontwikkelme- Onder thoden van Agile, zoals Scrum, DSDM en Extreme Programming. Agile-methoden

Nadere informatie

Resultaat risico inventarisatie Noordelijk Belastingkantoor

Resultaat risico inventarisatie Noordelijk Belastingkantoor Resultaat risico inventarisatie Noordelijk Belastingkantoor NOTITIE AAN: Bestuur NBK 11-1-2019 VAN: VKA STATUS: Aanleiding en vraag Het Noordelijk Belastingkantoor (hierna: NBK) verzorgt voor drie noordelijke

Nadere informatie

RAD Rapid application development. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

RAD Rapid application development. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V. RAD Rapid application development Een introductie Algemene informatie voor medewerkers van SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 10 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER...

Nadere informatie

Handleiding uitvoering ICT-beveiligingsassessment

Handleiding uitvoering ICT-beveiligingsassessment Handleiding uitvoering ICT-beveiligingsassessment Versie 2.1 Datum : 1 januari 2013 Status : Definitief Colofon Projectnaam : DigiD Versienummer : 2.0 Contactpersoon : Servicecentrum Logius Postbus 96810

Nadere informatie

Functieprofiel: Ondersteuner ICT Functiecode: 0405

Functieprofiel: Ondersteuner ICT Functiecode: 0405 Functieprofiel: Ondersteuner ICT Functiecode: 0405 Doel Registreren en (laten) oplossen van vragen en storingen van ICT-gebruikers binnen de richtlijnen van de afdeling, teneinde bij te dragen aan efficiënt

Nadere informatie

Advies. Advies over en ondersteuning bij het (initieel) inrichten/optimaliseren van de structuur van de(it Service Management)organisatie

Advies. Advies over en ondersteuning bij het (initieel) inrichten/optimaliseren van de structuur van de(it Service Management)organisatie DIENST Advies over en ondersteuning bij het (initieel) inrichten/optimaliseren van de structuur van de(it Service Management)organisatie Advies over en ondersteuning bij het initieel inrichten/optimaliseren

Nadere informatie

Projectmanagementenquête 2007

Projectmanagementenquête 2007 Projectmanagementenquête 2007 Handvatten voor succesvolle projecten 21 maart 2007 Bisnez Management in samenwerking met het IT Trends Institute en de Vrije Universiteit van Amsterdam copyright by Bisnez

Nadere informatie

Capability Maturity Model. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V.

Capability Maturity Model. Een introductie. Algemene informatie voor medewerkers van: SYSQA B.V. Capability Maturity Model Een introductie Algemene informatie voor medewerkers van: SYSQA B.V. Organisatie SYSQA B.V. Pagina 2 van 11 Inhoudsopgave 1 INLEIDING... 3 1.1 ALGEMEEN... 3 1.2 VERSIEBEHEER...FOUT!

Nadere informatie

MAATWERK OPLEIDINGEN 10 basisopleidingen 19 Modules Kies & Mix

MAATWERK OPLEIDINGEN 10 basisopleidingen 19 Modules Kies & Mix WIN TRAININGEN MAATWERK OPLEIDINGEN 10 basisopleidingen 19 Modules Kies & Mix 10 Basisopleidingen PMO, de start-up Prince II Foundation IPMA PMO P3O Foundation IPM voor de projectbeheerser Leading SAFe

Nadere informatie