IDEAL Een introductie
Algemene informatie voor medewerkers van SYSQA B.V.
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
2 van 8 1.1 02-10-2001
Inhoudsopgave 1
INLEIDING............................................................................................................................... 3 1.1 1.2
2
ALGEMEEN........................................................................................................................ 3 VERSIEBEHEER ................................................................................................................. 3
HET IDEAL-MODEL................................................................................................................ 4 2.1 2.2 2.3 2.4 2.5
DE INITIATING FASE ........................................................................................................... 5 DE DIAGNOSING FASE ....................................................................................................... 6 DE ESTABLISHING FASE ..................................................................................................... 6 DE ACTING FASE ............................................................................................................... 7 DE LEVERAGING FASE ....................................................................................................... 7
3
AANDACHTSPUNTEN............................................................................................................ 8
4
LITERATUURVERWIJZIGINGEN ........................................................................................... 8
Almere © 2000
Quality Assurance in ICT
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
3 van 8 1.1 02-10-2001
1 Inleiding 1.1
Algemeen
Het Software Engineering Institute heeft een implementatieaanpak ontwikkeld voor softwareprocesverbetering die de noodzakelijke fasen, activiteiten en benodigde middelen voor succesvolle procesverbeteringspogingen beschrijft. Deze aanpak staat bekend als IDEAL. Hoewel IDEAL ontwikkeld is door de organisatie die het CMM(I) heeft ontwikkeld en IDEAL ook zeer geschikt is voor het implementeren van het CMM(I) is IDEAL niet exclusief geschikt voor het CMM(I). IDEAL is een algemene methode voor het verbeteren van softwareprocessen. Deze intro beschrijft de fases en aandachtspunten van IDEAL.
1.2 Versie 0.1 1.0 1.1
Versiebeheer Status Concept Definitief Definitief
Datum 4 september 2000 15 januari 2001 2 oktober 2001
Almere © 2000
Auteur SYSQA BV SYSQA BV SYSQA BV
Opmerkingen Eerste opzet Aanvulling en definitief maken Aanpassing aan CMMI en opmerkingen
Quality Assurance in ICT
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
4 van 8 1.1 02-10-2001
2 Het IDEAL-model Het SEI heeft het IDEAL-model ontwikkeld als antwoord op de volgende vraag: ‘Wat moet gedaan worden om een verbeteringsprogramma te starten en welke activiteiten brengt het programma met zich mee?’ Het IDEAL-model is bedoeld om de activiteiten van een procesverbeteringsprogramma weer te geven en een consequente visie te presenteren van wat er komt kijken bij het implementeren van CMM(I) in organisaties. Ondanks dat het model expliciet verbonden is met dat van CMM(I), zijn de concepten algemeen genoeg om ze te gebruiken voor het definiëren van SPI implementatieprogramma’s die andere softwareproces-verbeteringsmethoden gebruiken. Het IDEAL-model houdt zich bezig met de behoeften van een software-organisatie voor wat betreft de verschillende gebieden van kwaliteitsverbetering. Het model omvat vijf fasen van een softwareproces-verbeteringscyclus. IDEAL is een acroniem dat is opgebouwd uit de beginletters van de volgende vijf fasen: • • • • •
I: Initiating (Initiatie) D: Diagnosing (Diagnose) E: Establishing (Inrichting) A: Acting (Actie) L: Leveraging (Verbetering)
Het belangrijkste doel van elk van deze fasen wordt kort samengevat in onderstaande tabel.
Acroniem
Fase
Hoofddoel
I D E
Initiating Diagnosing Establishing
A L
Acting Leveraging
Starten van het verbeterprogramma Bepalen van de huidige werkwijze Opstellen van de de implementatiestrategie en de actieplannen voor het verbeterprogramma Uitvoeren van de plannen en de aanbevolen verbeteringen. Analyseren van de geleerde lessen, vaststellen van bedrijfsresultaten van de verbeterinspanning en vervolgens de aanpak herzien
Almere © 2000
Quality Assurance in ICT
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
5 van 8 1.1 02-10-2001
Het is de bedoeling van IDEAL om één aanpak te presenteren; een beeld dat gemakkelijk te onthouden is, dat te gebruiken is voor het inrichten van een SPI-programma en –infrastructuur en om de resultaten van een assessment te implementeren. De vijf fasen van IDEAL worden geïllustreerd in het volgende figuur en kort beschreven in de volgende paragrafen. IDEAL™ SEI’s benadering van softwareproces-verbetering
Leveraging Revise Organizational Approach
Document& Analyze Lessons
Acting Define Processes& Measures
Stimulus for Improvement
Set Context & establish Sponsorship
Establish Improvement Infrastructure
Plan & Execute Pilots Plan, Execute & Track Installation
Initiating Appraise& Characterize Current Practice
Develop Recommendations & Document Phase Results
Establish Processes Action Teams Plan Actions Set Strategy Priorities
Establishing
&
Diagnosing
2.1
De Initiating fase
De Initiating fase omvat de volgende activiteiten: • Stimuleer verbetertraject (bedrijfsrechtvaardiging); • Bepaal context en breng steun tot stand (bewustzijn en deelname); • Voer verbeter-infrastructuur in (beoordeling van de bereidwilligheid van het team). In de eerste fase van het IDEAL-model worden de zakelijke redenen voor het ondernemen van een software-procesverbeteringspoging vastgesteld. Belangrijke zaken en knelpunten binnen de organisatie die de stimulans kunnen zijn voor het aanpakken van verschillende aspecten van kwaliteitsverbetering worden geïdentificeerd. Communicatie over deze zaken en knelpunten en over de doelstellingen van het SPI-programma zijn noodzakelijk gedurende de Initiating fase om zichtbare directiedeelname en commitment te verkrijgen in dit vroege stadium van het SPIprogramma.
Almere © 2000
Quality Assurance in ICT
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
6 van 8 1.1 02-10-2001
Commitment betekent hier meer dan het besluiten het SPI-programma te starten en de benodigde middelen toe te wijzen aan het project. Commitment heeft ook een element van leiderschap in zich. Software-procesverbetering betekent een enorme verandering van de manier waarop de meeste organisaties hun softwareontwikkeling uitvoeren. Het is verplicht dat de sleutelfiguren zeer goed begrijpen waar SPI over gaat en dat zij rotsvast geloven dat het de beste keuze is. Deze toewijding verschaft de impuls voor de verandering en de kracht om lange tijd door te gaan. Dit is nodig om een verbeteringspoging succesvol af te ronden. Gedurende de Initiating-fase dient de benodigde startinfrastructuur om de softwareprocesverbeteringspoging op gang en ondersteund te krijgen, ingericht te worden. Sleutelfiguren die betrokken dienen te zijn bij het SPI-traject worden geïdentificeerd en aangewezen. Hun bijdrage vergemakkelijkt de veranderingen binnen de organisatie en de noodzakelijke relaties met de sponsor. De sponsor is degene die de middelen (geld en tijd) beschikbaar stelt om het SPItraject uit te voeren en meestal de opdrachtgever. Degenen die de verbeteringspoging sponsoren en ondersteunen dienen te beginnen met de communicatie over de verbeteringspoging naar anderen toe en daarnaast extra ondersteuning op alle niveaus binnen de organisatie bereiken.
2.2
De Diagnosing fase
De Diagnosing fase omvat de volgende activiteiten: • Beoordeel en karakteriseer de huidige werkwijze (assessment-bevindingen); • Ontwikkel aanbevelingen en documenteer de resultaten (assessment-aanbevelingen en een eindrapport). De tweede fase van het IDEAL-model wordt gebruikt om door middel van een assessment de volwassenheid van de softwareprocessen binnen de organisatie vast te stellen. Op basis hiervan wordt een algemeen begrip van het huidige organisatieproces ontwikkeld, vooral voor wat betreft de sterke en zwakke kanten van deze huidige processen. Daarnaast biedt het hulp bij het identificeren van prioriteiten om de softwareprocessen te verbeteren. Tijdens de Diagnosing-fase wordt bepaald hoe goed de organisatie is voorbereid om het SPIprogramma te managen, ondersteunen en financieren. Tenslotte resulteert de Diagnosing-fase in aanbevelingen voor specifieke SPI-acties die de organisatie dient uit te voeren.
2.3
De Establishing fase
De Establishing fase omvat de volgende activiteiten: • Bepaal de strategie en de prioriteiten (prioriteiten-actielijst); • Plan de activiteiten (SPI-actieplan en verbeteringsprojecten); • Stel de actieteams samen. De derde fase van het IDEAL-model werkt de strategie en de ondersteunende plannen voor het software-procesverbeteringsprogramma uit. Het geeft richting en leiding voor de komende drie tot vijf jaar, waaronder de volgende punten: • • • •
Een strategisch plan voor de organisatie; Een strategisch software-procesverbeteringsplan; Lange termijn (drie tot vijf jaar) en korte termijn (een jaar) doelen van het softwareprocesverbeteringsprogramma; De tactische plannen voor de geselecteerde software-procesverbeteringsacties.
Daarnaast wordt de SPI-organisatie ingericht. In IDEAL wordt uitgegaan van één overkoepelende stuurgroep, de SEPG (Software Engineering Process Group) en per proces een software PIT (Process Improvement Team).
Almere © 2000
Quality Assurance in ICT
Organisatie Titel Onderwerp
2.4
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
7 van 8 1.1 02-10-2001
De Acting fase
De acting fase omvat de volgende activiteiten: • Definieer processen en metingen (ontwerp- en herontwerpprocessen); • Plan pilots en voer deze uit (pilot verbeteringsacties); • Plan, volbreng en volg de installatie (controleer de procesperformance door middel van feedback). De vierde fase omvat de acties die nodig zijn om veranderingen in organisatorische systemen door te voeren die moeten resulteren in verbeteringen van deze systemen. Deze verbeteringen worden gestructureerd voorbereid en geïmplementeerd en op die manier geborgd zodat ze hun nut gedurende een langere periode bewijzen. Technieken die gebruikt worden om veranderingen te ondersteunen en te institutionaliseren bestaan ondermeer uit: • Definiëren van softwareprocessen; • Definiëren van softwaremetingen; • Pilot testen van nieuwe processen en metingen; • Organisatiebrede implementatie van nieuwe processen en metingen. De software-procesverbeteringspoging wordt gemanaged en gevolgd om succes te verzekeren. Bovendien wordt informatie over de verbeteringspoging verzameld en bewaard met als doel het verbeteren van de toekomstige implementaties van software-procesverbeteringen binnen de organisatie.
2.5
De Leveraging fase
De Leveraging fase omvat de volgende activiteiten: • Documenteer en analyseer geleerde lessen (analyse feedback); • Heroverweeg organisatiebrede aanpak (time SPI-processen en SPI-infrastructuur). De vijfde fase van het IDEAL-model completeert de procesverbeteringscyclus. Geleerde lessen van de pilot projecten en van de verbeteringspogingen worden gedocumenteerd en geanalyseerd om het procesverbeteringsprogramma in de toekomst te verbeteren. Daarnaast wordt vastgesteld of de doelstellingen die waren vastgesteld aan het begin van de cyclus zijn bereikt. Op grond van deze informatie wordt met de sponsor bepaald of het programma wordt voortgezet door middel van een volgende software-procesverbeteringscyclus. Het is de bedoeling dat het software-procesverbeteringsprogramma een voortdurend programma is. Aan het einde van één procesverbeteringscyclus dienen de SPI-praktijken geïnstitutionaliseerd te zijn in de organisatie. Het software-procesverbeteringsteam heeft dan geloofwaardigheid verdiend en er is dan een aanhoudende interesse voor en toewijding tot softwareprocesverbeteringspogingen.
Almere © 2000
Quality Assurance in ICT
Organisatie Titel Onderwerp
SYSQA B.V. IDEAL Software process improvement
Pagina Versie Datum
8 van 8 1.1 02-10-2001
3 Aandachtspunten Implementeren van softwareprocesverbetering is een veranderprogramma Het ultieme doel van een software-procesverbeteringsprogramma is het verbeteren van de werkwijze van software-engineers en projectmanagers, vandaar dat het hoofdzakelijk een veranderprogramma is. Het gehele management van veranderstrategieën en –technieken is toepasbaar en relevant voor de implementatie van software-procesverbetering. Maak bij een SPIprogramma gebruik van alle verandermanagement regels. Identificeer potentiële stakeholders en maak gebruik van hun ondersteuning. Er zijn verschillende veranderstrategieën. Er dient bepaald te worden welke strategie het meest effectief is voor het betreffende SPI-programma.
Procesinstitutionalisering leidt tot continue procesverbetering Het ultieme doel voor een organisatie om te slagen is het bereiken van procesinstitutionalisering. Dit dient te leiden tot de creatie van een procescultuur waarbinnen procesorde de overhand heeft. Werken conform het proces wordt de natuurlijke werkwijze om software-engineering activiteiten uit te voeren. De aansturing door het management en de beloningssystemen dienen het verbeteren van de procesdiscipline te benadrukken.
Verzet tegen verandering kan de implementatie van SPI belemmeren Zoals het geval in elk veranderprogramma, stuit de implementatie van een softwareprocesverbetering hoogstwaarschijnlijk op verzet. Het identificeren van potentiële bronnen van verzet en daarnaast het plannen van manieren om deze te overwinnen en de weerstand te minimaliseren is belangrijk voor het succes van software-procesverbetering.
Het aanpassen van het IDEAL-model Het IDEAL-model is een compleet en allesomvattend verandermanagement-model maar laat wel ruimte voor aanpassingen. IDEAL definieert de hoofdfasen en noodzakelijke stappen voor het introduceren van software-procesverbetering binnen een organisatie en definieert daarnaast de infrastructuur die het SPI-programma ondersteunt. Afhankelijk van de organisatie en het project kan het echter aangepast worden.
Voortdurende managementsponsoring Verzeker de continuïteit en zichtbaarheid van senior managementsponsoring en de verplichting tot het software-procesverbeteringsprogramma. Dit is belangrijk omdat SPI geen eenmalige, maar een voortdurende inspanning is.
4 Literatuurverwijzigingen Software Process Improvement – Sami Zahran – 020117782X IDEAL: a userguide to software process improvement – Handbook CMU-SEI-96-HB-001 (op te vragen bij het productmanagement)
Almere © 2000
Quality Assurance in ICT