Softwareontwikkeling: hoe obstakels te vermijden (Pieter Vandenbulcke)
Keuzes maken binnen processen: het vermijden van...
Transcript of Keuzes maken binnen processen: het vermijden van...
UNIVERSITEIT GENT
FACULTEIT ECONOMIE EN BEDRIJFSKUNDE
ACADEMIEJAAR 2010 – 2012
Keuzes maken binnen processen: het vermijden van
een Russische roulette voor de organisaties
Masterproef voorgedragen tot het bekomen van de graad van
Master of Science in de
Toegepaste Economische Wetenschappen: Handelsingenieur
Mathias Heyse
onder leiding van
PhD. M. Bernaert & Prof. Dr. G. Poels
2
PERMISSION
Ondergetekende verklaart dat de inhoud van deze masterproef mag geraadpleegd en/of
gereproduceerd worden, mits bronvermelding.
Mathias Heyse
3
Keuzes maken binnen processen, het
vermijden van een Russische roulette voor
de organisaties
4
Dankwoord
Het schrijven van een masterproef is een uitdagende taak die niet mogelijk is zonder de steun en
hulp van enkele mensen. Daarom wil ik in dit dankwoord enkele mensen nadrukkelijk bedanken.
Eerst en vooral wil ik mijn promotor, Prof. Dr. Geert Poels bedanken voor het aanbieden van dit
onderwerp. Vervolgens, zou ik ook graag mijn begeleider Maxime Bernaert willen bedanken voor alle
hulp tijdens het uitwerken van deze masterproef. Mede dankzij de positieve feedback, de vele
suggesties en het nalezen van mijn masterproef ben ik erin geslaagd om dit werk tot een goed einde
te brengen.
Ik wil ook mijn ouders bedanken voor al de mogelijkheden die ze mij hebben gegeven en voor hun
steun tijdens mijn studies en tijdens deze masterproef.
Ten slotte wil ik mijn vrienden bedanken voor het nauwkeurig nalezen van mijn werk.
5
Inhoudstabel
Deel 1: Theoretisch kader
1 Inleiding ......................................................................................................................................... 10
1.1 Situatieschets ........................................................................................................................ 10
1.2 Probleemdefinitie .................................................................................................................. 10
2 Methodologie ................................................................................................................................ 12
3 Literatuuronderzoek ...................................................................................................................... 13
3.1 Requirements Engineering .................................................................................................... 13
3.2 Goal-Oriented Requirements Engineering ............................................................................ 15
3.3 Goal Modellen ....................................................................................................................... 19
3.3.1 Het NFR framework ....................................................................................................... 20
3.3.2 KAOS .............................................................................................................................. 22
3.3.3 I*/TROPOS ..................................................................................................................... 23
3.4 Actief onderzoek in GORE ..................................................................................................... 24
3.4.1 Kwalitatief redeneren met goal modellen .................................................................... 26
3.4.2 Kwantitatief redeneren met goal modellen .................................................................. 37
3.4.3 Integreren van preferenties tijdens het evalueren van goal modellen ......................... 45
3.4.4 Hoe kunnen prioriteiten opgesteld worden voor deze preferenties ............................ 47
Deel 2: Uitwerking masterproef
4 Inleidend hoofdstuk ...................................................................................................................... 51
4.1 Uitwerking probleemdefinitie ............................................................................................... 51
4.2 Werkwijze opstellen methode .............................................................................................. 54
5 Opstellen goal model..................................................................................................................... 56
6 Opstellen softgoal model .............................................................................................................. 57
6.1 Kwaliteit, kost en tijd ............................................................................................................. 57
6.2 SMART criteria voor KPI......................................................................................................... 61
6
6.3 Softoal decompositie ............................................................................................................. 62
6.4 Belang van stakeholders ........................................................................................................ 65
7 Prioriteiten .................................................................................................................................... 69
7.1 Het belang van prioriteiten ................................................................................................... 69
7.2 Opstellen van prioriteiten met behulp van AHP binnen eenvoudig softgoal model ............ 70
7.3 Opstellen van prioriteiten met behulp van AHP binnen softgoal model van online
counseling .......................................................................................................................................... 74
8 Evaluatie ........................................................................................................................................ 77
8.1 Evaluatie rekening houdend met de prioriteiten tussen softgoals ....................................... 77
8.2 Evaluatie zonder prioriteiten in rekening te brengen ........................................................... 81
8.3 Beoordeling evaluaties .......................................................................................................... 83
9 Sensitiviteitsanalyse ...................................................................................................................... 87
9.1 Veranderingen in prioriteiten tussen softgoals ..................................................................... 87
9.2 Veranderingen van bijdragen tot softgoals ........................................................................... 87
10 Overzicht methode ........................................................................................................................ 89
11 Groepsbesluitvorming ................................................................................................................... 90
11.1 Groepsbesluitvorming binnen één softgoal model ............................................................... 90
11.2 Groepsbesluitvorming tussen meerdere softgoal modellen................................................. 90
12 Besluit ............................................................................................................................................ 91
13 Conclusie ....................................................................................................................................... 91
14 Lijst met referenties ...................................................................................................................... 93
15 Appendix ........................................................................................................................................ 98
7
Lijst van Figuren
Figuur 1: Situering goal models ............................................................................................................. 20
Figuur 2: AND Decompositie ................................................................................................................. 25
Figuur 3: OR Decompositie .................................................................................................................... 25
Figuur 4: Axioma's label propagatie (Giorgini et al., 2003) ................................................................... 28
Figuur 5: Afgeleide axioma's (Giorgini et al., 2003) .............................................................................. 28
Figuur 6: Axioma's voor achterwaartse propagatie (Sebastiani et al., 2004) ...................................... 30
Figuur 7: Input en target goals (Sebastiani et al., 2004) ....................................................................... 31
Figuur 8: Model online counseling (J. Horkoff & Yu, 2009) ................................................................... 33
Figuur 9: Model online counseling met initiële warden (J. Horkoff & Yu, 2009) .................................. 36
Figuur 10: Voorbeeld goal model (Hui & Liaskos, 2003) ....................................................................... 38
Figuur 11: Vier mogelijke alternatieven uit goal model (Hui & Liaskos, 2003) ..................................... 40
Figuur 12: Contributies ten opzichte van de softgoals (Hui & Liaskos, 2003) ....................................... 42
Figuur 13: Mogelijk alternatief uit goal model ...................................................................................... 46
Figuur 14: Synthese van ingrediënten die nodig zijn bij besluitvorming (Kiker et al., 2005) ................ 54
Figuur 15: Goal model "Online Counselling" ......................................................................................... 56
Figuur 16: Besluitvorming tussen kwaliteit, kost en tijd ....................................................................... 57
Figuur 17: Kost, kwaliteit en tijd gekoppeld aan "Online Counselling" ................................................. 58
Figuur 18: Boomstructuur kwaliteit (Chung et al., 2000) ...................................................................... 60
Figuur 19: Softgoal model uit standpunt van de organisatie ................................................................ 63
Figuur 20: Mogelijke interne en externe stakeholders van een organisatie (Penumbra, n.d.) ............ 66
Figuur 21: Softgoal model uit het standpunt van de jongeren ............................................................. 67
Figuur 22: Softgoal model uit het standpunt van de raadgevers .......................................................... 68
Figuur 23: Invloed kost, kwaliteit en tijd op "Online Counselling" ........................................................ 71
Figuur 24: Uitwerking AHP op kost, kwaliteit en tijd ............................................................................ 73
Figuur 25: Ideale hierarchische structuur voor AHP ............................................................................. 74
Figuur 26: Netwerk structuur voor toepassing ANP ............................................................................. 75
Figuur 27: Toekennen gewichten via AHP ............................................................................................. 76
Figuur 28: Evaluatie alternatief Cyber Café/Portal/ Chat Room ........................................................... 80
Figuur 29: Evaluatie alternatief SMS- dienst ......................................................................................... 80
Figuur 30: Evaluatie alternatief Cyber Café/Portal/ Chat Room zonder prioriteiten ............................ 82
Figuur 31: Evaluatie alternatief SMS- dienst zonder prioriteiten.......................................................... 82
Figuur 32: Schematische voorstelling methode .................................................................................... 89
8
Lijst van tabellen
Tabel 1: Propagatie regels in een kwalitatief framework (Giorgini et al., 2003) .................................. 28
Tabel 2: Propagatie regels met contributielinks (J. Horkoff & Yu, 2009) .............................................. 34
Tabel 3: Label regels bij meerdere inkomende contributielinks (J. Horkoff & Yu, 2009)...................... 35
Tabel 4: Bijdragen van alternatieven tot preferenties (Hui & Liaskos, 2003) ....................................... 42
Tabel 5: Preferenties stakeholders (Hui & Liaskos, 2003) ..................................................................... 43
Tabel 6: Preferenties softgoals .............................................................................................................. 46
Tabel 7: Schaal (1-9) met absolute getallen (Saaty, 2008) .................................................................... 49
Tabel 8: Bijdragen alternatieven tot preferenties (Hui & Liaskos, 2003) .............................................. 52
Tabel 9: Illustratief voorbeeld van bijdragen alternatieven tot preferenties ....................................... 52
Tabel 10: Kwaliteit: ISO/9126 ................................................................................................................ 59
Tabel 11: Paarsgewijze vergelijkingsmatrix van kost, kwaliteit en tijd ................................................. 72
Tabel 12: Relatieve gewichten en rangschikking .................................................................................. 73
Tabel 13: Kwanitatieve voorsteling "++/+/-/--" ..................................................................................... 78
Tabel 14: Toekenning label aan softgoals ............................................................................................. 84
Tabel 15: Van kwalitatieve naar kwanitatieve bijdrages ....................................................................... 84
Tabel 16: Mogelijke uitwerking kwantitatieve bijdragen ...................................................................... 85
Tabel 17: Kwantitatieve bijdragen toegepast op voorbeeld ................................................................. 86
Tabel 18: Sensitiviteitsanalyse .............................................................................................................. 88
9
Lijst van gebruikte afkortingen
RE = Requirements Engineering
GORE = Goal Oriented Requirements Engineering
AHP = Analytical Hierarchy Process
ANP = Analytical Network Process
FS = Full satisfaction
PS = Partial satisfaction
FD = Full denial
PD = Partial denial
F = Full
P = Partial
N = None
Sat = Satisfaction
Den = Denial
MAUT = Multi Attribute Utility Theory
PDDL = Planning Domain Definition Language
10
DEEL 1: Theoretisch kader
1 Inleiding
1.1 Situatieschets
Besluitvorming is een cruciaal aspect van het bedrijfsleven. Maar hoe worden goede beslissingen
gemaakt? Natuurlijk zal de ervaring van de managers een rol spelen, maar in veel gevallen hangt de
kwaliteit van een keuze af van de beschikbare informatie. Indien men over de juiste informatie
beschikt en deze informatie op een correcte manier interpreteert, dan kan dit de keuze al voor een
groot deel vereenvoudigen.
De keuzes waar bedrijven mee geconfronteerd worden, zijn zeer uiteenlopend. Deze keuzes kunnen
strategische keuzes zijn. Stel bijvoorbeeld dat een bedrijf wil uitbreiden naar het buitenland maar
twijfelt op welke landen het zich best focust. Of indien er geïnvesteerd moet worden in een nieuwe
machine, moet er ook een keuze gemaakt worden tussen verschillende machines waarin ze het best
investeren. Maar ook op het operationele niveau moeten dagelijks verschillende keuzes gemaakt
worden. Keuzes tussen verschillende processen zijn daar een voorbeeld van. Stel bijvoorbeeld dat
een bedrijf twee verschillende manieren heeft om een dienst te leveren aan een klant. De eerste
manier is een duurdere manier waaraan additionele diensten gekoppeld worden om de
klanttevredenheid te verhogen of te behouden. Bij de tweede manier, een goedkopere, wordt er niet
veel aandacht gehecht aan de klanttevredenheid en probeert men gewoon hun basisdienst zo
goedkoop mogelijk te leveren. Afhankelijk van de klanten van een bedrijf, moet een bedrijf kiezen
tussen deze twee manieren. Het is logisch dat het bedrijf aan belangrijke, trouwe klanten de eerste
manier zal aanbieden en aan occasionele klanten de tweede manier. Het bedrijf zal dus moeten
bepalen waar het onderscheid tussen deze verschillende klanten gemaakt zal moeten worden.
1.2 Probleemdefinitie
Zoals reeds duidelijk is, is het voor veel bedrijven geen eenvoudige taak om al deze keuzes te maken.
In deze masterproef spelen we in op dit probleem en bieden we bedrijven een methode waarmee ze
alternatieven kunnen vergelijken en waarmee ze een grondige keuze kunnen maken tussen deze
alternatieven.
Voor het maken van beslissingen wordt reeds in veel bedrijven gebruik gemaakt van verschillende
modellen. Ook voor de keuze tussen processen kan beroep gedaan worden op een model of een
methode die een bedrijf helpt om de juiste keuze te maken. Een goed opgesteld model kan de keuze
11
tussen processen aanzienlijk vereenvoudigen, maar het is toch belangrijk om op te merken dat een
model in veel gevallen maar een hulpmiddel is dat de bedrijven kan bijstaan bij het maken van een
keuze. Het is dan ook zo dat een slecht opgesteld model systematisch tot verkeerde keuzes kan
leiden en dat in sommige gevallen, wanneer de beste keuze voor de hand liggend is, een model
overbodig is.
Ook Yu (Yu, 1995) was zich bewust van het grote aantal keuzes die moeten gemaakt worden in het
bedrijfsleven. Volgens hem kwam dit voornamelijk door het stijgend belang van technologie in onze
samenleving. Volgens Yu werden computers vaak geïntroduceerd om menselijke processen te
ondersteunen of zelfs volledig te automatiseren. Het doel was altijd om het totale proces te
verbeteren. Onder het verbeteren van het totale proces kunnen natuurlijk verschillende zaken
worden verstaan zoals snellere diensten, lagere kosten of betere kwaliteit. Mede dankzij de grote
beschikbaarheid van nieuwe technologieën is het dikwijls mogelijk om processen te herontwerpen
en op die manier aanzienlijke verbeteringen van het proces te verwezenlijken. Wanneer we deze
processen proberen te herontwerpen, zijn er meestal wel meerdere alternatieven mogelijk met elk
verschillende implicaties voor de verschillende partijen, stakeholders, die belang hebben bij dit
proces. Afhankelijk van de belangen van de stakeholders zal een bepaald bedrijf voor een zekere
strategie kiezen en die gekozen strategie zal ook de toekomstige keuzes beïnvloeden.
In deze masterproef is het de bedoeling om bedrijven bij te staan bij de keuzes tussen processen.
Daarvoor is het de bedoeling om het juiste alternatief te identificeren, te evalueren en te selecteren
voor het uitvoeren van een bepaald proces. Volgens Yu (Yu, 1995) zou een systematische aanpak die
gebruik maakt van de modellen en analysetechnieken, het verbeteren en het herontwerpen van de
processen vereenvoudigen. Er is duidelijk nood aan een methode die het mogelijk maakt om de
impact van verschillende ontwerpbeslissingen weer te geven.
Er wordt een model voorgesteld die de keuze tussen verschillende processen (alternatieven) moet
vereenvoudigen. Eerst wordt de Methodologie besproken om vervolgens verder te gaan met het
Literatuuronderzoek waarin een aantal bestaande werken die dit thema behandelen geanalyseerd
worden. De masterproef zelf begint met een Inleidend hoofdstuk (hoofdstuk 4) waarin het probleem
duidelijk geschetst wordt. In hoofdstuk 5 en hoofdstuk 6 worden respectievelijk het goal model en
het softgoal model opgesteld. In het 7de hoofdstuk worden de prioriteiten van de stakeholders
uitgewerkt om dan in hoofdstuk 8 de eigenlijke evaluatie uit te werken. In hoofdstuk 9 wordt een
sensitiviteitsanalyse toegepast. In hoodstuk 10 wordt een overzicht van onze methode gegeven. In
hoofdstuk 11 wordt groepsbesluitvorming kort toegelicht om te eindigen met een Besluit en een
12
Conclusie, waarin we ons eigen werk evalueren en aangeven wat er in de toekomst nog kan
gebeuren.
2 Methodologie
Om een model op te stellen is het noodzakelijk om kennis te hebben van de modellen en frameworks
die reeds bestaan. Daarvoor is er in het begin van deze masterproef veel onderzoekswerk verricht
naar de reeds bestaande literatuur. Daarbij was het de bedoeling om de reeds bestaande modellen in
kaart te brengen en deze modellen te evalueren. Bij deze evaluatie werd vooral gekeken in welke
gevallen bepaalde modellen het best gebruikt konden worden en op welke vlakken sommige
modellen tekort schoten. Een belangrijk werk hierbij was het Goals-Skills-Preferences Framework
(Hui & Liaskos, 2003). Dit werk wordt in het literatuuronderzoek gedetailleerd besproken.
Vertrekkend van dit werk hebben we andere belangrijke werken (Liaskos, Mcilraith, Sohrabi, &
Mylopoulos, 2010, 2011) gevonden die ook een oplossing trachtten te vinden voor ons probleem.
Opvallend tijdens het analyseren van de bestaande literatuur was de prominente aanwezigheid van
twee auteurs, namelijk John Mylopoulos en Axel van Lamsweerde. Er werd dan ook vooral gekeken
naar de recentste werken van deze auteurs over het betreffende onderwerp. In het
literatuuronderzoek worden enkele van hun modellen besproken, om dan vervolgens in de
masterproef zelf een nieuw model voor te stellen. Dit model is verder ontwikkeld uit bestaande
werken zoals (J. Horkoff & Yu, 2009; Hui & Liaskos, 2003; Liaskos et al., 2010, 2011). Om het nieuw
ontwikkelde model realistisch te kunnen evalueren, wordt er gebruik gemaakt van een bestaand
voorbeeld uit een gepubliceerd werk (J. Horkoff & Yu, 2009) om de uitkomsten van beide modellen
te kunnen vergelijken.
Naast het bestuderen van bestaande werken, is er ook onderzoek verricht naar besluitvorming met
behulp van meerdere criteria. Aangezien onze methode bedrijven moet helpen bij de keuze tussen
verschillende alternatieven, vonden we het noodzakelijk om dieper in te gaan op enkele veel
gebruikte methodes bij besluitvorming. Hier zijn we terecht gekomen bij een werk van (Kiker,
Bridges, Varghese, Seager, & Linkov, 2005). In dit werk wordt een beslissingsproces voorgesteld dat
kan gevolgd worden bij het maken van beslissingen met behulp van meerdere criteria. In deze
mastproef worden dezelfde stappen overlopen maar wordt er een adequate oplossing gezocht voor
elke stap afzonderlijk, die toepasbaar is binnen het gebied van Goal Oriented Requirements
Engineering.
13
3 Literatuuronderzoek
3.1 Requirements Engineering
Requirements engineering (RE) is het gebied binnen software engineering dat zich vooral bezighoudt
met de elicitatie, verfijning en analyse van de requirements (vereisten) van systemen. Het heeft de
laatste decennia veel aandacht gekregen van zowel academische als van industriële onderzoekers.
Met een systeem wordt het toekomstig proces en de omgeving waarin dit proces actief zal zijn
bedoeld. De reden waarom RE zoveel aandacht krijgt, is omdat zwakke requirements één van de
voornaamste redenen zijn voor het falen van bedrijfsprocessen. Zwakke requirements zijn
requirements die ontoereikend, onvolledig, dubbelzinnig of inconsistent zijn en daardoor een
negatieve impact hebben op de kwaliteit van het proces (V. Lamsweerde & Letier, 2004;
Lapouchnian, 2005).
Bewust van dit probleem en door het feit dat uit observaties bleek dat late correcties van deze
zwakke requirements zorgden voor enorme kosten (Boehm, 1981), werden meer en meer
modelleertalen ontwikkeld voor het definiëren en analyseren van requirements. RE houdt zich vooral
bezig met volgende drie taken (Loucopoulos & Karakostas, 1995):
Requirements elicitatie
Requirements specificatie
Requirements validatie en verificatie
In requirements elicitatie, ook soms requirements verzamelen genoemd, is het de bedoeling om op
zoek te gaan naar wat het probleem precies is en om het probleem te begrijpen. In deze fase worden
de requirements verkregen door interactie met de gebruikers, de klanten of andere mogelijke
belanghebbenden (stakeholders) van het proces. In een volgende stap, de requirements specificatie,
worden deze verschillende requirements vervolgens verder beschreven en in kaart gebracht. Tijdens
de laatste stap, requirements validatie en verificatie, wordt ten slotte gecontroleerd of de
verschillende belanghebbenden het eens zijn over de requirements die zijn vastgelegd (validatie) en
of deze requirements op de juiste manier zijn vastgelegd (verificatie), rekening houdend met de
interne en externe beperkingen van de onderneming en zijn omgeving (Vliet & Brinkkemper, 2002).
Uit het voorgaande en uit de talrijke definities van RE in de literatuur (Nuseibeh, 2000; Zave, 1997),
kunnen we vaststellen dat RE de onderliggende redenen weergeeft waarom een bedrijfssysteem
nodig is, welke functionaliteiten van dit systeem precies verwacht worden, welke verschillende
beperkingen aan dit systeem opgelegd worden, hoe het design van dit systeem er moet uitzien en
hoe het zo goed mogelijk geïmplementeerd kan worden.
14
Voor een gedetailleerde uitwerking van de verschillende activiteiten van RE wordt verwezen naar van
Lamsweerde (A. V. Lamsweerde, 2000). Hierin beschrijft van Lamsweerde de volgende overlappende
activiteiten van RE: domein analyse, elicitatie, onderhandelingen en overeenkomsten, specificatie,
specificatie analyse, documentatie en evolutie.
Onderzoek binnen RE heeft aangetoond dat RE kan onderverdeeld worden in twee fases, namelijk de
vroege requirements fase en de late requirements fase. De vroege requirements fase concentreert
zich vooral op het analyseren en het modeleren van de omgeving waarin het systeem actief zal zijn.
Het is noodzakelijk dat de wensen en de motivatie van de stakeholders begrepen worden om op die
manier de correcte requirements van het systeem te definiëren. In de late requirements fase wordt
vervolgens geprobeerd om het systeem te modeleren, rekening houdend met de omgeving waarin
het systeem actief is. Er wordt geprobeerd om de beste configuratie te zoeken zodat de wensen van
de stakeholders zoveel mogelijk vervuld worden (Alencar, Castro, Cysneiros, & Mylopoulos, 2000).
Binnen RE kan een belangrijk onderscheid gemaakt worden tussen functionele en niet-functionele
requirements. Functionele requirements beschrijven de functies of diensten die een software
systeem of een proces moet kunnen uitvoeren. De niet-functionele requirements, ook vaak de
kwaliteitsvereisten genoemd, vertegenwoordigen daarentegen de verschillende kwaliteiten of
eigenschappen waarover een systeem of proces moet beschikken. Voorbeelden van deze niet-
functionele requirements zijn: veiligheid, kost, snelheid en prestatie. Functionele requirements zijn
requirements die ofwel voldaan ofwel niet-voldaan zijn. Bij niet-functionele requirements is dit
echter niet het geval. Niet-functionele requirements omvatten heel het continuüm dat loopt van
niet-voldaan tot volledig voldaan. Het is dus moeilijker om niet-functionele requirements op een
objectieve en meetbare (kwantitatieve) manier uit te drukken. Als gevolg is het moeilijker om een
analyse uit te voeren op deze niet-functionele requirements.
Traditionele RE kent verschillende zwakke punten. Ten eerste ligt de focus dikwijls te veel op de
functionele requirements, waardoor de niet-functionele requirements in veel gevallen niet
voldoende betrokken worden of soms zelfs volledig achterwege gelaten worden. Deze niet-
functionele requirements hebben nochtans een belangrijk aandeel in de specificatie van de
requirements en zullen de kwaliteit van het uiteindelijke proces voor een groot deel bepalen. Verder
spelen ze een belangrijke rol in de evaluatie van de verschillende alternatieve manieren waarop een
proces uitgevoerd kan worden (Chung, Yu, & Mylopoulos, 2000; A. V. Lamsweerde, 2000, 2003). In
RE slaan deze alternatieven meestal op alternatieven waarin meer of minder functionaliteiten
15
geautomatiseerd worden. Maar zoals net vermeld schieten de traditionele technieken tekort om
deze alternatieven te beschrijven, te onderzoeken en met elkaar te vergelijken. In (van Lamsweerde
& Letier, 2004) argumenteren de auteurs dat goals een mogelijke oplossing kunnen bieden voor de
tekortkomingen van de traditionele modellen en technieken van RE. Dit is dan ook de reden waarom
we overschakelen naar Goal-Oriented Requirements Engineering.
3.2 Goal-Oriented Requirements Engineering
De laatste jaren is de populariteit van Goal-Oriented Requirements Engineering (GORE) enorm
gestegen (Lapouchnian, 2005). Dit komt, zoals eerder vermeld, omdat de traditionele RE methodes
er niet in slagen om de requirements te begrijpen die betrekking hebben tot de high-level belangen
in het probleemdomein. Te weinig aandacht ging uit naar “waarom” een bepaald systeem aanwezig
moest zijn. In GORE wordt deze nadruk wel gelegd. GORE slaagt erin om de verschillende belangen
van alle stakeholders beter te vertegenwoordigen omdat er meer rekening gehouden wordt met de
omgeving waarin het systeem operationeel is. Het is niet alleen omdat het traditionele RE vaak
tekortschiet dat GORE aan belang wint, maar ook omdat de voornaamste reden voor het succes van
een systeem de mate is waarin het voldoet aan de vooropgestelde goals. Deze goals hebben dan
exact betrekking op “waarom” een bepaald systeem of proces nodig is in een bedrijf. Het is dan ook
logisch dat het identificeren van deze goals één van de hoofdactiviteiten moet zijn tijdens de
ontwikkeling van een bedrijfssysteem. GORE houdt zich vooral bezig met het gebruik van goals voor
de elicitatie, de uitwerking, het onderhandelen, de documentatie en modificatie van requirements.
We kunnen deze activiteiten onderverdelen in de drie voornaamste activiteiten van GORE: goal
elicitatie, goal verfijning en goal analyse (van Lamsweerde, 2001; van Lamsweerde & Letier, 2004).
Yu (Yu, 1987) was één van de eerste die het belang van goals in RE heeft aangetoond. Volgens hem
bieden goals een criterium voor de volledigheid van de specificatie van de requirements. We komen
hier later op terug. Wat zijn goals nu precies? Een goal is het objectief, het doel dat het systeem in
ontwikkeling wil bereiken. Het systeem is het toekomstig proces of de toekomstige software die
moet ontwikkeld worden samen met de omgeving waarin het actief is. Goals verwijzen dus naar
systeemeigenschappen die zeker aanwezig moeten zijn. Dit kan bekeken worden op verschillende
niveaus van abstractie. Op het hoogste niveau zijn deze goals dan de strategische belangen van het
systeem (vb. klantentevredenheid) en op de lagere niveaus worden deze goals concreter aan de hand
van requirements (vb. elke klant moet binnen die 10 minuten bediend worden).
16
Een goal die binnen het nieuwe systeem onder de verantwoordelijkheid van één enkele agent valt,
wordt een requirement genoemd. Deze agent kan slaan op mensen met een specifieke rol, machines
of een bepaalde software. Een assumptie is een goal die onder de verantwoordelijkheid van de
omgeving van het nieuwe systeem valt. Anders dan een requirement kan een assumptie niet
verwezenlijkt worden door het nieuwe systeem en kan je deze assumptie dus niet beïnvloeden. Men
kan alleen hopen dat deze assumptie geldt of blijft gelden dankzij organisatorische normen en/of de
wetgeving (V. Lamsweerde, Darimont, & Letier, 1998; V. Lamsweerde & Letier, 2004; V. Lamsweerde
& Willemet, 1998).
Waarom zijn goals nu nodig? Hieronder bevinden zich de voornaamste redenen waarom goals zo
belangrijk zijn in RE. Voor een meer gedetailleerde uitwerking wordt er verwezen naar (van
Lamsweerde, 2001):
Ten eerste bieden goals zoals eerder gezegd een criterium voor de volledigheid van de
specificatie van de requirements. De specificaties zijn volledig indien alle goals kunnen
verwezenlijkt worden met de specificaties van de requirements en de domeineigenschappen
die op dat moment in rekening gebracht worden (Yu, 1987). Hier gaan we er wel van uit dat
alle goals die noodzakelijk zijn geïdentificeerd zijn.
Ten tweede zorgen goals ervoor dat je irrelevante requirements vermijdt. Dit wil zeggen dat
je alleen de requirements in overweging neemt die op zijn minst een bijdrage leveren tot één
goal (Yu, 1987). Opnieuw ervan uitgaand dat alle goals geïdentificeerd zijn.
Ten derde is het soms niet gemakkelijk om alle stakeholders te overtuigen van het belang
van sommige requirements. Goals bieden hier een oplossing, omdat ze de onderliggende
reden zijn waarom bepaalde requirements nodig zijn. Dit wordt verduidelijkt door de term
“traceability”. Via “traceability” kunnen low-level technische requirements gelinkt worden
aan de high-level strategische goals waartoe ze een bijdrage leveren. Op deze manier kan
aan iedere stakeholder eenvoudig aangetoond worden waarom voor een bepaalde
requirement gekozen is.
Ten laatste worden requirements engineers vaak geconfronteerd met veel alternatieven die
ze in overweging moeten nemen in het begin van het RE proces. In dit geval kunnen goal
verfijningen helpen om verschillende alternatieve systeemvoorstellen te onderzoeken,
doordat goals het juiste niveau van abstractie bieden waarop beslissingsnemers gegronde
keuzes kunnen maken uit de voorgestelde alternatieven (A. V. Lamsweerde, 2000).
17
De identificatie van de goals is echter niet altijd een eenvoudige opdracht. Soms worden ze expliciet
vermeld door de stakeholders of kunnen ze gemakkelijk achterhaald worden, maar in de meeste
gevallen zijn ze impliciet, waardoor ze nog achterhaald moeten worden. Voor de identificatie van
deze impliciete goals bestaan er meerdere technieken. Deze maken deel uit van de eerste fase van
GORE namelijk de goal elicitatie (Haumer, Pohl, Weidenhaupt, & V, 1998).
De mogelijke technieken bij goal elicitatie zijn zeer verschillend en uiteenlopend. Welke techniek
wordt gebruikt, is afhankelijk van de reeds beschikbare informatie. Men kan bijvoorbeeld het huidige
systeem analyseren om tekortkomingen of problemen op te sporen en aan de hand daarvan nieuwe
goals formuleren. Goals kunnen ook op een systematische manier geïdentificeerd worden door te
zoeken naar kernwoorden in interviews met de stakeholders. Ook uit de literatuur en voorbereide
documenten kunnen goals geïdentificeerd worden (van Lamsweerde, 2000).
Zoals requirements onderverdeeld werden in functionele en niet-functionele requirements, kunnen
we bij goals dezelfde onderverdeling toepassen. Goals worden dus ook opgesplitst in functionele en
niet-functionele goals. Functionele goals zijn de staat die een bepaald systeem wil bereiken. Niet-
functionele goals staan voor de verwachte systeemkwaliteiten zoals kost, veiligheid, prestatie,
flexibiliteit… Een rijke taxonomie/classificatie van niet-functionele goals kan teruggevonden worden
in (Chung et al., 2000). Een veel gebruikt classificatieschema is de standaard ISO/IEC 9126 waarin
softgoals opgesplitst worden in vier kwaliteitsniveaus, namelijk kwaliteit in gebruik, externe kwaliteit,
interne kwaliteit en proceskwaliteit. Een ander classificatieschema, FURPS, werd ontwikkeld door
Hewlett-Packard. Daarin worden de softgoals opgedeeld in functionaliteit, bruikbaarheid,
betrouwbaarheid, prestatie en ondersteuning.
Meestal spreken we echter niet over niet-functionele goals, maar over softgoals. Functionele goals
worden hardgoals genoemd. Deze softgoals onderaan de softgoal tree vertegenwoordigen de niet-
functionele requirements en zijn een belangrijk aspect van GORE (Mylopoulos, Chung, & Nixon,
1992). Aangezien de niet-functionele requirements zoals eerder vermeld het hele continuüm tussen
niet-voldaan en voldaan omvatten, is het bij softgoals ook niet mogelijk om te zeggen of een goal
volledig voldaan of niet-voldaan is. Bij hardgoals die zich onderaan de goal tree bevinden en
functionele requirements vertegenwoordigen, is dit echter wel het geval. Omdat het bij softgoals niet
mogelijk is om te zeggen dat deze goal “satisfied”(verwezenlijkt) is, wordt de term “satisficing”
gebruikt om aan te geven in welke mate deze goal vervuld is (Chung & Leite, 1996). Voor deze
softgoals is het noodzakelijk om een systeemvoorstel te vinden dat “goed genoeg” is of dat voldoet
aan een vooraf opgelegde grens. Bij de keuze tussen verschillende alternatieve systeemvoorstellen,
18
wordt gezocht naar het alternatief dat het “meest” bijdraagt tot alle softgoals of tot de softgoals die
het belangrijkst zijn voor de belanghebbenden. Het zal dus ondertussen duidelijk zijn dat voor de
keuze tussen deze alternatieven het belang van de niet-functionele requirements niet vergeten mag
worden, omdat het succes van een systeem vaak afhangt van de mate waarin deze niet-functionele
vereisten en dus ook de softgoals voldaan zijn.
De volgende stap in GORE is de goal verfijning. De goals die we verkregen hebben uit de goal
elicitatie moeten verfijnd worden in meerdere subgoals. Dit geldt zowel voor de functionele als voor
de niet-functionele goals. We kunnen een onderscheid maken tussen drie decomposities, namelijk
een AND-, een XOR- en een IOR- decompositie. De goal die opgesplitst wordt, kunnen we de ‘parent’
goal noemen en de goals waarin deze verfijnd wordt, noemen we vervolgens de subgoals. Wanneer
enkel de verwezenlijking van al deze subgoals samen ervoor zorgt dat de parent goal vervuld wordt,
dan spreekt men van een AND- decompositie. Indien de parent goal vervuld kan worden door de
verwezenlijking van één of meer van de subgoals, dan spreekt men van een IOR- decompositie.
Indien de parent goal vervuld kan worden door de verwezenlijking van juist één van de subgoals, dan
spreekt men van een XOR- decompositie. Het is belangrijk om op te merken dat deze OR
decompositie alternatieve manieren weergeeft waardoor de parent goal verwezenlijkt kan worden.
Het aantal alternatieve systeemvoorstellen die weergegeven worden door deze OR- decompositie
stijgt exponentieel met een stijgend aantal OR- decomposities. In veel huidig onderzoek ligt de focus
op het ontdekken van deze verschillende alternatieven, omdat deze OR- decomposities het mogelijk
maken om de variabiliteit waarmee sommige goals vervuld kunnen worden weer te geven. Deze goal
verfijning houdt natuurlijk niet op bij de subgoals. De subgoals kunnen op hun beurt verder verfijnd
worden via deze decomposities totdat een bepaalde goal onder de verantwoordelijkheid van een
agent valt en we kunnen spreken van een requirement zoals eerder vermeld (Mylopoulos et al.,
1992).
Bij deze verschillende decomposities zijn de subgoals dus verbonden aan hun parent goal. Er is
bijgevolg een link tussen deze goals. Dankzij deze link weten we onmiddellijk dat een parent goal
afhankelijk is van zijn subgoals en dat de subgoals dus een bijdrage leveren tot de parent goal.
Meestal is het ook mogelijk om de impact van deze bijdrage weer te geven. De verwezenlijking van
een subgoal zorgt er immers niet altijd onmiddellijk voor dat de parent goal ook helemaal
verwezenlijkt is. Er bestaan verschillende manieren om de bijdrage weer te geven. Zoals we later
zullen bespreken bestaan er niet enkel kwalitatieve manieren waarbij gewerkt wordt met “+” en “-”
om een positieve of negatieve bijdrage aan te tonen, maar er bestaan ook kwantitatieve manieren
die bijvoorbeeld een waarde van [-1,1] gebruiken om de bijdrage die een subgoal levert weer te
19
geven. Er bestaan echter niet alleen linken tussen de parent goal en de subgoals. Zoals eerder gezegd
wordt een goal verfijnd tot er een requirement is. Deze requirement levert dan logischerwijs ook een
bijdrage tot deze (functionele) goal maar er gaat nog een andere link uit van deze requirement. De
verschillende requirements leveren elk ook een verschillende bijdrage tot bepaalde niet-functionele
goals wat dan natuurlijk de uiteindelijke kwaliteit van het systeem bepaalt (Chung, Nixon, & Yu, 1996;
Letier & van Lamsweerde, 2004).
3.3 Goal Modellen
Tijdens de goal analyse, de laatste stap van GORE, worden de goal modellen geanalyseerd die
werden opgesteld uit de verschillende goals, hun decomposities en hun links (Amyot et al., 2010).
Deze analyse kan op een kwantitatieve of een kwalitatieve manier gebeuren, afhankelijk van de
beschikbare informatie. In sommige gevallen wordt ook een combinatie van beide manieren
gebruikt.
Hieronder zullen we eerst enkele veel gebruikte GORE methodes bespreken. Deze methodes kunnen
we situeren in de verschillende ontwikkelingsfases van RE. Deze fases zijn:
Vroege Requirements
Late Requirements
Architecturaal Design
Gedetailleerd Design
Implementatie
Bij de eerste twee methodes, het NFR framework en het I* framework, ligt de focus vooral op de
vroege requirements fase. Bij KAOS ligt de focus eerder op de late requirements fase. Bij Tropos, een
uitbreiding van het I* framework, worden alle fases behandeld (Kavakli, 2002).(Figuur 1)
20
Figuur 1: Situering goal models
3.3.1 Het NFR framework
Het NFR framework werd voorgesteld door Mylopoulos in (Mylopoulos et al., 1992) en werd verder
uitgewerkt in (Chung et al., 2000). Het NFR framework houdt zich vooral bezig met het modelleren
en analyseren van niet-functionele requirements. Het doel van dit framework is om de aandacht van
de systeemontwikkelaar, die teveel op de functionele requirements ligt, meer te vestigen op de niet-
functionele requirements. Het framework kan opgedeeld worden in de volgende voornaamste
activiteiten:
1. Het vastleggen van de niet-functionele requirements voor het domein waarin het systeem actief
is. Eenmaal deze NFRs vastliggen is het nodig om een decompositie te doen van de softgoals die
deze niet-functionele requirements vertegenwoordigen.
2. Het identificeren van de mogelijke systeemvoorstellen om het uiteindelijke doel te bereiken.
Vervolgens is het noodzakelijk de bijdragen die deze alternatieven leveren tot diverse niet-
functionele requirements te identificeren.
3. Het bepalen van de prioriteiten, onderlinge afhankelijkheden, onduidelijkheden en mogelijke
afwegingen (trade-offs) van deze niet-functionele requirements.
4. Het selecteren van mogelijke systeemvoorstellen.
5. De evaluatie van deze geselecteerde systeemvoorstellen om de impact ervan te kunnen bepalen
op de niet-functionele requirements en de verbonden softgoals.
21
De bedoeling van het NFR framework is dus in de eerste plaats om op een systematische manier de
niet-functionele requirements te modelleren en te verfijnen. Om dan vervolgens de positieve en
negatieve invloeden van de verschillende alternatieven op deze niet-functionele requirements te
kunnen blootleggen en analyseren.
In dit framework worden de bijdrages tussen de goals en de softgoals, maar ook de bijdrages tussen
de goals en de softgoals onderling, voorgesteld door kwalitatieve contributielinks. Deze links
bestaande uit help/make en hurt/brake contributielinks worden respectievelijk voorgesteld met
behulp van volgende symbolen: “+/++” en “-/--”. Verder wordt er in dit framework ook gebruik
gemaakt van een ‘softgoal interdepency graph’ (SIG) om de softgoals, de softgoal decompositie en de
softgoal contributielinks grafisch voor te stellen. Als de softgoals verder verfijnd worden, zal de
systeemontwikkelaar uiteindelijk een softgoal bereiken die gedetailleerd genoeg is en die niet verder
verfijnd kan worden. Door de invloed van verschillende systeemvoorstellen op deze softgoals te
bepalen en door gebruik te maken van een label propagatie algoritme, kan de ontwikkelaar de
verschillende systeemvoorstellen (alternatieven) evalueren. In dit algoritme worden aan de
verschillende softgoals labels toegekend en via vooraf opgestelde regels worden deze labels
gepropageerd doorheen het softgoal model. Op die manier is het mogelijk om een label te bepalen
voor de softgoal bovenaan het goal model. Dit algoritme wordt verder in meer detail besproken. Het
gekozen systeemvoorstel voldoet in ieder geval aan de functionele requirements, maar uit deze
evaluatie moet blijken of dit alternatief genoeg voldoet aan de niet-functionele requirements van het
systeem. Om aan te geven in welke mate een alternatief voldoet aan deze softgoals, wordt de term
‘satisfice’ gebruikt.
Om te besluiten kan er opgemerkt worden dat dit framework vertrekt van een procesgeoriënteerde
methode (Mylopoulos et al., 1992). In de procesgeoriënteerde methode probeert men namelijk
vooral het ontwikkelingsproces zodanig aan te passen dat dit proces direct in lijn ligt met de niet-
functionele requirements. Daarin verschilt ze van de productgeoriënteerde methode. In de
productgeoriënteerde methode wordt het eindproduct vergeleken met de niet-functionele
requirements en wordt er gecontroleerd of het eindproduct voldoet aan deze requirements
(Lapouchnian, 2005).
22
3.3.2 KAOS
KAOS is een methode uit GORE die zoals de andere goal modellen een aantal analysetechnieken
bevat. KAOS staat voor ‘Knowledge Acquisition in autOmated Specification’ of voor ‘Keep All Objects
Satisfied’. In KAOS wordt er gebruik gemaakt van semantische netten voor het modelleren van goals,
assumpties, agents, objecten en activiteiten (Dardenne, 1993).
In KAOS wordt een goal gedefinieerd als een ‘statement die de uiteindelijke bedoeling van een
systeem beschrijft, waarvan de verwezenlijking afhangt van de samenwerking van verschillende
agents waaruit het systeem bestaat’. Deze goals kunnen opnieuw verwijzen naar zowel functionele
als niet-functionele goals en ze worden evenzeer opgesplitst via de reeds gekende AND- en OR-
decomposities. De verfijning van goals eindigt wanneer elke subgoal verwezenlijkt kan worden door
een bepaalde agent die aan deze subgoal toegewezen wordt. Opnieuw worden agents gebruikt om
te verwijzen naar mensen, machines of software (van Lamsweerde & Letier, 2004).
KAOS is opgebouwd uit vier kernmodellen: een goal model, een responsibility model, een object
model en een operation model (Bernaert & Poels, 2011; Objectiver, 2007)
In het goal model wordt de bestaansreden van een goal duidelijk doordat alle goals gerechtvaardigd
kunnen worden door minstens één goal van een hoger niveau. Alle goals (behalve de goals onderaan
de structuur) kunnen verfijnd worden in één of meerdere subgoals. Hiervoor bestaan er twee
vormen van verfijning, namelijk AND- en OR- decompositie. Als laatste kunnen we opmerken dat de
goals bovenaan het goal model van meer strategische aard zijn en dat de goals onderaan het model
van meer operationele aard zijn. In het responsibility model worden de agents die verantwoordelijk
zijn voor de uitvoering van bepaalde goals voorgesteld. Het object model bevat eerder een soort
verklarende woordenlijst, waarin de karakteristieken van de verschillende agents in het model
worden uitgelegd. Verder bevat het object model de middelen die als input dienen voor een operatie
en de output van deze operatie. In het operator model worden ten slotte de mogelijke manieren
voorgesteld waarop een agent een requirements kan vervullen. Een requirements kan
geoperationaliseerd worden door objecten, door agentes of door een combinatie van beide.
In KAOS bestaan er ook zowel functionele als niet-functionele goals. KAOS biedt momenteel echter
nog geen methode om de impact van verschillende ontwerpbeslissingen met betrekking tot niet-
functionele requirements te evalueren, al kan een zekere variatie van het NFR framework en zijn
kwalitatieve methode gemakkelijk geïntegreerd worden in KAOS (Lapouchnian, 2005).
23
3.3.3 I*/TROPOS
Het I* framework is een agent-georiënteerd framework dat kan opgesplitst worden in twee delen:
het Strategic Dependency (SD) model en het Strategic Rationale (SR) model. I* kan zowel in de
vroege requirements fase als in de late requirements fase gebruikt worden. Tijdens de vroege
requirements fase wordt het I* framework gebruikt om de omgeving waarin het toekomstig systeem
zich zal bevinden te modeleren. Het vereenvoudigt de analyse van de omgeving omdat het toelaat de
stakeholders, hun objectieven en hun relaties schematisch voor te stellen. Dit laat toe om de
onderliggende reden waarom een bepaald systeem nodig is, te onderzoeken. In de late requirements
fase, wordt het I* model eerder gebruikt om nieuwe, alternatieve systeemconfiguraties en daarbij
dus hun nieuwe processen, te evalueren. Hierbij kijkt men vooral hoe goed het nieuwe systeem
voldoet aan de functionele en niet-functionele wensen van de gebruikers.
I* focust zich vooral op twee begrippen, namelijk “intentional actor” en “intentional dependency”.
Actors worden gebruikt om de stakeholders of agenten van het toekomstig systeem voor te stellen.
Aan deze actors kunnen verschillende attributen gekoppeld worden zoals hun goals, vaardigheden,
overtuigingen en verplichtingen. In I* modellen gebeurt het dikwijls dat een bepaalde actor afhangt
van andere actors voor het bereiken van zijn goals, het uitvoeren van zijn taken of voor de toevoer
van de middelen waarover hij zelf niet beschikt of waarover hij zelf niet op een goedkope, efficiënte
manier kan beschikken. Ook in I* kunnen deze actors mensen met specifieke vaardigheden,
machines of softwaresystemen voorstellen. De afhankelijkheden (links) tussen verschillende actors
worden intentional genoemd omdat die actors aan elkaar gekoppeld worden om op die manier het
doel te bereiken.
Het Strategic Dependency (SD) model is een netwerk van links tussen actors. Het SD model probeert
weer te geven aan welke processen de stakeholders het meeste belang hechten. Tijdens de late
requirements fase wordt dit SD model vervolgens gebruikt om veranderingen of alternatieven te
analyseren. Het Strategic Rationale (SR) model wordt eerder gebruikt om de reden achter bepaalde
processen in systemen en in organisaties te achterhalen. Dankzij het SR model is het mogelijk om
beter te begrijpen wat een bepaalde actor juist nodig heeft en hoe deze nood kan vervuld worden.
Het maakt het ook mogelijk om de invloed van verschillende alternatieven op elke actor beter te
analyseren.
Ook in dit model wordt er gewerkt met 2 decomposities, namelijk de AND- en de OR- decompositie.
Verder wordt hier ook gebruik gemaakt van de means-ends links. Means-ends links worden meestal
24
gebruikt bij goals en specificeren alternatieve manieren om die goals te bereiken. De links die
worden gebruikt, specificeren twee niveaus van positieve bijdrages (“+” en “++”) en twee niveaus
van negatieve bijdrages (“-” en “--”) ten opzichte van softgoals, het uitvoeren van taken of het
bereiken van andere goals. Dit kan vergeleken worden met het NFR framework. Ook hier worden
softgoals gebruikt als selectiecriteria bij de keuze tussen verschillende alternatieve
systeemconfiguraties (Yu, 1995, 1997).
Het I* framework vormt de basis voor Tropos. Tropos is een requirements gestuurde
agentgeoriënteerde ontwikkelingsmethodologie. De Tropos methodologie begeleidt de ontwikkeling
van agent-gebaseerde systemen vanaf de vroege requirements fase doorheen het architecturaal en
gedetailleerde design tot aan de implementatie. Tropos maakt gebruik van het I* framework om de
requirements voor te stellen en te analyseren (Bresciani, Perini, & Giorgini, 2004; Giorgini, Kolp,
Mylopoulos, & Pistore, 2004).
3.4 Actief onderzoek in GORE
Er is de laatste jaren veel onderzoek verricht en er is momenteel nog altijd veel onderzoek aan de
gang in meerdere domeinen van GORE. In deze masterproef proberen we om een methode te vinden
die de keuze tussen verschillende processen vereenvoudigt. Dit gebeurt zoals eerder vermeld binnen
het gebied van GORE. Meer bepaald ligt de focus vooral op de goal analyse. Hierbij zijn veel
verschillende methodes mogelijk. Zoals later duidelijk wordt bestaan er zowel kwalitatieve,
kwantitatieve als hybride (combinatie van beide) methodes. In het volgende deel zullen we enkele
prominente papers in meer detail bespreken. Een recent overzicht van reeds bestaande methodes en
hun specifieke manier van werken kan teruggevonden worden in (Horkoff & Yu, 2011).
De eerste methode die we hier beschrijven, vinden we terug in (Giorgini, Mylopoulos, & Nicchiarelli,
2003; Sebastiani, Giorgini, & Mylopoulos, 2004). Hierin wordt een kwalitatieve methode voorgesteld
om goal modellen te evalueren.
Zoals reeds aangehaald, bestaan de goal modellen uit verschillende goals die verfijnd worden in
subgoals via de AND- en OR- decomposities. Wanneer een goal G dus verfijnd wordt in subgoals G1,
G2, …, Gn via een AND- decompositie (respectievelijk, een OR- decompositie), dan betekent dit dat bij
een AND- decompositie (respectievelijk een OR- decompositie), elk van (minstens één van) deze
subgoals vervuld moeten zijn om goal G te vervullen.
25
Gegeven een goal model dat bestaat uit een reeks van AND en OR relaties, is het mogelijk om via een
label propagatie algoritme het goal model te evalueren. Dit gebeurt door een set van initiële labels (S
of D) aan de knooppunten van het model toe te kennen. Hierbij wordt het label “S” toegekend indien
een subgoal vervuld is (satisfied) en het label “D” indien een subgoal niet vervuld is (denied)(Nilsson,
1971). Via een simpel algoritme is het dan mogelijk om deze labels te propageren doorheen het goal
model om zo te bepalen of de ‘target’ goal vervuld is. Als dit toegepast wordt op de onderstaande
figuren, kunnen we eenvoudig besluiten dat bij Figuur 2 zowel G2 als G3 het label “S” moeten krijgen
opdat goal G vervuld is. Bij Figuur 3 moet slechts een van de twee subgoals het label “S” krijgen om
ervoor te zorgen dat G vervuld is.
Figuur 2: AND Decompositie
Figuur 3: OR Decompositie
Jammer genoeg is het gebruik van dit simpele algoritme ontoereikend in veel toepassingsgebieden
waar de goals niet altijd duidelijk gedefinieerd kunnen worden als “satisfied” of als “denied” en waar
26
de relaties tussen de verschillende goals niet altijd kunnen gedefinieerd worden met de AND/OR
relaties. Het eerste probleem komt vooral voor bij softgoals omdat deze zoals eerder vermeld vaak in
het gebied liggen tussen vervuld en niet-vervuld. Bijvoorbeeld bij een goal zoals “een zeer
betrouwbaar systeem” is er geen regel die zegt vanaf wanneer deze goal vervuld is. Deze goal kan
verfijnd worden in verschillende andere goals zoals “grondige foutdetectie systeem” en “grondig
getest” waarbij de vervulling van deze goals duidelijk een bijdrage zal leveren tot de goal “een zeer
betrouwbaar systeem”, maar het is onduidelijk hoe groot deze bijdrage zal zijn. Verder is het ook niet
altijd zo dat wanneer de subgoals vervuld zijn, de parent goal voldoende vervuld is. Dit eenvoudig
algoritme zal men ook niet kunnen toepassen wanneer er tegenstrijdige contributies zijn tot
eenzelfde goal. Dit is bijvoorbeeld het geval wanneer een goal G opgesplitst wordt in subgoals
waarbij sommige een positieve bijdrage leveren tot deze goal en er dus voor zorgen dat goal G
vervuld wordt, terwijl andere subgoals een negatieve bijdrage leveren en dus zorgen dat goal G niet
bereikt wordt.
3.4.1 Kwalitatief redeneren met goal modellen
Er moest dus gezocht worden naar een framework dat het mogelijk maakt om op een meer
kwalitatieve manier te redeneren met goals en om hierbij te kunnen werken met tegenstrijdige
relaties. Hier slagen ze in door de simpele goal relaties “+” en “-” te introduceren. Dit betekent
respectievelijk dat een goal een positieve en een negatieve bijdrage levert tot de vervullingen van
een andere goal. Bijvoorbeeld wanneer we hebben +(G,G’), dit betekent dat wanneer goal G is
vervuld, dat goal G’ een positieve bijdrage krijgt en dat goal G’ vervolgens goal G’ gedeeltelijk vervuld
is.
Daarbovenop wordt er ook gebruik gemaakt van de al gekende “++” (respectievelijk “--”) relaties. Dit
zijn zogenaamde binaire relaties zodat ++(G,G’) betekent dat het verwezenlijken van G, de
verwezenlijking van G’ impliceert en bij --(G,G’) komt de verwezenlijking van G erop neer dat G’ niet
verwezenlijkt wordt. Deze “++” en “-- ” relaties werden al toegepast in het eenvoudige algoritme en
worden soms ook binaire relaties genoemd omdat ze ofwel volledig vervuld ofwel volledig niet
vervuld propageren.
Tot nu toe gingen we ervan uit dat de goal relaties +(G,G’) tweeledig (symmetrisch) zijn. Daarmee
wordt bedoeld dat we bijvoorbeeld bij +(G,G’) ervan uitgingen dat wanneer G vervuld is, dat G’ dan
gedeeltelijk vervuld is en tweeledig dat wanneer G niet vervuld is, dat G’ gedeeltelijk niet vervuld is
als gevolg hiervan. Hier moet er opgemerkt worden dat deze tweeledigheid niet altijd geldt en dat
27
deze relatie soms alleen maar geldig is voor alleen een positieve of alleen een negatieve bijdrage en
dat deze bijdrage dus niet zomaar als symmetrisch beschouwd mag worden. Om duidelijker aan te
geven of een relatie al dan niet symmetrisch is worden de relaties -S,-D, +S en +D geïntroduceerd.
Doordat niet alle relaties symmetrisch zijn, is het logisch dat er drie mogelijke labels bestaan voor
elke relatie type . De drie mogelijk labels zijn: “rS”, “rD”, “r” . Deze labels
betekenen respectievelijk dat de “satisfaction” wordt gepropageerd, dat de “denial” wordt
gepropageerd en dat beide worden gepropageerd. De eerste twee zijn duidelijk asymmetrisch omdat
ofwel “satisfaction” ofwel “denial” gepropageerd wordt terwijl de laatste duidelijk symmetrisch is.
Een voorbeeld hiervan is, G2 G1. Dit betekent dat wanneer G2 voldaan is, er in zekere mate
bewezen is dat G1 niet voldaan is, maar indien G2 niet voldaan is, dan kan er niets gezegd worden
over de mate waarin G1 voldaan is. De symmetrische relatie G2 G1 is dus een combinatie van de
twee volgende asymmetrische relaties G2 G1 en G2
G1 .
De relaties (++,+,-,--) die bestaan tussen de verschillende goals werden reeds verduidelijkt. Door de
introductie van deze nieuwe relaties die de partiële bijdrage weergeven, is het ook nodig om de
reeds bestaande labels namelijk “S” en “D” ook verder uit te breiden. In totaal kunnen we nu vier
labels definiëren namelijk “FS”, “PS”, “PD” en FD”.
Maar wat betekenen deze labels nu? Als G1, G2, … goal labels voorstellen, dan betekent FS(G), FD(G)
en PS(G), PD(G) respectievelijk dat er volledig bewijs is dat goal G vervuld is en dat G niet vervuld is,
en dat er op zijn minst gedeeltelijk bewijs is dat G vervuld is en dat G niet vervuld is. FS(G) en FD(G)
betekenen respectievelijk “Full (volledige) satisfaction” en “Full (volledige) denial” van goal G. PS(G)
en PD(G) betekenen dan respectievelijk “Partial (gedeeltelijke) satisfaction” en “Partial (gedeeltijke)
denial” van goal G. Indien er geen enkel bewijs is om aan te tonen dat een goal G vervuld of niet
vervuld is, wordt het label “T” toegekend. Dit label staat voor “triviaal waar” en betekent dus dat
goal G geen significante betekenis heeft. De labels kunnen als volgt geordend worden FS(G) ≥ PS(G) ≥
T en FD(G) ≥ PD(G) ≥ T.
Om deze labels te “propageren” doorheen het goal model, wordt er gebruik gemaakt van axioma’s.
De axioma’s die we hiervoor gebruiken kunnen teruggevonden worden in Figuur 4.
28
Figuur 4: Axioma's label propagatie (Giorgini et al., 2003)
Axioma (1) in de figuur benadrukt dat FS en FD automatisch ook respectievelijk PS en PD impliceren.
Bij axioma’s (2) en (3) wordt de betekenis van een AND decompositie nog eens verduidelijkt. Om FS
van goal G te verkrijgen is het nodig dat alle subgoals Gi ook het label FS hebben. Hetzelfde geldt
voor PS, FD en PD. Bij axioma (4) zorgt de “+s” relatie ervoor dat de PS van G2 ervoor zorgt dat G1 ook
het label PS krijgt. Hetzelfde gebeurt bij axioma (5) maar dan langs de negatieve kant. Bij axioma (6)
zorgt de “++s” relatie ervoor dat het volledige label van G2 gepropageerd wordt naar G1. Hetzelfde,
maar dan langs de negatieve kant gebeurt opnieuw bij axioma (7).
Uit de combinatie van deze axioma’s kunnen axioma (13) en (14) afgeleid worden (Figuur 5). Axioma
(13) stelt dat bij een AND relatie telkens de minimale waarde gepropageerd wordt. Axioma (14) stelt
op zijn beurt dat er bij een “+s” relatie maximaal een partiële bijdrage gepropageerd kan worden.
Figuur 5: Afgeleide axioma's (Giorgini et al., 2003)
Tabel 1: Propagatie regels in een kwalitatief framework (Giorgini et al., 2003)
29
Deze axioma’s worden gebruikt bij het label propagatie algoritme. Aan elke goal G van een goal
model worden twee variabelen toegekend, namelijk Sat(G) en Den(G). Deze variabelen liggen elk in
het interval {F, P, N} (volledige, gedeeltelijk, niets). Aan de goals aan het uiteinde van het goal model
worden dan initiële waarden toegekend en via de regels uit Tabel 1 worden deze waarden
gepropageerd doorheen het goal model tot uiteindelijk de waarde van de “target” goal bepaald is. In
de eerste kolom van Tabel 1 bevinden zich de regels voor een AND- relatie en zoals net vermeld
wordt bij een AND relatie steeds de minimale waarde gepropageerd. In de volgende twee kolommen
wordt een partiële bijdrage gepropageerd en zoals net vermeld kunnen “+s” en “-s” alleen maar PS
en PD propageren waardoor steeds het minimum genomen wordt van Sat(G2) en P. De laatste twee
kolommen bevatten de “++s” en “--s” relaties. Deze relaties kunnen er wel voor zorgen dat een
volledig label gepropageerd wordt.
Verder wordt er gesproken van een zwak conflict wanneer aan een goal G zowel PS(G) en PD(G),
FS(G) en PD(G), PS(G) en FD(G) wordt toegekend via meerdere inkomende relaties. Er wordt
gesproken van een sterk conflict wanneer er zowel FS(G) als FD(G) geldt voor een bepaalde goal G.
Gebaseerd op de label propagatie methode, werd er vervolgens een algoritme voorgesteld om deze
labels automatisch te kunnen propageren doorheen het goal model. Hierbij is het enkel nodig om
initiële labels toe te kennen aan de knooppunten van het model en het algoritme bepaalt dan via de
regels uit Tabel 1 het uiteindelijke label van de “target” goal. De uitwerking van dit algoritme gebeurt
echter niet altijd manueel omdat in veel gevallen het goal model daar te uitgebreid voor is. Voor de
uitwerking van zo een model wordt dan dikwijls gebruik gemaakt van een tool genaamd GOALSOLVE.
Meer informatie over deze tool kan teruggevonden worden in (Sebastiani et al., 2004).
In (Giorgini et al., 2003), de paper die net besproken werd, werd er gebruik gemaakt van de
zogenaamde voorwaartse propagatie, ook wel de bottom-up aanpak genoemd. Hiermee wordt
bedoeld dat een goal model het vertrekpunt vormt en dat de gebruiker initiële waarden toekent aan
de goals op het einde van het model, ook wel input goals genoemd. Deze waarden worden
vervolgens voorwaarts gepropageerd volgens de regels uit Tabel 1. De gebruiker kan op die manier
de finale waarden bepalen van de top goals (soms ook wel target goals of root goals genoemd). In
(Sebastiani et al., 2004) wordt hierop verder gebouwd, maar er wordt gewerkt met een
achterwaartse propagatie, ook wel top-down aanpak genoemd. Bij deze achterwaartse propagatie
wordt er gezocht naar mogelijk inputwaarden die leiden tot de gewenste finale waarden van de top
goals onder de gewenste beperkingen. De gebruiker bepaalt de gewenste finale waarden en er wordt
30
vervolgens gezocht naar mogelijke initiële waarden waarmee men via voorwaartse propagatie aan
deze finale waarden zou komen.
In Figuur 6 kunnen de axioma’s voor achterwaartse propagatie teruggevonden worden. De axioma’s
in Figuur 6 bepalen telkens welke waarden de subgoals van goal G moeten hebben afhankelijk van de
gewenste waarde van goal G en de relatie die er is tussen goal G en zijn subgoals. Bijvoorbeeld bij de
axioma’s links bovenaan moet uiteindelijk telkens FS(G) bereikt worden. Bij de eerste regel is er een
AND- relatie waardoor het noodzakelijk is dat alle subgoals ook de waarde FS(Gi) bezitten. Bij de
tweede regel is er een IOR- relatie. Bij deze relatie is het nodig dat minstens één subgoal Gi de
waarde FS(Gi) bezit maar er mogen ook meerdere subgoals deze waarde bezitten. Bij de derde en de
vierde regel is een “++s” of een “--s” relatie nodig zodat een subgoal die FS(Gi) of FD(Gi) bezit, ervoor
zorgt dat goal G de gewenste waarde krijgt. Dit komt omdat een “++s” of een “--s” relatie nodig is om
een volledige waarde te propageren.
Figuur 6: Axioma's voor achterwaartse propagatie (Sebastiani et al., 2004)
Het gebruik van input en target goals verdient toch wat extra uitleg. Goal modellen kunnen in
sommige gevallen een cyclus bevatten. In deze gevallen is het soms niet onmiddellijk duidelijk welke
target goals zijn en welke input goals. In de meeste gevallen kunnen we er echter van uitgaan dat de
input goals leaf goals zijn en de target goals de root goals zijn. De keuze kan overgelaten worden aan
de gebruiker, maar toch moeten een aantal regels gevolgd worden. Elk pad dat binnenkomt in een
target goal moet afkomstig zijn van een input node. Een voldoende voorwaarde hiervoor is dat alle
leaf goals input goals zijn. Een klein voorbeeld ter verduidelijking (Figuur 7).
31
Figuur 7: Input en target goals (Sebastiani et al., 2004)
In dit voorbeeld is G0 de target goal en zijn G2 en G3 de input goals. Verder merken we op dat G0 en G1
een cyclus vormen zonder input goals. Als we de finale waarde FS(G0) toekennen aan de target goal,
dan kunnen we volgens de achterwaartse propagatie stellen dat we FS(G1) hebben en vervolgens
terug FS(G0). Dus kan FS(G0) bepaald worden via voorwaartse propagatie van G1 zonder de waarden
van de input goals. Dit mag natuurlijk niet gebeuren. Als in de plaats daarvan G1 een input goal is dan
kunnen we vaststellen dat ofwel FS(G1) of FS(G2) en FS(G3) de nodige initiële waarden zijn om de
finale waarde te bereiken.
In (Sebastiani et al., 2004) gaan de auteurs ook op zoek naar een methode om een goal model te
evalueren, maar hierbij proberen ze de oplossing te vinden die de kost minimaliseert. Als we
opnieuw een goal model (G,R) met input goals Gi1, …, Gik en target goals Gf1, …, Gfn bekijken en we
bepalen de gewenste finale waarden vs(Gf1), vd(Gf1), …, vs(Gfn), vd(Gfn) van de target goals. φ is de
formule die het probleem codeert, indien φ niet vervuld is, dan betekent dit dat er geen initiële
waarden bestaan waarmee de gewenste finale waarden kunnen bereikt worden via voorwaartse
propagatie. Indien φ wel vervuld kan worden, dan betekent dit dat er een toewijzing bestaat
waarmee de finale waarden wel bereikt kunnen worden. Van alle mogelijke toewijzingen die ervoor
zorgen dat φ vervuld is, proberen ze vervolgens te achterhalen welke toewijzing er dezelfde tijd ook
voor zorgt dat de kosten geminimaliseerd worden. Hiervoor is ook een tool ontwikkeld,
GOALMINSOLVE genaamd (Sebastiani et al., 2004).
Een recenter werk in het kwalitatief evalueren van alternatieven is (J. Horkoff & Yu, 2009). In deze
paper wordt een kwalitatieve, interactieve evaluatieprocedure voorgesteld om goal- en agent-
georiënteerde modellen te evalueren. In de vorige onderzoeken lag de focus te veel op
geautomatiseerde procedures waardoor de mogelijkheid voor de gebruiker om tussen te komen in
de analyse gelimiteerd was. Bij de in deze paper voorgestelde procedure is het wel mogelijk voor de
gebruiker om de evaluatie bij te staan met domeinkennis die niet meegerekend werd in het model.
De procedure wordt ondersteund met het I* Framework en verder verduidelijkt met een case studie.
Dit is dezelfde case studie waarmee het voorgestelde model uit deze masterproef getest wordt.
32
Bij deze casestudie wordt er vertrokken van een non-profit organisatie die telefonische raad biedt
aan jongeren, maar meer jongeren wil helpen door gebruik te maken van het internet. Online
counseling zou ideaal zijn om meer individuen te bereiken en zou een comfortabele afstand bieden
waardoor de jongeren makkelijker contact kan zoeken. Ook zou de grens voor het vragen van hulp op
die manier verlaagd worden. Maar er zijn ook enkele vraagtekens bij online counseling. Zo gaat het
persoonlijk contact verloren en zijn er ook vragen omtrent de geheimhouding, de bescherming tegen
mensen met slechte bedoelingen en het verkeerd interpreteren van de raad. De vraag is hier dus hoe
een organisatie de verschillende mogelijkheden voor online counseling kan onderzoeken en
evalueren.
Via goal- en agent- georiënteerde modellen is het mogelijk om een model op te stellen dat
verschillende alternatieven bevat en waarbij deze alternatieven positief of negatief bijdragen tot
softgoals die op hun beurt bijdragen tot andere softgoals. Zoals reeds duidelijk geworden is, is het
nuttig om te bepalen in welke mate bepaalde goals bereikt worden wanneer een bepaald alternatief
geselecteerd wordt. Dit is natuurlijk niet altijd even gemakkelijk omdat er meerdere relaties zijn
tussen de verschillende softgoals. Daarom is het nodig om over een procedure te beschikken die het
mogelijk maakt om het effect van verschillende alternatieven te analyseren doorheen een goal
netwerk. Deze procedure maakt gebruik van labelpropagatie via de links tussen softgoals. Deze
labelpropagatie hebben we hierboven reeds besproken en uitgelegd aan de hand van (Giorgini et al.,
2003; Sebastiani et al., 2004). Het is dus duidelijk dat de softgoals cruciaal zijn bij het evalueren van
alternatieven.
De kwalitatieve, interactieve procedure maakt het mogelijk om verschillende alternatieven in het
domein te vergelijken. Deze alternatieven kunnen alternatieve systeem of proces
ontwerpbeslissingen zijn, of een alternatieve gang van zaken. De procedure wordt zoals gezegd
voorgesteld gebruik makend van het I* Framework, maar het zou evengoed kunnen voorgesteld
worden via andere goal georiënteerde modellen (NFR, KAOS, GRL).
Om het model op te stellen wordt er gebruik gemaakt van een aantal stappen. In de eerste plaats
moet duidelijk zijn wat het doel is van het model en moeten alle elementen uit het model
geïdentificeerd worden. Vervolgens moeten de relaties tussen deze actors ook in kaart gebracht
worden.
33
Als we terugkeren naar het probleem van online counseling, werd na het uitvoeren van de eerste
stappen onderstaand model opgesteld (Figuur 8). Onmiddellijk kan er onderscheid gemaakt worden
tussen drie actors: de organisatie (organization), de jongeren (kids and youth) en de raadgevers
(counsellors). We kunnen ook onmiddellijk twee alternatieve manieren van online counseling
terugvinden. De eerste manier is via het versturen van tekstberichten met een mobiele telefoon en
de tweede manier is via een online cybercafé/portal/chat room. De invloed van elk alternatief op de
softgoals is ook weergeven via de contributielinks. Het is onmiddellijk t duidelijk dat zelfs voor dit
gemakkelijk voorbeeld waarbij er slechts twee alternatieven zijn, er onmiddellijk een complex web
van contributies en afhankelijkheden ontstaat.
De laatste stap is voor deze masterproef de belangrijkste. In deze stap worden de verschillende
alternatieven geëvalueerd. De procedure die hiervoor gebruikt wordt, start vanuit de algemene
vraag: “Hoe effectief is een alternatief met betrekking tot de goals van het model?”. De procedure
werkt eveneens met kwalitatieve evaluatielabels die worden toegewezen aan goals om de mate
waarin een goal bereikt is weer te geven. In het begin van de procedure is het dus nodig om initiële
Figuur 8: Model online counseling (J. Horkoff & Yu, 2009)
34
labels toe te wijzen aan de goals die gerelateerd zijn aan de algemene vraag. De waarden worden
vervolgens gepropageerd doorheen het model, gebruik makend van de propagatie regels. De
interactieve aard van de procedure is belangrijk om te bepalen of bepaalde softgoals al dan niet
voldoende bereikt zijn. Meer details in verband met deze procedure kunnen teruggevonden worden
in (J. Horkoff, 2006).
De kwalitatieve labels die werden overgenomen uit het NFR framework, geven we opnieuw weer in
onderstaande tabel. In deze tabel is duidelijk te zien hoe de label propagatie werkt. Er wordt
vertrokken van een goal met een gekend label. Dit label is dus opnieuw ofwel FS, PS, FD of PD.
Conflicten wijzen op de aanwezigheid van tegenstrijdige labels of ongeveer dezelfde sterkte.
Ongekend betekent dat er geen bewijs is voor een positieve of negatieve vervulling van de goal.
Vervolgens worden de labels via de contributielinks gepropageerd naar de goals waarmee ze
verbonden zijn. Uit Tabel 2 kan dan telkens afgeleid worden welk label gepropageerd zal worden
naar bepaalde goals via één contributielink. De verschillende contributielinks die hierbij gebruikt
worden zijn “Make”, “Help”, “Some+”, “Break”, “Hurt”, “Some-“ en “Unknown”. Neem bijvoorbeeld
de eerste rij uit Tabel 2. Hier wordt vertrokken van een goal G1 die het label FS bezit. Deze goal G1
levert een bijdrage tot G2 via een contributielink die bestaat uit één van de voorgaande types. Indien
G1 een bijdrage levert tot G2 via de “Make” contributielink, dan wordt de volledige waarde FS
gepropageerd naar G2. G2krijgt vervolgens dus het label FS toegekend. Indien de contributielink in
plaats van “Make” een “Hurt” contributielink zou zijn, dan zou G2 het label PD toegekend krijgen.
Tabel 2: Propagatie regels met contributielinks (J. Horkoff & Yu, 2009)
Die regels alleen zijn echter niet voldoende. Het label dat wordt toegekend aan een goal dat
meerdere inkomende contributielinks heeft is nog steeds niet bepaald door bovenstaande regels.
Daarvoor wordt er gebruik gemaakt van de term “label bag”, die werd ingevoerd in (Chung et al.,
2000). In deze “label bag” worden alle inkomende contributielinks opgeslagen en wordt het label van
de goal bepaald, gebruik makend van onderstaande tabel of door menselijke beoordeling indien deze
tabel ontoereikend is.
35
Tabel 3: Label regels bij meerdere inkomende contributielinks (J. Horkoff & Yu, 2009)
In onze casestudie (Figuur 8,Figuur 9) krijgt de softgoal “Immediacy” in de actor “Kids and Youth”
twee inkomende contributielinks. Afhankelijk van de initiële toewijzing van de waarden krijgen de
twee alternatieven ofwel een “satisfied” of een “denied”. Indien er gekozen wordt om gebruik te
maken van een cyber café/portal/chat room, dan krijgt de softgoal “Immediacy” twee inkomende
links, waarvan één een “satisfied” en de andere een “partially satisfied”. Via de derde regel uit Tabel
3 kan aan deze softgoal het label “satisfied” toegekend worden.
Menselijke beoordeling wordt soms toegepast om een label toe te kennen aan een softgoal in de
gevallen dat Tabel 3 geen duidelijkheid schenkt. Een menselijke beoordeling kan in sommige gevallen
een label promoveren van “partially satisfied” tot “satisfied” wanneer de verantwoordelijke persoon
over voldoende kennis beschikt over het domein waarbinnen het systeem zich bevindt. Een
voorbeeld hiervan kan ook teruggevonden worden in de casestudie (Figuur 9). De softgoal
“Happiness” (Counsellors) is bepaald door menselijke beoordeling. Deze softgoal ontvangt
verschillende inkomende contributies van onder andere “Avoid Burnout”, “High Quality Counselling”
en “Help as many Kids as Possible”. Via “Avoid Burnout” en “High Quality Counselling” ontvangt deze
softgoal twee keer “partially denied”, maar via “Help as many Kids as Possible” ontvangt het een
“partially satisfied”. Dit geval is niet terug te vinden in Tabel 3 dus moet de menselijke oordeling
beslissen welk label aan de softgoal “Happiness“ toegekend wordt. Zo werd er besloten om het label
“partially denied” toe te kennen omdat de raadgevers ongelukkig zouden zijn in deze situatie.
Dergelijke situaties staan natuurlijk open voor mogelijke discussies met de betrokken stakeholders
Een laatste opmerking die gemaakt moet worden voor we het model kunnen evalueren, is dat in
sommige gevallen cycli in het model aanwezig zijn waardoor sommige softgoals indirect zichzelf
36
beïnvloeden. Het is belangrijk dat de beoordelaar hiervan op de hoogte is en hiermee rekening
houdt.
Om de evaluatie van het model te kunnen starten is het noodzakelijk dat er een set van initiële
waardes wordt toegekend aan het model. Als we dit toepassen op de vorige figuur door ons af te
vragen wat het effect is van het gebruiken van een cybercafé/Portal/Chat room voor online
counseling, dan krijgen we volgende initiële labels zoals vermeld in Figuur 9 (omcirkelde labels).
Figuur 9: Model online counseling met initiële warden (J. Horkoff & Yu, 2009)
We keren nu terug naar dezelfde vraag: “Wat is het effect indien we gebruik maken van een
Cybercafé/portal/chat room voor online counseling?” Het is mogelijk om het model te evalueren
voor elke actor afzonderlijk. Voor de kinderen en de jongeren wordt via dit alternatief “Immediacy”
en “Comfortable Service” bereikt maar het is negatief voor “Anonimity”. Voor de softgoal “Get
Effective Help” krijgen we uiteindelijk slechts het label “weakly satisfied”. Vanuit het standpunt van
de raadgevers is de “Counsellors Happiness” “weakly negative”. Vanuit het standpunt van de
organisatie wordt via het model bepaald dat “Help Kids” te veel tegenstrijdige contributies heeft, dus
het label “conflicting” wordt hier toegekend. Al bij al is dit alternatief niet goed en is het dus nodig
37
om de andere alternatieven te beoordelen of om te brainstormen over eventuele andere
mogelijkheden om online counseling op een betere manier aan te bieden.
3.4.2 Kwantitatief redeneren met goal modellen
Naast kwalitatieve methodes zijn er ook een aantal werken die de goal modellen op een
kwantitatieve manier evalueren. Het Goals-Skills-Preferences framework (Hui & Liaskos, 2003) is er
één van de eerste van.
3.4.2.1 Goals-Skills-Preferences framework
In het Goals-Skills-Preferences Framework (Hui & Liaskos, 2003) wordt ook voor één van de eerste
keren aandacht besteed aan de preferenties van de stakeholders en wordt zoals vermeld een
kwantitatieve manier voorgesteld om het goal model te evalueren.
Volgens de auteurs slagen de huidige methodes er niet in om het belang van verschillende
gebruikers, die elk over verschillende skills en preferenties beschikken, te erkennen en deze te
integreren in een op maat gemaakt systeemontwerp. In deze paper wordt een framework
voorgesteld om tijdens de goal analyse niet alleen de goals in rekening te brengen, maar om ook de
skills en preferenties te integreren.
In softwareontwikkeling wordt er meestal alleen gewerkt met een “one size fits all” model dat
ontworpen is voor een grote groep gebruikers in plaats van te focussen op de wensen van één
specifieke gebruiker (Fickas, Ehlhardt, Sohlberg, & Todis, 2000). In de praktijk zijn er namelijk heel
veel verschillende gebruikers met elk een uiteenlopend niveau van expertise, met verschillende
voorkeuren, behoeften en goals. Voor deze gebruikers is er volgens de auteurs een aangepaste
requirements analyse nodig.
Hoe gaan ze hier te werk? Ten eerste wordt er voorgesteld om de verschillende parameters die nodig
zijn voor deze aangepaste requirements analyse te identificeren. Naast de gebruikelijke goals, is het
nu ook nodig om de skills en de preferenties van de gebruikers vast te leggen. Hieronder wordt elk
onderdeel meer in detail besproken.
38
1. Goals: De basis voor dit model is het goal analyse model. Goal analyses zijn zoals eerder
uitgelegd een handige modelleertechniek voor de analyse en decompositie van requirements.
Tijdens de ontwikkeling kunnen we goal analyse gebruiken om alternatieve systeemontwerpen
te ontdekken door de goals van de gebruikers te verfijnen tot wanneer ze vervuld kunnen
worden door een agent. In het goals-skills-preferences framework wordt ook gebruikt gemaakt
van deze goals, namelijk de user goals (Dardenne, 1993) (E. Yu, 1995). Een voorbeeld van zo een
goal model kan teruggevonden worden in onderstaande figuur (Figuur 10). In dit goal model wil
de gebruiker in contact blijven met verschillende mensen die hij kent. Daarvoor is het nodig om
zowel de inhoud (content) als het medium te bepalen. Bij het medium en de content worden
vervolgens verschillende alternatieven voorgesteld om de goals te vervullen. De verschillende
OR- decomposities stellen telkens een alternatieve manier voor om het uiteindelijke doel van de
gebruiker te vervullen.
Figuur 10: Voorbeeld goal model (Hui & Liaskos, 2003)
2. Skills: Verschillende personen beschikken elk over een variëteit van skills. Voorbeelden hiervan
zijn computerbehendigheid, geheugen en talenkennis. Deze skills bepalen de extra maatregelen
die moeten getroffen worden opdat de gebruikers het nieuwe systeem op een correcte manier
zouden kunnen gebruiken. In dit framework heeft men een set van cognitieve skills
overgenomen die beschreven werden door Reed (Reed, 2000).
39
3. Preferenties: Bijkomend hebben de gebruikers verschillende voorkeuren over hoe de gewenste
goals vervuld worden. Deze voorkeuren moeten ook geïdentificeerd worden.
Het uiteindelijke doel van dit model is opnieuw om systematische verschillende alternatieven te
ontdekken die voldoen aan de goals van de gebruikers. De auteurs zijn ervan overtuigd dat goals,
skills en preferenties de fundamenten zijn bij het formuleren van het analyseprobleem. Een
alternatief is gedefinieerd als een set van taken die samen een target goal vervullen. Mogelijke
alternatieven kunnen gerangschikt worden ten opzichte van een gebruikersprofiel. Dit
gebruikersprofiel bevat de skills en de preferenties van de gebruiker. Het gekozen alternatief zal
bepalen voor welke systeemconfiguratie uiteindelijk gekozen zal worden.
Nu we de verschillende delen van het framework besproken hebben kunnen we overgaan tot de
effectieve analyse van deze onderdelen.
3.4.2.1.1 Stakeholder goals
De eerste stap in het modeleren van goals van de gebruiker, is om deze goals te identificeren via goal
elicitatie technieken. Deze technieken kunnen zoals eerder vermeld gevonden worden in
bedrijfsdocumenten of kunnen ontdekt worden via onder andere focusgroepen. Deze
geïdentificeerde goals worden vervolgens geanalyseerd om tot een initiële set van goals komen.
Deze goals worden verder verfijnd, gebruik makend van goal verfijning technieken. (Yu, 1995;
Mylopoulos, 1992).
Een goal model kan worden opgesteld met bovenaan de target goal die verder opgesplitst is in
verschillende subgoals. Dankzij de OR- decompositie worden alternatieven gedefinieerd. Het
identificeren van deze alternatieven is noodzakelijk om later via goal analyse de verschillende
ontwerpalternatieven te kunnen evalueren. In de volgende figuren worden 4 mogelijke alternatieven
voorgesteld (Figuur 11).
40
Bij alternatief A bijvoorbeeld, besluit de gebruiker om de mail zelf te typen en de inhoud zelf te
bepalen. Dit is totaal verschillend van alternatief D. In dit alternatief vraagt de gebruiker aan iemand
anders om de inhoud te bepalen en dicteert de gebruiker deze inhoud aan een andere persoon.
3.4.2.1.2 Vereiste skills
Eenmaal de goals geïdentificeerd zijn, kunnen we de tweede component van het framework
identificeren, namelijk de vereiste skills. De auteurs hebben voor deze skills te identificeren beroep
gedaan op onderzoek uit verschillende domeinen in de psychologie (David R. Shaffer, 1999)(Reed,
2000).
Uit het goal model van het voorbeeld kijken we vooral naar de taken aan het uiteinde van het model
en we associëren deze taken met de skills die nodig zijn om deze taken correct uit te voeren. Zo is er
voor het typen bijvoorbeeld nood aan motorieke skills. Naast deze vereiste skills zijn er ook nog skills
Figuur 11: Vier mogelijke alternatieven uit goal model (Hui & Liaskos, 2003)
41
die bepaalde taken ondersteunen. Een voorbeeld van een dergelijke skill in functie van ons goal
model, is creativiteit. Deze skills vormen een belangrijke parameter bij de keuze tussen verschillende
alternatieven.
Voor een bepaald alternatief, wordt elke skill gelabeld als “ondersteunend” (waarde van 1),
“neutraal” (0) of “vereist” (−1). Voor elk alternatief wordt dan een score bepaald door deze waardes
op te tellen. Dit is natuurlijk nog vrij simplistisch aangezien er geen rekening gehouden wordt met de
mate waarin bepaalde skills vereist zijn. Dit kan aangepast worden door te werken met een interval
van [-5,5] en de verschillende waardes te gebruiken voor de mate waarin een bepaalde skill vereist is
of de mate waarin een bepaalde skill een taak ondersteunt.
Elke gebruiker wordt ook beoordeeld rekening houdend met zijn of haar skills. Eenmaal bepaald is
welke skills vereist zijn voor een bepaalde taak of welke skills een bepaalde taak ondersteunen, is het
echter noodzakelijk om te bepalen in welke mate de gebruiker over deze skills beschikt. Hiervoor
worden de skills die afgeleid werden uit de taken voor elke gebruiker gelabeld als “sterk” (waarde
van 1), “neutraal” (0), of “zwak” (−1). Ook hier kunnen deze waardes uitgebreid worden tot [-5,5].
3.4.2.1.3 Persoonlijke preferenties
De derde en laatste component van dit framework betreft de voorkeuren van de gebruikers. Deze
voorkeuren voor bepaalde goals worden in het goal analyse framework verwerkt als softgoals. We
kennen reeds de eigenschappen van softgoals en in dit model wordt er opnieuw met “+” en “–”
gewerkt om respectievelijk een positieve of negatieve bijdrage voor te stellen. Aan deze “+” en “–”
worden vervolgens verschillende waarden toegekend. Een waarde van “1” wordt toegekend voor
elke positieve bijdrage tot een preferentie, een waarde van “0” als er geen eenduidige voorkeur is en
een waarde van “-1” voor elke negatieve bijdrage tot een preferentie. Op onderstaande figuur
(Figuur 12) worden de bijdrages van de goals op softgoals duidelijk voorgesteld.
42
Figuur 12: Contributies ten opzichte van de softgoals (Hui & Liaskos, 2003)
Als we opnieuw kijken naar de vier alternatieven uit Figuur 11, dan zal elk alternatief anders
bijdragen tot de drie preferenties uit Figuur 12. Bijvoorbeeld in alternatief A wordt de inhoud zelf
opgesteld en wordt de mail zelf getypt. Zoals te zien in Figuur 12 draagt “self-performed” tweemaal
positief bij tot “independence”. Verder levert alternatief A geen bijdrage meer tot preferenties. Een
overzicht van deze bijdragen van alternatief A en van de overige drie alternatieven bevindt zich in
Tabel 4.
Tabel 4: Bijdragen van alternatieven tot preferenties (Hui & Liaskos, 2003)
Natuurlijk is alleen deze score niet voldoende. We kennen nog een waarde toe aan de preferenties
om aan te geven of deze al dan niet belangrijk zijn voor de stakeholders. Opnieuw wordt er een
waarde “1” toegekend voor die preferenties die de voorkeur krijgen, een waarde “0” voor de
43
preferenties waarbij er geen echte voorkeuren zijn en een waarde van “-1” indien de stakeholders
deze preferentie liever niet voldaan zien. Dus een bepaalde stakeholder (u) kan zo aan elke
preferentie een bepaalde waarde toekennen zoals in de onderstaande tabel.
Tabel 5: Preferenties stakeholders (Hui & Liaskos, 2003)
3.4.2.1.4 De evaluatie van de alternatieven
Tot hiertoe hebben we reeds de alternatieven gedefinieerd voor een bepaalde set van initiële goals,
we hebben de nodige skills voor elk alternatief geïdentificeerd en ten slotte hebben we het
gebruiksprofiel uitgebreid met de preferenties van de stakeholders.
Voor de eigenlijke evaluatie wordt er gebruik gemaakt van een algoritme. In dit algoritme is het de
bedoeling om elk alternatief te vergelijken met een gebruikersprofiel. Dit gebruikersprofiel bestaat
zoals vermeld uit de skills en de preferenties van de gebruiker. Hoe worden deze alternatieven
uiteindelijk vergeleken? Hiervoor worden er twee vectoren gebruikt. Vector v1 stelt het alternatief
voor en vector v2 het gebruikersprofiel. De bedoeling is vervolgens om de afstand tussen deze twee
vectoren te minimaliseren. Deze simpele meting maakt het mogelijk om een passende match te
vinden tussen een alternatief en het gebruikersprofiel. Het komt er dus op neer dat men probeert
om via deze methode een alternatief te vinden waarbij de keuze afhangt van twee zaken: de
preferenties en de skills van de gebruiker. Er wordt getracht om een alternatief te vinden dat zoveel
mogelijk voldoet aan de voorkeuren en tezelfdertijd aan de skills van de gebruikers. Dit is logisch
omdat een expert liever zelfstandig een taak uitvoert dan om hulp te moeten vragen. In dezelfde zin
is het logischerwijs beter om een gebruiker met een sterke voorkeur voor bepaalde softgoals te
koppelen aan een alternatief dat veel positieve bijdragen levert tot deze voorkeuren. Zo is het dus
mogelijk om een rangschikking op te stellen voor de verschillende alternatieven.
Hierboven werd een van de eerste kwantitatieve methodes voorgesteld. Via een kwantitatieve
methode is het de bedoeling om een nauwkeurigere evaluatie te bieden en dan vooral met
betrekking tot de niet-functionele goals. Kwantitatieve methodes zijn dus vooral een meerwaarde
voor goal modellen waarin gewerkt wordt met softgoals omdat alleen bij deze goals sprake is van
44
gedeeltelijke vervulling van een goal. Laten we dit verduidelijken met een voorbeeld. Stel nu
bijvoorbeeld G2 G1. Van de gedeeltelijke vervulling van G2, PS(G2), kunnen we de gedeeltelijke
vervulling van G1, PS(G1), afleiden dankzij de contributielink. Maar men zou kunnen opmerken dat de
mate waarin G1 voldaan is, minder is dan de mate waarin G2 voldaan is. We kunnen dus opmerken
dat de verschillende relaties die de partiële bijdrage beschrijven “+s, -s; +d, -d” onderling kunnen
verschillen en verschillende bijdragen kunnen betekenen. Om deze verschillen in rekening te kunnen
brengen in onze analyse, wordt er gebruik gemaakt van numerieke waarden om verschillende
gewichten toe te kennen aan de “+s, -s, +d, -d” relaties.
Veel onderzoek werd ook gedaan door Letier en van Lamsweerde. We beschrijven kort enkele van
hun inzichten uit het volgende werk (Letier & van Lamsweerde, 2004).
Volgens de auteurs gebeurt de overgang van een kwalitatieve naar een kwantitatieve methode
simpelweg door de kwalitatieve contributielinks te vervangen door numerieke waarden. De mate van
de verwezenlijking van een goal, wordt dan berekend via het gewogen gemiddelde van de mate van
tevredenheid van de subgoals.
Er zijn echter nog steeds een aantal belangrijke problemen bij deze zogenaamde kwantificering van
contributielinks. Ten eerste moet de vraag worden gesteld wat deze waarden precies betekenen en
in de tweede plaats moeten deze waarden ook nog bepaald worden, wat geen eenvoudige taak is.
De betekenis van de numerieke waarden die aan de contributielinks gekoppeld worden is vaak
subjectief. In de literatuur worden echter wel meerdere kwantitatieve technieken voorgesteld om de
impact van verschillende alternatieven op softgoals te bepalen. Een voorbeeld hiervan is de QFD
(quality function deployment) methode (Akao, 1990) en de “utility weights” methode (Robinson,
1990).
Waar komen deze numerieke waarden vandaan? Meestal wordt ervan uitgegaan dat de stakeholders
verantwoordelijk zijn voor het bepalen van deze numerieke waarden. Er zijn twee gebruikte
manieren om deze waarden te bepalen. Een eerste manier is door te kijken naar de absolute waarde
van een bepaalde contributie. Hierbij wordt de contributie gemeten zonder rekening te houden met
de andere alternatieven. Een tweede manier is door te kijken naar de relatieve bijdrage zoals in de
AHP techniek (Saaty, 1990, 2008). Hierbij worden de verschillende alternatieven onderling met elkaar
vergeleken waardoor het mogelijk wordt om gewichten toe te kennen aan verschillende
45
alternatieven. Het gebruik van relatieve waarden krijgt de voorkeur omdat deze waarden de
mathematische eigenschappen van de gewichten reflecteren. Nog een voordeel van deze methode is
dat een consistentiecontrole mogelijk is. In beide gevallen is er wel geen criterium om de schattingen
te valideren. Hiermee wordt bedoeld dat we niet kunnen controleren of de gekozen waarden echt
wel correct zijn.
3.4.3 Integreren van preferenties tijdens het evalueren van goal modellen
Veel recente werken proberen de preferenties van verschillende stakeholders te integreren. Een van
de eerste papers die dit probeerde te integreren was het Goal Skill Preference Framework (Hui &
Liaskos, 2003). In deze paper probeerden de auteurs zoals daarnet besproken de voorkeuren van de
gebruikers in rekening te nemen bij de keuze tussen alternatieven. Een paar recentere papers
bouwen hierop verder. We bespreken beknopt de twee belangrijkste werken (Liaskos et al., 2010,
2011).
In deze papers vinden de auteurs dat veel goal georiënteerde technieken alle goals te veel als
verplichte goals beschouwen. Volgens hen is het nodig dat sommige requirements als “nice-to-have”
kunnen geclassificeerd worden. Ze stellen vervolgens een framework voor waarin ze ten eerste de
preferenties specificeren, ten tweede proberen ze om prioriteiten tussen deze preferenties op te
stellen en ten slotte zoeken ze naar systeemvoorstellen die voldoen aan de verplichte requirements,
maar die zoveel mogelijk bijdragen tot de geprefereerde requirements.
Opnieuw wordt er vertrokken van een goal model dat op identieke manier opgebouwd is en uit dit
goal model worden eveneens de mogelijke alternatieven geïdentificeerd. Anders dan bij de vorige
technieken wordt nu aan elke goal een taak gekoppeld en wordt een alternatief beschreven als een
plan dat bestaat uit een opeenvolging van taken. Met dit plan wordt bij elke OR- relatie duidelijk voor
welke weg doorheen het goal model gekozen werd. Bijvoorbeeld het alternatief dat aangeduid is op
volgende figuur (Figuur 13) wordt beschreven als het plan (t1,t2,t5).
46
Figuur 13: Mogelijk alternatief uit goal model
Vervolgens wordt er ook een set van softgoals bepaald en wordt er aan deze softgoals willekeurig
een prioriteit toegekend. In deze paper zijn er drie softgoals namelijk: “Happy customer”,
“Reliability” en “Green Image”. Het toekennen van prioriteiten gebeurt in deze paper willekeurig
(Tabel 6), maar verschillende methodes worden hier voorgesteld zoals AHP (Analytical Hierarchy
Process) (Saaty, 1990, 2008) en MAUT (Multi Attribute Utility Theory) (Hansson, 2005). De
toegekende prioriteiten (Tabel 6) hebben als som één en kunnen als gewichten beschouwd worden.
Softgoal Prioriteit
Happy customer 0,6
Reliability 0,3
Green Image 0,1
Tabel 6: Preferenties softgoals
Indien een bepaald alternatief bijdraagt tot één van deze softgoals, dan worden deze prioriteiten
simpelweg opgeteld. Stel nu bijvoorbeeld dat ons plan (t1,t2,t5) een bijdrage levert tot “Happy
customer” en “Green image”, dan krijgt dit alternatief een score van “0,7”. Indien een ander plan een
bijdrage levert tot Happy customer” en “Reliability”, dan zal dit alternatief een score van “0,9”
krijgen en dus beter zijn dan het eerst voorgestelde alternatief.
Om deze evaluatie automatisch te laten verlopen, stellen de auteurs ten slotte voor om gebruik te
maken van PDDL (Planning Domain Definition Language) (Gerevini, 2005). PDDL is een veelgebruikte
47
taal om planningsproblemen te specificeren. Via PDDL wordt het plan gevonden waarvoor de
hoogste score verkregen kan worden. Dit is nuttig in de realiteit omdat de meeste goal modellen
bestaan uit een vijftigtal goals en de evaluatie niet altijd manueel kan gebeuren.
3.4.4 Hoe kunnen prioriteiten opgesteld worden voor deze preferenties
Bij veel beslissingen zijn er meerdere criteria die moeten afgewogen worden ten opzichte van elkaar.
Er is dus nood aan een methode die op een correcte manier prioriteiten kan toekennen aan deze
verschillende criteria. Een veel gebruikte methode is AHP (analytical hierarchy process) (Saaty, 1990).
AHP is een theorie die via paarsgewijze vergelijking van de criteria en via het oordeel van experts
prioriteiten kan toekennen aan deze criteria.
We zijn dus op zoek naar een manier waarmee we de keuze tussen alternatieven kunnen
vereenvoudigen. In het algemeen zijn er twee mogelijke manieren om een keuze te maken. Een
eerste mogelijkheid is om een bepaald alternatief in detail te bestuderen en om uit deze studies
vervolgens de conclusie te trekken of de eigenschappen van het alternatief voldoen aan de wensen
van de stakeholders. Een tweede mogelijkheid is om meerdere alternatieven via een aantal criteria
onderling te vergelijken. In onze situatie bouwen we verder op de tweede mogelijkheid en maken we
gebruik van AHP om prioriteiten op te stellen tussen deze criteria onderling (Saaty, 2008).
We kiezen voor de AHP methode omdat AHP een superieure methode is voor een goal georiënteerde
evaluatie met meerdere criteria. Met AHP is het namelijk mogelijk om complexe problemen te
analyseren. Dit is mogelijk doordat AHP het probleem structureert in meerdere subproblemen
waardoor complexe problemen opgesplitst worden in meerdere eenvoudigere subproblemen. Met
AHP is het ook mogelijk om de input van meerdere personen samen te brengen tot één gezamenlijke
input. Er moet wel opgemerkt worden dat de belangrijkste stap van AHP, namelijk de paarsgewijze
vergelijking, steunt op de subjectieve mening van personen of experts. Samenvattend kan er gezegd
worden dat AHP dikwijls toegepast wordt bij het maken van beslissingen omdat AHP subjectieve en
objectieve meningen kan combineren. Ook doordat de individuele en groepsvoorkeuren
geïntegreerd kunnen worden, is AHP een veel gebruikte methode bij het maken van beslissingen
(BPMSG, 2011).
AHP is dus een methode voor het maken van complexe beslissingen steunend op de mening van
meerdere stakeholders. AHP slaagt erin om de verschillende stakeholders tot een consensus te
brengen in verband met hun preferenties en prioriteiten (Saaty, 2008).
48
AHP bestaat uit drie stappen: de structurele decompositie, de vergelijkende beoordeling en het
synthetiseren. Elke stap wordt telkens opnieuw opgesplitst in een aantal stappen.
3.4.4.1 Structurele decompositie:
Probleemidentificatie: Het probleem kan bestaan uit een selectie - , een evaluatie - of een
allocatieprobleem. De probleemidentificatie betekent ook dat de juiste karakteristieken van het
probleem, die kunnen gebruikt worden tijdens de besluitvorming, moeten worden geïdentificeerd.
Deze karakteristieken kunnen criteria, subcriteria, attributen of alternatieven zijn. Tijdens deze stap
worden de verschillende kwaliteitsattributen, subcriteria, criteria voor elk alternatief geïdentificeerd.
Ook de uiteindelijke goal wordt geïdentificeerd. Door hieraan gewichten te hangen kunnen de
prioriteiten en de voorkeuren bepaald worden.
Hiërarchieconstructie: In deze stap wordt het probleem opgesplitst in een hiërarchische structuur
bestaande uit verschillende niveaus. Deze structuur wordt bekomen door een soort beslissingsboom
diagram op te stellen. Bovenaan deze hiërarchie bevindt zich het goal niveau, gevolgd door het
criteria niveau dat op zijn beurt gevolgd wordt door subcriteria.
3.4.4.2 Paarsgewijze vergelijking:
De paarsgewijze vergelijking moet zorgen voor de prioriteiten tussen de verschillende criteria.
Tijdens deze vergelijking wordt gebruik gemaakt van een (1-9) rangschikkingsysteem om de relatieve
belangrijkheid van een criterium ten opzichte van een ander criterium aan te geven. Deze schaal kan
teruggevonden worden in onderstaande tabel (Tabel 7).
49
Tabel 7: Schaal (1-9) met absolute getallen (Saaty, 2008)
Eenmaal deze mate van belangrijkheid tussen de criteria bepaald is, kan een paarsgewijze matrix
opgesteld worden. Deze paarsgewijze matrix is vervolgens het vertrekpunt om via enkele
matrixberekeningen aan de prioriteiten te geraken.
Om de afweging tussen de criteria te bepalen wordt vaak beroep gedaan op experts. Belangrijk om
op te merken is dat deze stap vrij subjectief is en dat dit gezien wordt als het zwakste punt van de
AHP methode. Wel worden enkele methodes zoals QFD (Akao, 1990) en ExpertChoice (Labib, 2009)
voorgesteld om deze stap zo correct mogelijk uit te voeren (Ssebuggwawo, Hoppenbrouwers, 2009).
3.4.4.3 Synthetisering:
De laatste stap bestaat erin om de meningen van meerdere individuen samen te voegen tot één
gezamenlijk consensus. De wederzijdse eigenschap speelt een belangrijke rol wanneer we de
beoordeling van meerdere individuen willen samenvoegen tot één enkele groepsbeoordeling.
Beoordelingen moeten op zo een manier samengevoegd worden, dat de gezamenlijke beoordeling
de synthese van de individuele beoordelingen weerspiegelt. Er werd aangetoond dat het
geometrisch gemiddelde, en dus niet het veel gebruikte rekenkundig gemiddelde, de enige manier is
50
om dit te doen. Indien de individuen experts zijn, willen ze misschien opteren om niet hun
beoordelingen maar hun finale prioriteiten te combineren. In dit geval is het mogelijk om het
geometrisch gemiddelde van de finale uitkomsten te combineren (Saaty, 2008).
Na het bespreken van de relevante literatuur zijn we bij het tweede deel van de masterproef beland.
In dit tweede deel zal een eigen manier voorgesteld worden voor de evaluatie van verschillende
alternatieven. Dit voorgestelde model is een combinatie van nieuwe elementen en van elementen
die reeds gebruikt worden in de overlopen literatuur.
51
DEEL 2: Uitwerking masterproef
4 Inleidend hoofdstuk
4.1 Uitwerking probleemdefinitie
In deze masterproef wordt een model voorgesteld om de keuze tussen verschillende processen te
vereenvoudigen. Dit gebeurt door gebruik te maken van goals waardoor deze processen
geoperationaliseerd kunnen worden. Zoals eerder aangehaald, is een vaak voorkomende trade-off de
keuze tussen het al dan niet automatiseren van bepaalde processen om op die manier de totale
prestatie van het proces te verbeteren rekening houdend met meerdere aspecten zoals kwaliteit,
kost, snelheid,… Maar niet altijd is het een keuze om te automatiseren. In sommige gevallen worden
ook totaal nieuwe systeemontwerpen voorgesteld om zo op een alternatieve manier hetzelfde
resultaat te verkrijgen. Zoals net vermeld, wordt er in deze masterproef gebruik gemaakt van goals
en de bijhorende goal modellen om de alternatieven te evalueren. In de overlopen literatuur bestaan
er reeds tientallen modellen die dit probleem behandelen en elk op een andere manier tot een
oplossing proberen te komen. Zoals vermeld zijn er kwalitatieve en kwantitatieve modellen, maar er
bestaan ook hybride modellen waarin de combinatie van beide toegepast wordt. Er zijn modellen
waarbij een algoritme voorgesteld wordt waarmee je op een snellere manier tot de oplossing komt.
Veel modellen behandelen slechts enkele aspecten van goal analyse. In deze masterproef proberen
we echter een complete methode voor te stellen voor de keuze tussen alternatieve
systeemontwerpen. Hiervoor zullen we deels gebruik maken van de beschikbare oplossingen die in
de literatuur aanwezig zijn. Voor deze oplossingen zullen we aangeven in welke gevallen welke
oplossingen het beste resultaat geven. Voor sommige aspecten van de oplossingen doen we eigen
voorstellen om tot een beter resultaat te komen.
Zoals aangehaald moeten dus keuzes gemaakt worden tussen allerlei alternatieven. Het is belangrijk
om hier op te merken dat we te maken hebben met besluitvorming waarbij we rekening houden met
verschillende aspecten. Voorbeelden van criteria waartussen een afweging gemaakt zal moeten
worden, zijn kwaliteit, tijd en kost.
Bij de keuze tussen de alternatieven gaan we dus de alternatieven analyseren aan de hand van hun
bijdrage tot de verschillende softgoals waarmee rekening gehouden moet worden of waartoe de
alternatieven een bijdrage leveren. Als inleidend voorbeeld bespreken we de methode van (Hui &
Liaskos, 2003). In deze methode wordt een waarde “1” toegekend elke keer dat een alternatief een
52
bijdrage levert tot een preferentie (softgoal in ons geval). Bij deze methode wordt uiteindelijk geteld
welk alternatief de meeste positieve bijdrage levert tot de verschillende preferenties.
p1 p2 p3
A 0 0 2
B 2 1 3
C 0 0 2
D 1 1 -2
Tabel 8: Bijdragen alternatieven tot preferenties (Hui & Liaskos, 2003)
In bovenstaande tabel (Tabel 8) bevinden zich de resultaten uit deze paper. Als we deze tabel
bekijken kunnen we dus, zoals reeds opgemerkt in het literatuuroverzicht, opmerken dat alternatief
A twee keer een bijdrage levert tot de derde preferentie en geen bijdrage levert tot de eerste en de
tweede preferenties. Als we alle alternatieven op deze manier analyseren, lijkt alternatief B duidelijk
op alle gebieden de andere alternatieven te overtreffen. Met deze eenvoudige methode is de keuze
tussen de vier alternatieven dus vrij vlug gemaakt. Merk wel op dat we in deze simplistische evaluatie
de vereiste skills voor een bepaald alternatief buiten beschouwing laten.
Jammer genoeg is niet in alle gevallen de keuze zo eenvoudig te maken. Stel bijvoorbeeld
onderstaande tabel (Tabel 9).
p1 p2 p3
A 2 0 2
B 2 2 0
C 0 2 2
D 1 1 1
Tabel 9: Illustratief voorbeeld van bijdragen alternatieven tot preferenties
Indien de alternatieven op de manier zoals vermeld in Tabel 9 zouden bijdragen tot de verschillende
preferenties, dan is het veel minder vanzelfsprekend om onmiddellijk een keuze te maken tussen de
alternatieven. Men zou kunnen stellen dat de eerste drie alternatieven duidelijk beter zijn dan
alternatief D, omdat deze maar drie positieve bijdrages levert en de drie andere leveren er in totaal
vier. Maar misschien is het meer gewenst dat het alternatief op een evenwichtige manier een
53
bijdrage levert tot de preferenties. Indien we ervan uitgaan dat deze vier positieve bijdrages dan toch
beter zijn dan de drie positieve bijdrages, en we ons vervolgens focussen op alternatief A, B en C dan
is het nog niet gemakkelijk om hiertussen een keuze te maken. De meest voor de hand liggende
manier is om de preferenties te rangschikken naar onderlinge belangrijkheid. Stel dat we
bijvoorbeeld volgende rangschikking maken tussen de preferenties: p1 > p3 > p2. Bij deze
rangschikking wordt preferentie één verkozen boven preferentie drie en preferentie drie wordt op
haar beurt verkozen boven preferentie twee. In dit geval zal de keuze uitgaan naar alternatief A
omdat dit alternatief de meeste bijdrages levert tot de preferenties die bovenaan de rangschikking
staan. We moeten ons echter afvragen hoe we deze rangschikking zo objectief mogelijk kunnen
opstellen en of dergelijke rangschikking de beste manier is om de onderlinge belangrijkheid van de
verschillende preferenties weer te geven.
Een andere opmerking die we kunnen maken bij deze methode om de keuze tussen alternatieven te
vereenvoudigen, is dat ze bij (Moody James, 2004) geen onderscheid maken tussen de verschillende
positieve bijdrages. Ze kennen weliswaar de waardes “1”, “0”, “-1” toe, maar wat betekent die
positieve of negatie waarde van “1” en “-1” nu precies? Het is logisch dat de bijdrage die een
alternatief levert ten opzichte van een softgoal niet altijd identiek is aan de bijdrage die een ander
alternatief zou leveren aan deze softgoal. Een mogelijkheid die we zouden kunnen toepassen, is om
in plaats van te werken met “1”, een schaal in te voeren waarbij de bijdrages kunnen liggen tussen
[1,5]. In dit geval is “5” de grootste positieve bijdrage en “1” de kleinste positieve bijdrage. Voor de
negatieve bijdrages kan dezelfde methode toegepast worden.
Het is reeds duidelijk dat de eenvoudige manier die hierboven werd voorgesteld ontoereikend is voor
ons probleem. Een eerste probleem is dat er geen prioriteiten zijn tussen de verschillende
preferenties of softgoals. Een tweede probleem dat in deze methode niet aan bod is gekomen, is dat
de meeste softgoals deel uitmaken van een softgoal model. Hiermee bedoelen we dat softgoals op
zich ook kunnen afhangen van andere softgoals of dat ze ook een positieve of negatieve bijdrage
kunnen leveren ten opzichte van andere softgoals. Een derde probleem is het gevolg van het vorige
probleem. Doordat er niet gewerkt wordt met een softgoal model, is er ook geen methode om
verwezenlijking van de ene softgoal te propageren naar een andere softgoal waartoe de eerste
softgoal een bijdrage levert. Een vierde opmerking die we hier kunnen geven is dat er geen
onderscheid gemaakt wordt tussen de verschillende stakeholders. Het volledige proces wordt
bekeken vanuit slechts één standpunt terwijl een proces in veel gevallen invloed heeft op meerdere
stakeholders en dus ook vanuit deze verschillende standpunten zou moeten geëvalueerd worden.
Het is dus duidelijk dat er nood is aan een methode om op een efficiëntie manier de juiste keuze te
54
maken tussen verschillende processen waarbij rekening gehouden wordt met de belangen van alle
stakeholders.
Zoals reeds vermeld in het literatuuroverzicht, zijn er al tientallen papers die de evaluatie van
ontwerpbeslissingen en dus de keuze tussen verschillende alternatieve processen behandelen.
Sommige van deze papers bieden goede oplossingen voor de problemen die hierboven werden
aangehaald. In deze masterproef zullen we de reeds aangeboden oplossingen gebruiken, maar
worden er toch verschillende zaken aangepast en verbeterd. Voor bepaalde delen van de methode
die nog niet in detail behandeld zijn, zullen we proberen om een eerste aanzet te geven bij de
uitwerking ervan. We verduidelijken onze methode door verder te werken met het voorbeeld van (J.
Horkoff & Yu, 2009). In dit voorbeeld wordt er gezocht welke alternatieve manier van online
counseling het best voldoet aan de opgestelde softgoals. Onze methode is natuurlijk toepasbaar op
bijna alle bedrijven en kan gemakkelijk toegepast worden op één van de voorgestelde goal modellen
(NFR Framework, KAOS en I* Framework). Met behulp van onze methode is het mogelijk om voor elk
proces in een bepaald bedrijf te bepalen welke manier het best overeenkomt met de wensen van alle
stakeholders.
4.2 Werkwijze opstellen methode
Hoe wordt onze methode nu precies opgesteld? Zoals net vermeld wordt er vertrokken van
bestaande modellen en methodes waarbij getracht wordt om oplossingen te bieden voor de
aspecten waarin bestaande modellen tekort schieten. Maar omdat onze methode als doel heeft om
beslissingen te vereenvoudigen en een keuze voor te stellen, zijn we op zoek gegaan naar manieren
waarop beslissingen genomen worden. Na het bestuderen van enkele modellen en theorieën die
handelen over besluitvorming (Kiker et al., 2005; Schreyer & Bögl, 2009; Schreyer, Bögl, Benning,
Ryd, & Forum, 2010), was het mogelijk om een stappenplan vast te stellen dat gevolgd moet worden
bij het maken van beslissingen. Dit beslissingsproces (stappenplan) bestaat uit vijf stappen volgens
(Kiker et al., 2005) en wordt weergegeven in onderstaande figuur (Figuur 14).
Figuur 14: Synthese van ingrediënten die nodig zijn bij besluitvorming (Kiker et al., 2005)
55
Volgens hen moet in de eerste stap het probleem gedefinieerd worden en moeten de verschillende
alternatieve oplossingen bepaald worden. Vervolgens moeten de criteria waarmee men deze
alternatieven gaat vergelijken, geïdentificeerd worden. In dezelfde stap is het ook belangrijk om het
belang van deze criteria te bepalen. In de derde stap kunnen reeds een aantal alternatieven die
duidelijk niet voldoen aan de vereisten geëlimineerd worden. In de laatste stappen ten slotte,
moeten de prestaties van de alternatieven ten opzichte van de criteria bepaald worden om dan een
rangschikking te kunnen opstellen tussen de alternatieven. Wat ook werd opgemerkt in (Kiker et al.,
2005) is dat het mogelijk is om voor de verschillende stappen beroep te doen op verschillende
personen. Voor sommige stappen zal vooral beroep gedaan worden op wetenschappers en
ingenieurs maar bij andere stappen zal er eerder input van de stakeholders gewenst zijn.
Aangezien we binnen GORE ook beslissingen wensen te maken met behulp van meerdere criteria,
wordt er geprobeerd om dit beslissingsproces toe te passen binnen GORE. Hiervoor is het nodig om
voor elke stap binnen dit beslissingsproces, een gelijkaardige stap te vinden binnen onze methode.
De eerste stap waarbij het probleem gedefinieerd wordt en waarbij de verschillende alternatieven
geïdentificeerd worden, kan gekoppeld worden aan het opstellen van het goal model. Het eerste
deel van tweede stap waarbij de criteria geïdentificeerd worden, kan gekoppeld worden aan het
softgoal model. Het tweede deel van de tweede stap, waarbij de relatieve belangrijkheid van de
verschillende criteria bepaald wordt, kan gekoppeld worden aan het deel waarin we de prioriteiten
opstellen. In de volgende stappen worden de bijdrages van de verschillende alternatieven tot de
criteria bepaald en wordt een rangschikking opgesteld tussen de alternatieven. Deze stappen worden
in onze methode verder uitgewerkt tijdens de evaluatie van het model.
De methode om alternatieve ontwerpbeslissingen te evalueren wordt dus opgesplitst in volgende
verschillende stappen:
Opstellen van goal model
Opstellen van softgoal model
Opstellen van prioriteiten
Evaluatie van model
56
5 Opstellen goal model
In de eerste fase van onze methode is het noodzakelijk om een model op te stellen dat alle
alternatieve manieren omvat om het uiteindelijke doel te bereiken. Zoals eerder vermeld is goal
elicitatie één van de eerste fases van GORE. In de volgende fase worden de goals verfijnd door AND-
en OR- decomposities tot wanneer men aan een requirement komt dat kan uitgevoerd worden door
één of meerdere agents. Zoals ook aangehaald zijn het vooral de OR- decomposities waaraan we
onze aandacht besteden omdat deze de alternatieve manieren aantonen waarop de goals bereikt
kunnen worden. In onze methode worden de meeste OR- relaties gezien als exclusieve OR- relaties.
Dit betekent dat er in een bepaalde situatie moet gekozen worden tussen de alternatieven en dat het
niet mogelijk is om een combinatie ervan te gebruiken. Zoals gezien in het voorbeeld van (Hui &
Liaskos, 2003) stijgt het aantal alternatieven exponentieel met het aantal OR- decomposities. Dit
heeft tot gevolg dat de goal modellen snel te complex worden om op een manuele manier te
evalueren.
Als we terugkeren naar ons voorbeeld over online counseling is het doel van de organisatie
onmiddellijk duidelijk. De organisatie doet momenteel alleen telefonisch aan counseling en wil zich
binnenkort ook focussen op online counseling. Hiervoor worden onmiddellijk twee alternatieve
oplossingen naar voor geschoven: een SMS- dienst en een Cyber Café/Portal/Chat Room. In Figuur 15
bevindt zich dit eenvoudige goal model. Indien later blijkt dat online counseling op nog een andere
manier kan gebeuren, dan kan dit alternatief gemakkelijk nog aan dit model toegevoegd worden.
Merk op dat niet alle goal modellen zo eenvoudig zijn. Een voorbeeld van een groter goal model kan
teruggevonden worden in (Liaskos et al., 2011).
Figuur 15: Goal model "Online Counselling"
57
In het goal model bevinden zich meestal alleen hard goals. Hiermee bedoelen we dat de goals die
zich in dit model bevinden ofwel voldaan zijn of niet voldaan zijn. De links tussen deze hardgoals zijn
dan ook “binaire” links. Dit wil zeggen dat deze links ofwel volledige waardes ofwel geen enkele
waarde propageren naar de bovenstaande goals. Indien we deze links zouden vergelijken met
contributielinks die gebruikt worden in het softgoal model (Opstellen softgoal model), dan kunnen
we deze links vergelijken met de Make of Break links die respectievelijk als symbool “++” / “--”
krijgen.
6 Opstellen softgoal model
6.1 Kwaliteit, kost en tijd
Eenmaal de alternatieve manieren waarop een doel bereikt kan worden duidelijk zijn, moet een
keuze gemaakt worden tussen deze alternatieven. Dit gebeurt meestal door de alternatieven
onderling te vergelijken met behulp van een aantal criteria. Als voorbeeld stellen we dat de criteria
kost, kwaliteit en tijd voor veel bedrijven van belang zijn. Deze criteria zullen natuurlijk verschillend
zijn voor alle bedrijven en zullen afhangen van de strategie die een bepaald bedrijf volgt. Indien
bijvoorbeeld een afweging gemaakt wordt om een bepaald proces te automatiseren zullen ze zich
afvragen op welke manier de kwaliteit verbeterd wordt, op welke manier ze de kost kunnen verlagen
en op welke manier ze het proces sneller kunnen laten verlopen. Het is vaak ook zo dat een hogere
kwaliteit of een sneller proces gepaard gaat met een stijging van de kost en omgekeerd, dus een
afweging zal moeten gemaakt worden.
Figuur 16: Besluitvorming tussen kwaliteit, kost en tijd
58
Als we dit zouden toepassen op ons voorbeeld van online counseling zouden we dus onderstaand
model krijgen dat moet geëvalueerd worden (Figuur 17).
Figuur 17: Kost, kwaliteit en tijd gekoppeld aan "Online Counselling"
Een probleem dat onmiddellijk opvalt, is dat deze criteria te ruim zijn en dat het dus noodzakelijk is
om deze criteria verder te specificeren. Neem nu bijvoorbeeld kwaliteit. Kwaliteit is een vrij
uitgebreid concept en kan veel verschillende betekenissen hebben naargelang de situatie of
naargelang de persoon. Een mogelijkheid om kwaliteit verder te specificeren is de
kwaliteitsstandaard ISO/IEC 9126 (ISO/IEC 9126, 2001). Er bestaan nog andere classificatieschema’s
zoals FURPS+ (Chung et al., 2000). In ISO/IEC 9126 wordt een onderscheid maakt tussen vier types
van kwaliteit:
kwaliteitsmodel
externe kwaliteit
interne kwaliteit
kwaliteit in gebruik
59
Het kwaliteitsmodel is het eerste deel van de standaard en classificeert kwaliteit in een
gestructureerde set van karakteristieken en subkarakteristieken.
Tabel 10: Kwaliteit: ISO/9126
Deze kwaliteitskarakteristieken zijn voor sommige processen belangrijk voor onze verdere analyse.
Indien het gaat over een productieproces of over een softwaresysteem, dan kunnen deze
karakteristieken en subkarakteristieken gemakkelijk gebruikt worden om alternatieven te evalueren.
De reden hiervoor wordt verder duidelijk.
Zoals vermeld in de overlopen literatuur, wordt er bijna altijd gewerkt met softgoals om
verschillende alternatieve systeemvoorstellen te evalueren. Dit komt omdat het succes van nieuwe
systemen en processen vaak afhangt van de mate waarin ze voldoen aan de softgoals. Softgoals
worden ook wel kwaliteitsattributen genoemd en vertegenwoordigen de niet-functionele
requirements. Deze niet-functionele requirements hebben meestal betrekking op bepaalde
componenten van het kwaliteitsmodel.
Over deze niet-functionele goals weten we al dat het meestal niet mogelijk is om te zeggen of deze
goals al dan niet voldaan zijn. Niet-functionele requirements omvatten heel het continuüm dat loopt
van niet-voldaan tot volledig voldaan en dit is ook het geval voor de bijhorende niet-functionele
goals. Het is dan ook de bedoeling om het alternatief te vinden waarbij deze softgoals zoveel
mogelijk voldaan zijn. Veel onderzoek naar de verschillende softgoals werd reeds gerealiseerd. In
(Moody James, 2004) wordt een lijst van 161 niet-functionele requirements voorgesteld. 90% hiervan
kan geclassificeerd worden in een tiental categorieën (Performance, Cost, Security, Time, user
interface, SRS, end-user, Future, intersystem interaction, system integrity).
Softgoals zijn dus de criteria die gebruikt worden in GORE om alternatieven te evalueren. Maar het is
waarschijnlijk reeds opgevallen dat er geen vast aantal softgoals kan gekoppeld worden aan elk
alternatief. Voor elk goal model dat alternatieven bevat moet er dus opnieuw bepaald worden welke
60
softgoals van belang zijn voor het maken van een keuze tussen deze alternatieven. Het is ook
noodzakelijk om te bepalen wat de link is tussen de verschillende softgoals. Om dit grafisch voor te
stellen wordt er vaak gebruik gemaakt van een “softgoal interdependency” model (SIG) (Chung et al.,
2000). Bij deze grafische voorstelling wordt een boomstructuur gebruikt om aan te geven welke
softgoals een bijdrage leveren tot andere softgoals. Een voorbeeld van zo een SIG voor de kwaliteit
van een softwaresysteem is weergeven in onderstaande figuur (Figuur 18).
Figuur 18: Boomstructuur kwaliteit (Chung et al., 2000)
Zoals kan worden opgemerkt komen deze niet-functionele requirements niet allemaal overeen met
de ISO/IEC 9126 wat onmiddellijk aantoont dat er geen vaste set van NFR’s, en dus ook niet van
softgoals is. Wat we ook kunnen opmerken is dat bijvoorbeeld “reliability” afhangt van vijf andere
NFR’s (self-containedness, accuracy, completeness, robustness en consistency). “Reliability” draagt
op zijn beurt bij tot “as-is utility” die dan uiteindelijk een bijdrage levert tot de “general utility”. De
softgoal die bovenaan het softgoal model staat is dus het maximaliseren van de “general utility”. Dit
61
kan dan bereikt worden door zoveel mogelijk te voldoen aan de softgoals op lagere niveaus. Het
alternatief dat uiteindelijk zal zorgen voor de hoogste “general utility” zal gekozen worden.
6.2 SMART criteria voor KPI
Naast kwaliteit zijn de criteria kost en tijd zoals vermeld vaak ook van groot belang. Het is duidelijk
dat het noodzakelijk is om deze softgoals in voldoende detail te beschrijven omdat het anders
onmogelijk is om te bepalen in welke mate een alternatief bijdraagt tot een softgoal. We toonden al
aan dat kwaliteit een veel te ruime parameter is en dat verschillende alternatieven kunnen bijdragen
tot verschillende aspecten van kwaliteit en indien we de kwaliteit niet gedetailleerd zouden
specificeren voor een bepaald proces het de keuze nog moeilijker zou maken in plaats van te
vereenvoudigen. Om dit te vermijden is het belangrijk om voor elk proces de bijhorende softgoals op
te stellen gebruik makend van het SMART principe (“SMART Goal Setting,” 2010). SMART staat voor:
Specifiek (Specific)
Meetbaar (Measurable)
Haalbaar (Attainable/Achievable)
Relevant (Relevant)
Tijdspanne (Timely)
Dat betekent dat het duidelijk is wat er gewenst is in een bepaalde situatie en dat iedereen dat
begrijpt. Als er bijvoorbeeld aan een team gevraagd wordt om enkele kopietjes van een verslag te
maken, zal dit door elk teamlid anders geïnterpreteerd worden. Sommigen zullen onder enkele drie
kopietjes verstaan, anderen zullen er honderd kopietjes onder verstaan. Een betere instructie zou
zijn om te vragen aan het team: “Ik wil vijf kopieën van dat verslag.” In de meeste gevallen kan er
gebruikt gemaakt worden van hoeveelheden, breuken, percentages, frequenties om een specifiek
doel op te stellen.
Wanneer er gezegd wordt dat een bepaald doel meetbaar moet zijn, wordt er bedoeld dat het
mogelijk moet zijn om te bepalen of het doel al dan niet behaald is door het proces. Daarvoor is het
nodig om over duidelijke procedures te beschikken om het proces te meten (monitored, measured
en recorded). Indien het doel niet gekwantificeerd kan worden, betekent dit meestal dat het doel
foutief geformuleerd is en dat het herzien moet worden. Een voorbeeld hiervan is bijvoorbeeld het
doel: “Onze business moet groeien.” Wat dit precies betekent is natuurlijk onduidelijk, daarom zou
het volgende doel meer betekenis hebben: “Onze verkopen moeten stijgen met 20% om zo onze
business te doen groeien”.
62
Elke CEO van een onderneming of een verantwoordelijke van een afdeling wil zo goed mogelijk
presteren. Een competitieve ingesteldheid is in ieder geval positief en zo een gedachtegang is nodig
om goede prestaties te verkrijgen, maar het is noodzakelijk om te analyseren of bepaalde doelen
haalbaar zijn, gegeven de capaciteiten waarover men kan beschikken. Het is bijvoorbeeld meestal
niet haalbaar voor een beginnend bedrijf om als doel te hebben om na één jaar al marktleider te zijn
indien er in dezelfde industrie al enkele andere bedrijven aanwezig zijn die over een veel groter
kapitaal beschikken.
De opgestelde doelen moeten ook relevant zijn voor het proces waarop ze betrekking hebben. Indien
een bepaald proces geen invloed kan uitoefenen op een goal of toch niet op een rechtstreekse
manier, dan heeft het geen zin om dit doel hiervoor op te stellen. Het is bijvoorbeeld ondenkbaar om
voor een IT-afdeling als doel op te stellen dat ze de profit/revenue rating met 5% moeten verhogen.
Wel kan er als doel opgesteld worden dat ze proberen om hun uitgaven voor hardware of software
te verminderen met 10%.
Over de tijdspanne kunnen we kort zijn. Indien een bepaald doel wordt opgesteld voor een proces is
het nodig om hier een tijdspanne met een duidelijk start - en eindpunt aan te linken. Indien dit niet
het geval is, kan er onmogelijk gezegd worden of een doel voldaan is of niet. Stel bijvoorbeeld dat
een bedrijf als doel heeft om vijfduizend units te produceren. Het is onmogelijk om te zeggen of dit
bedrijf dit doel zal halen of niet omdat er niet gespecificeerd is tegen wanneer er vijf duizend units
moeten geproduceerd worden. Indien we hieraan een tijdspanne koppelen is dit echter wel mogelijk.
Bij het opstellen van de softgoals is het dus noodzakelijk om het SMART principe in gedachten te
houden. Als we terugkijken naar de subkarakteristieken van ISO/IEC 9126 kunnen we inderdaad wel
vaststellen dat veel van deze karakteristieken voldoen aan dit principe.
6.3 Softoal decompositie
Wanneer we beschikken over een set van softgoals die we zullen gebruiken voor de evaluatie van de
alternatieven is het ook belangrijk om de verschillende linken tussen de softgoals te bepalen. Deze
links worden ook visueel weergegeven in de SIG. De linken tussen de verschillende softgoals bestaan
zoals vermeld in de literatuur uit contributielinks. De algemeen gebruikte contributielinks zijn voor
een positieve contributie de Help/Make links. Deze links worden ook vaak voorgesteld door “+/++”.
De “+” contributie betekent dat er een positieve bijdrage geleverd wordt, maar deze bijdrage is niet
63
voldoende om de softgoal waartoe deze bijdrage geleverd wordt volledig te vervullen. Bij een “++”
contributie is deze bijdrage wel voldoende. Hetzelfde principe geldt voor de negatieve bijdrage waar
wordt gesproken van Hurt/Break links en die worden vaak voorgesteld door “-/--”.
Als we dit toepassen op het voorbeeld van online counseling en we passen de figuur uit (J. Horkoff &
Yu, 2009) aan, dan krijgen we onderstaande figuur (Figuur 19) die vooral kijkt vanuit het standpunt
van de organisatie.
Figuur 19: Softgoal model uit standpunt van de organisatie
Het is dus duidelijk dat de belangrijkste softgoal voor deze organisatie het helpen van de jongeren is.
Om dit op een succesvolle manier te doen is het nodig om zoveel mogelijk jongeren te helpen en om
advies van hoge kwaliteit te bieden. Wat ook onmiddellijk opvalt is dat dit een non-profit organisatie
is, dus dit zal één van de gevallen zijn waar de kost/winst een minimale rol speelt. Wel is er nood aan
een fonds om via een groter kapitaal meer mensen te kunnen helpen. De meeste links tussen
softgoals zijn help (“+”) links maar er zijn ook enkele andere links aanwezig. De bijdrage van de
alternatieven tot meerdere softgoals wordt eveneens via dezelfde links weergegeven.
64
Wat tot dusver opvalt, is dat de analyse die via deze contributielinks gebeurt, bestaat uit een
kwalitatieve analyse. Dit zal impact hebben op de precisie van onze evaluatie, maar hier komen we
op terug als we de evaluatie van de alternatieven bespreken.
Als we de zeven softgoals uit het voorbeeld meer in detail behandelen, kunnen we nagaan of deze
softgoals wel degelijk voldoen aan de SMART criteria. Dan is het voor al deze softgoals mogelijk om
na te gaan in welke mate de softgoals verwezenlijkt zijn en is het mogelijk om te bepalen vanaf welk
moment de softgoal al dan niet volledig of partieel verwezenlijkt of niet verwezenlijkt is. Op het
eerste gezicht lijken sommige softgoals uit ons voorbeeld niet te voldoen aan deze criteria, maar
door de juist key performance indicator (KPI) te koppelen aan sommige softgoals is het wel mogelijk
om een duidelijk beeld te vormen over de mate van verwezenlijking van sommige softgoals.
Bijvoorbeeld de softgoal “High Quality Counselling” lijkt op in eerste instantie niet te voldoen aan de
SMART criteria. De belangrijkste KPI voor kwaliteit in ons voorbeeld is de mate waarin een goede
raad gegeven is tijdens het eerste gesprek/contact (First contact resolution (FCR)). Uit studies blijkt
namelijk dat er een zeer positieve correlatie is tussen FCR en kwaliteit (dus ook tevredenheid)(Call
Center Magazine, 2007). Onmiddellijk kan aangetoond worden dat deze KPI voldoet aan de SMART
criteria wat ervoor zorgt dat “High Quality Counseling” een goede softgoal is in ons model. Door de
simpele berekening:
is het mogelijk om te bepalen in welke mate “High Quality Counselling” voldaan is. Hetzelfde kan
gebeuren voor de softgoal “Immediacy” door bijvoorbeeld te bepalen hoeveel tijd er is tussen het
versturen van de vraag en een antwoord of hoelang iemand moet wachten tot hij een raadgever aan
het woord krijgt (response time). Het is dus noodzakelijk om aan alle softgoals goede KPI’s te
koppelen en te zorgen dat deze KPI’s voldoen aan de SMART criteria.
Bij het opstellen van softgoal modellen kan soms de vraag gesteld worden hoe gedetailleerd de
softgoals moeten zijn. Is het noodzakelijk dat elke softgoal die beïnvloed wordt door de verschillende
alternatieven in dit model opgenomen wordt? Hier kunnen we stellen dat er in de meeste gevallen
gebruik gemaakt kan worden van de Paretoprincipe (80-20-regel). Deze regel wil zeggen dat het voor
de efficiëntie en de werkbaarheid van het model aangewezen is om de softgoals te bepalen waarmee
80% van de performance kan gemeten worden. Meestal is het voldoende om de vijf tot tien
belangrijkste softgoals te bepalen om op die manier zeker 80% te omvatten. De overige softgoals die
slechts 20% van de performance meten, bestaan vaak uit veel minder belangrijke softgoals en
65
zouden het model alleen maar onnodig complex maken. Kort samengevat kunnen we dus zeggen dat
indien een proces betrekking heeft op enorm veel softgoals, het niet nodig is om deze allemaal te
modelleren, maar dat het beter is om de belangrijkste softgoals te bepalen en deze op te nemen in
het model. 20% van de softgoals zullen 80% van de performance kunnen bepalen. In het geval van
ons voorbeeld gebruiken we zeven softgoals om de performance van het online counselen te
evalueren.
6.4 Belang van stakeholders
Als we het voorbeeld van online counseling bekijken valt het op dat we de alternatieven momenteel
slechts vanuit één standpunt bekijken. Het is echter onvoldoende om zomaar de belangrijkste
softgoals vanuit één standpunt te bepalen en om de alternatieven enkel vanuit dit standpunt te
evalueren. In elk beslissingsproces zijn er immers verschillende stakeholders die een inspraak moeten
hebben. De softgoals die hierboven bepaald zijn waren enkel vanuit het standpunt van de organisatie
maar in realiteit zijn er meestal wel meerdere stakeholders die elk andere belangen hebben. Deze
stakeholders kunnen zowel bestaan uit interne als externe stakeholders. Bij de interne wordt er vaak
gekeken naar de aandeelhouders en de werknemers, bij de externe stakeholders wordt in ons
voorbeeld gekeken naar de klanten omdat deze de reden zijn waarom een bepaald proces
ontwikkeld wordt. In realiteit zullen zowel de externe als de interne stakeholders verschillen van
bedrijf tot bedrijf. Het is dan ook de taak van elk bedrijf afzonderlijk om voor zichzelf te bepalen
welke stakeholders het belangrijkst zijn en welke ze willen opnemen in het model. Onderstaande
figuur (Figuur 20) geeft een breder overzicht van enkele mogelijke stakeholders van een organisatie.
Merk wel op dat dit geen compleet overzicht is.
66
Figuur 20: Mogelijke interne en externe stakeholders van een organisatie (Penumbra, n.d.)
In ons voorbeeld ligt de focus slechts op drie stakeholders: de organisatie, de werknemers en de
klanten. De organisatie (Organization) bestaat voornamelijk uit de aandeelhouders en de raad van
bestuur. De werknemers (Counsellors) zijn vooral de personen die betrokken zijn bij de alternatieven
waartussen gekozen wordt en de klanten (Kids and Youth) zijn natuurlijk de personen voor wie het
proces ontwikkeld wordt en die betalen voor een dienst of goed. Voor elk van deze stakeholders zijn
er verschillende softgoals waar ze belang aan hechten. Zo is het in sommige gevallen zo dat het voor
de aandeelhouders het belangrijkst is om zo veel mogelijk winst te maken. In andere gevallen,
bijvoorbeeld bij een non-profit organisatie, zullen er andere softgoals zijn die voor de organisatie het
belangrijkst zijn. De werknemers hebben weer andere belangen, zij zullen bijvoorbeeld graag werken
met een niet al te hoge werklast en in een goede werksfeer. Er zullen in veel gevallen ook meerdere
softgoals zijn die betrekking hebben op twee of meerdere stakeholders. Opvallend is dat in de
literatuur weinig aandacht besteed wordt aan deze meerdere stakeholders en dat de evaluatie
meestal gebeurt vanuit het standpunt van slechts één stakeholder. De evaluatie uit (J. Horkoff & Yu,
2009) en het bijhorende voorbeeld waarmee in deze masterproef wordt verder gewerkt is één van
de enige papers uit dit domein die deze meerdere stakeholders wel probeert in rekening te brengen.
67
Onderstaande figuren geven respectievelijk de softgoal modellen weer voor de jongeren (klanten)
(Figuur 21) en voor de raadgevers (werknemers) (Figuur 22). We merken op dat sommige softgoals
inderdaad meerdere malen terugkeren in de verschillende modellen omdat deze softgoals belangrijk
zijn voor meerdere stakeholders.
Figuur 21: Softgoal model uit het standpunt van de jongeren
Wanneer we kijken naar het softgoal model van de raadgevers valt het op dat er een cyclus aanwezig
is. Zoals vermeld in het literatuuronderzoek, kan zo een cyclus de evaluatie beïnvloeden en zo een
verkeerd beeld vormen. Het is dus belangrijk dat de cycli in het model opgemerkt worden en dat de
juiste maatregelen hiervoor getroffen worden of dat het op zijn minst toch in het achterhoofd
gehouden wordt. In het onderstaande model beïnvloedt de kwaliteit van het counselen de
tevredenheid van de raadgever. Dit is logisch omdat een hogere kwaliteit ervoor zorgt dat de
klantentevredenheid stijgt, wat een positieve invloed heeft op de tevredenheid van de raadgever.
Het is geweten dat gelukkige mensen beter presteren, dus dat brengt een positieve invloed op de
kwaliteit van het counselen met zich mee. Het is dus belangrijk om deze cyclus en de eventuele
68
invloed ervan op de evaluatie in rekening te nemen. In deze softgoal modellen kunnen we ook testen
of de softgoals voldoen aan de SMART criteria. Daarvoor is het nodig om aan een softgoal de juiste
KPI te koppelen die vervolgens getest kan worden aan het SMART principe. Neem nu bijvoorbeeld de
softgoal “Avoid Burn-out”. We weten dat een burn-out vaak voorkomt als de werklast voor de
raadgevers te hoog is, dus het is perfect mogelijk om deze softgoal te linken aan de KPI “utilization
rate”. Aangetoond is dat vanaf een “utilization rate” van 80-90% de kans op een burn-out aanzienlijk
vergroot (Call Center Magazine, 2007).
Figuur 22: Softgoal model uit het standpunt van de raadgevers
Het goal model en de bijhorende softgoal modellen zijn nu opgesteld. In de volgende hoofdstukken
wordt er geprobeerd om de keuze tussen de alternatieven uit het goal model te evalueren met
behulp van de criteria uit het softgoal model.
69
7 Prioriteiten
7.1 Het belang van prioriteiten
Wat in veel papers vergeten wordt en niet veel aandacht gekregen heeft tot een paar jaar geleden is
het feit dat niet alle softgoals even belangrijk zijn. Indien we de softgoals eenvoudigweg
terugbrengen tot kwaliteit, kost en tijd, dan is het logisch dat voor sommige stakeholders kwaliteit
belangrijker zal zijn dan de kost en dat voor andere stakeholders de kost zal primeren. Indien de
stakeholders bepaalde voorkeuren hebben, dan kan dit de evaluatie van verschillende alternatieven
in grote mate beïnvloeden. Dit is ook het geval in de paper van Yu en Horkoff (J. Horkoff & Yu, 2009).
Deze paper biedt zoals gezien in de literatuur een evaluatiemethode die rekening houdt met veel
aspecten van de evaluatie en deze paper biedt één van de betere beschikbare evaluatiemethodes
van het moment. Toch zijn er nog manieren om deze methode te verbeteren. Het toevoegen van
prioriteiten aan deze methode is daar volgens ons één van.
Eenmaal de verschillende softgoals voor het proces vaststaan is het dus nodig om te bepalen welke
softgoals het belangrijkst zijn voor de stakeholder. Er bestaan verschillende manieren om de
prioriteiten te bepalen. Indien het bijvoorbeeld een proces is dat in verschillende omgevingen of in
verschillende bedrijven reeds op verschillende manieren gebeurt, kunnen studies aantonen welke
softgoals het belangrijkst zijn om de beste performance te verkrijgen. Op die manier hebben studies
aangetoond dat het verbeteren van FCR (First Contact Resolution) in call centers veel meer invloed
heeft op de klanttevredenheid dan het verbeteren van de tijd dat klanten moeten wachten totdat ze
iemand aan de lijn krijgen (Call Center Magazine, 2007). In veel gevallen zijn er echter geen studies
beschikbaar of is de kost van het uitvoeren van de studies te groot ten opzichte van de kost van een
slechte keuze van een alternatief. Maar zelfs indien er reeds studies uitgevoerd zijn naar welke
softgoals of KPIs het belangrijkst zijn, is het niet vanzelfsprekend dat de stakeholders de eerdere
bevindingen volgen. In veel gevallen zullen de stakeholders zelf persoonlijke voorkeuren (afhangend
van hun belangen) hebben, dit kan al dan niet beïnvloed worden door eerdere persoonlijke
bevindingen of studies. In sommige gevallen kan het bijvoorbeeld zijn dat de stakeholder wil dat een
bepaald proces zo goedkoop mogelijk gebeurt, zelfs indien dit ten koste gaat van de kwaliteit.
Natuurlijk zal er altijd een afweging gemaakt moeten worden.
Enkele recente papers hebben reeds geprobeerd om deze preferenties van de stakeholders in
rekening te brengen tijdens de evaluatie (Hui & Liaskos, 2003; Liaskos et al., 2010, 2011). Maar zoals
vermeld in het Inleidend hoofdstuk, zijn er nog steeds meerdere zaken die volgens ons te weinig
aandacht gekregen hebben.
70
Een mogelijke manier om prioriteiten te achterhalen is simpelweg door de softgoals te rangschikken
volgens hun belangrijkheid en dus aan elke goal een rangschikking van 1 tot 10 toe te kennen. Deze
methode hebben we toegepast op het inleidende voorbeeld en kan in de praktijk bij simpele
modellen toegepast worden. Er zijn echter toch nog enkele zaken die voor problemen kunnen
zorgen. Het grootste probleem is dat er bij een rangschikking geen onderscheid gemaakt wordt
tussen verschillen in belangrijkheid onderling. Een simpele vergelijking kan gemaakt worden met een
wielerwedstrijd. De rangschikking op het einde van de wedstrijd geeft wel de top drie weer, maar je
kunt er niet uit afleiden hoe groot de verschillen waren tussen de drie eersten. Het is mogelijk dat de
eerste wielrenner een grote voorsprong had op de tweede en de derde, maar het zou ook kunnen
dat de eerste en de tweede dicht bij elkaar lagen en dat de derde wielrenner een grote achterstand
had. Ditzelfde principe is van toepassing voor de rangschikking van softgoals, er kan daar
onvoldoende informatie uit afgeleid worden. Daarom zoeken we een andere soort rangschikking
waarbij wel voldoende informatie voor handen is om de relatieve verschillen tussen de softgoals
onderling weer te geven.
7.2 Opstellen van prioriteiten met behulp van AHP binnen eenvoudig softgoal
model
Om deze afweging te maken en om prioriteiten te kunnen leggen tussen de verschillende softgoals
kan er beroep gedaan worden op een methode die ontwikkeld werd door Saaty namelijk AHP
(Analytical Hierarchy Process). AHP is een veelbelovende oplossing om de relatieve belangrijkheid
van softgoals weer te geven en deze methode is al door verschillende auteurs gebruikt in
besluitvorming (Shahin & Mahbod, 2007). De werking van AHP werd reeds toegelicht in de literatuur.
We passen AHP onmiddellijk toe op het voorbeeld van online counseling waarbij we het eerst
toepassen op ons eenvoudigste model waarin we de alternatieven evalueren met behulp van kost,
kwaliteit en tijd (Figuur 23). We hebben de contributielinks toegevoegd aan het model en dan krijgen
we onderstaande tabel waarbij alles aanwezig is om het model te evalueren.
71
Figuur 23: Invloed kost, kwaliteit en tijd op "Online Counselling"
Zoals kan worden opgemerkt, wordt er nog niet gewerkt met verschillende stakeholders en softgoal
modellen. Toch is het met dit eenvoudig model nog niet voor de hand liggend welk alternatief
gekozen zal worden. Indien alleen de kost belangrijk is dan zou in principe gekozen moeten worden
voor een SMS-dienst en indien alleen kwaliteit belangrijk is zou men kiezen voor een Cyber
Café/Portal/Chat room. Indien kwaliteit en kost beide belangrijk zijn en indien de tijd geen rol zou
spelen, zou men kiezen voor een SMS-dienst omdat de combinatie van een Make en een Help beter
is dan een combinatie van Make en Hurt. Het is dus duidelijk dat er prioriteiten gesteld moeten
worden.
We passen daarom AHP toe op deze drie criteria. Een eerste stap in AHP is de paarsgewijze
vergelijking. Dit gebeurt door de relatieve belangrijkheid van de criteria onderling te vergelijken op
een schaal van 1 tot 9. Hierbij betekent 1 dat de criteria even belangrijk zijn, 3 betekent dat het
criterium matig belangrijker is, 5 betekent dat het criterium veel belangrijker is, 7 betekent dat het
criterium heel veel belangrijker is en 9 betekent dat een criterium extreem veel belangrijker is dan
een ander criterium. De uitkomst van deze paarsgewijze vergelijking op basis van menselijke
beoordeling is de paarsgewijze vergelijkingsmatrix. Toegepast op deze drie criteria (kost, kwaliteit en
tijd) krijgen we volgende paarsgewijze vergelijkingsmatrix (Tabel 11). Uit deze matrix kan worden
72
afgeleid dat de kost matig belangrijker is dan de tijd, dat de kwaliteit een klein beetje belangrijker is
dan de kost en dat de kwaliteit belangrijker is dan de tijd. Bij de diagonale lijn in de matrix is het
logisch dat hier telkens het cijfer 1 terecht komt.
Kost Kwaliteit Tijd
Kost 1
3
Kwaliteit 2 1 4
Tijd
1
Tabel 11: Paarsgewijze vergelijkingsmatrix van kost, kwaliteit en tijd
Van deze matrix is het dus noodzakelijk om tot de relatieve gewichten te komen van de verschillende
criteria. Er is wiskundig aangetoond dat hiervoor de eigenvector methode de beste aanpak is (Saaty,
1990). De eigenvector methode bestaat uit een aantal matrixtransformaties. In een eerste stap
wordt het kwadraat van de matrix genomen en vervolgens worden de waarden in de rijen opgeteld
en genormaliseerd. Het resultaat van deze berekeningen is de eigenvector. Deze berekening van de
eigenvector moet enkele malen herhaald worden totdat de waarden van de eigenvector niet meer
veranderen na elke iteratie. Op dit moment is de definitieve eigenvector berekend en hieruit kunnen
dan simpelweg de relatieve gewichten berekend worden. In ons voorbeeld (uitgewerkt in Figuur 24)
is de eigenvector niet veel meer veranderd in de volgende iteraties.
73
Figuur 24: Uitwerking AHP op kost, kwaliteit en tijd
Deze eigenvector uit stap 3 (Figuur 24) stelt de onderlinge belangrijkheid van de criteria voor. De
relatieve gewichten die we kunnen toekennen aan kost, kwaliteit en tijd kunnen worden
teruggevonden in onderstaande tabel(Tabel 12). Met deze prioriteiten wordt vervolgens verder
gewerkt tijdens de evaluatie van het model omdat deze er een grote invloed op uitoefenen (zie
volgend hoofdstuk).
Softgoal Relatief gewicht Rangschikking
Kost 32 % 2 Tweede
belangrijkste
softgoal
Kwaliteit 56 % 1 Belangrijkste
softgoal
Tijd 12 % 3 Minst
belangrijke
softgoal
Tabel 12: Relatieve gewichten en rangschikking
74
7.3 Opstellen van prioriteiten met behulp van AHP binnen softgoal model van
online counseling
In het voorgaande werden prioriteiten toegekend binnen het eenvoudige softgoal model. Nu
proberen we ook prioriteiten toe te kennen binnen de softgoal modellen van online counseling. Het
toekennen van de prioriteiten aan het volledige model, bestaande uit de drie softgoal modellen voor
de drie stakeholders is minder evident. Dit komt omdat de softgoals in softgoal modellen zich op
verschillende niveaus bevinden en sommige softgoals invloed hebben op meer dan één softgoal.
Afhankelijk van de structuur van het softgoal model kan de methode die gebruikt wordt voor het
opstellen van de prioriteiten verschillen. Indien de structuur van het softgoal model hiërarchisch is en
elke criteria als onafhankelijk beschouwd kunnen worden, dan is AHP nog steeds de aangewezen
manier om de prioriteiten te bekomen. Een voorbeeld van de ideale structuur om AHP te gebruiken
wordt weergegeven in onderstaande figuur (Figuur 25) (BPMSG, 2011).
Figuur 25: Ideale hierarchische structuur voor AHP
Zoals je kunt zien zijn er een aantal subcriteria die telkens slechts invloed hebben op één criterium.
De subcriteria onderling beïnvloeden elkaar ook niet, zodat ze telkens als onafhankelijk beschouwd
kunnen worden. In sommige gevallen is dergelijke structuur niet van toepassing en kunnen de
75
criteria niet als onafhankelijk beschouwd worden aangezien er meerdere criteria zijn die elkaar
beïnvloeden. In deze gevallen kunnen we beroep doen op ANP (Analytical Network Process)(Saaty,
1990, 2008).
ANP is een meer algemene vorm van AHP en via deze methode is het mogelijk afhankelijkheden en
feedbackloops (cyclussen) mee in rekening te brengen bij het opstellen van de prioriteiten. Zoals de
naam ANP al laat vermoeden, is het bij ANP mogelijk om prioriteiten op te stellen in een netwerk van
verschillende criteria. Deze netwerkstructuur wordt duidelijk in onderstaande figuur (Figuur 26). Op
deze figuur is grafisch te zien dat verschillende linken tussen de criteria onderling mogelijk zijn. Dus
indien de structuur van het softgoal model niet voldoet aan de eenvoudige structuur van AHP, kan er
gekozen worden voor ANP.
Figuur 26: Netwerk structuur voor toepassing ANP
In ons geval doen we in de eerste plaats een beroep op AHP om de prioriteiten te berekenen. Indien
een softgoal contributielinks ontvangt uit verschillende softgoals maken we gebruik van AHP om de
76
prioriteiten op te stellen. Indien een softgoal contributielinks ontvangt van zowel alternatieven als
van softgoals dan kiezen we er momenteel voor om deze prioriteiten manueel toe te kennen door ze
evenredig te verdelen onder de softgoals en de alternatieven. Na de berekening van AHP (zie
appendix 1) krijgen we onderstaande figuur (Figuur 27) voor de softgoals van de jongeren. Zoals je
kunt opmerken moet de som van de inkomende prioriteiten in een softgoal altijd gelijk zijn aan
100%. Er een keuze moet gemaakt worden tussen de verschillende alternatieven, daardoor komt er
telkens in een softgoal slechts één link van uit de mogelijke alternatieven. Dit zorgt ervoor dat de
som telkens 100% is. Bijvoorbeeld bij de softgoal “Comfortable to Use” komt er 50% van “Anonimity”
en 50% is afkomstig van ofwel “SMS- dienst” of van “Cyber Café/Portal/Chat Room”. De som hiervan
is duidelijk 100%.
Figuur 27: Toekennen gewichten via AHP
Op dit moment is het mogelijk om te starten aan de evaluatie van de alternatieven (Evaluatie) maar
eerst worden nog enkele voordelen en nadelen van AHP besproken (BPMSG, 2011).
Het grootste voordeel van AHP is dat AHP het mogelijk maakt om complexe problemen eenvoudig
voor te stellen doordat het probleem gestructureerd wordt in meerdere subproblemen die elk
77
minder complex zijn. Een tweede voordeel is dat AHP het mogelijk maakt om de input van meerdere
personen samen te brengen tot een gezamenlijke beoordeling (zie Groepsbesluitvorming). Een derde
voordeel is dat de berekeningen van AHP vrij eenvoudig uitgevoerd kunnen worden. Een laatste
voordeel is dat AHP een consistentiecheck kan uitvoeren om na te gaan of de gebruikte data geschikt
zijn om de prioriteiten te bepalen.
Het grootste nadeel is echter dat de input die AHP gebruikt om de prioriteiten te bepalen afkomstig
is van subjectieve input. Een manier om deze subjectieve input op een meer gestructureerde manier
te bepalen is door gebruikt te maken van QFD (Akao, 1990). Een ander nadeel van AHP is dat het niet
altijd mogelijk is om het probleem te structureren in meerdere subproblemen. In dat geval kan soms
wel beroep gedaan worden op ANP.
8 Evaluatie
8.1 Evaluatie rekening houdend met de prioriteiten tussen softgoals
Na het opstellen van het goal model, de softgoal modellen en na het toekennen van de prioriteiten is
het mogelijk om de alternatieven te evalueren. Voor de evaluatie van alternatieven zijn meerdere
methodes voorgesteld in het eerste deel van de masterproef (DEEL 1: Theoretisch kader). In dit
hoofdstuk stellen we een evaluatiemethode voor die deels verder bouwt op bestaande methodes.
Het goalmodel en de softgoal modellen uit het voorbeeld van online counseling zijn oorspronkelijk
opgesteld voor een kwalitatieve evaluatie. Via de contributielinks, een aantal initiële labels en de
propagatieregels is het mogelijk om de alternatieven op een kwalitatieve manier te evalueren (J.
Horkoff & Yu, 2009). Doordat wij tijdens de evaluatie de preferenties van de stakeholders willen
integreren, is het niet meer mogelijk om de evaluatie op dezelfde manier uit te voeren. We moeten
op zoek naar andere manieren om de verschillende alternatieven te evalueren.
Ten eerste is het nodig om over te schakelen van een kwalitatieve naar een kwantitatieve evaluatie.
De meest voor de hand liggende manier om dit te doen is door in de contributielinks “++/+/-/--”
tussen de softgoals te vervangen door numerieke waarden. Dit werd reeds gedaan in (Letier & van
Lamsweerde, 2004). Het probleem hierbij is dat het vaak niet gemakkelijk is om de kwalitatieve
contributielinks zomaar te vervangen door numerieke waarden.
78
Ten tweede is het noodzakelijk om ook de bijdragen die de alternatieven leveren tot de verschillende
softgoals te vervangen door numerieke waarden. In (Hui & Liaskos, 2003; Liaskos et al., 2010, 2011)
werden ook reeds mogelijkheden voorgesteld om de verschillende bijdrages numeriek weer te geven
en om daarbij rekening te houden met de preferenties van de stakeholders (dit is vooral het geval in
de laatste 2 papers). Een groot minpunt in de evaluatie bij deze papers is dat er geen verschil
gemaakt wordt in de mate waarin een alternatief bijdraagt tot bepaalde softgoals. In (Hui & Liaskos,
2003) worden de waardes “-1,0,1” gebruikt om respectievelijk een negatieve bijdrage, geen bijdrage
en een positieve bijdrage aan te geven. In (Liaskos et al., 2010, 2011) worden wel prioriteiten gesteld
tussen de softgoals door alle softgoals een relatieve waarde te geven en de som van deze relatieve
waarden is vervolgens 1. Om de totale score van een bepaald alternatief te berekenen wordt de som
gemaakt van de relatieve waarden van de softgoals waartoe een alternatief een bijdrage levert. In dit
geval wordt er dus geen onderscheid gemaakt in de mate waarin een bepaald alternatief bijdraagt
tot een softgoal.
Ook belangrijk om op te merken is dat in de papers (Hui & Liaskos, 2003; Liaskos et al., 2010, 2011)
gewerkt werd met losstaande softgoals. Hiermee bedoelen we dat de softgoals die gebruikt werden
om de alternatieven te evalueren geen deel uitmaakten van een softgoal model wat de evaluatie
aanzienlijk vereenvoudigde.
Zoals reeds aangegeven is het niet gemakkelijk om zomaar kwalitatieve contributielinks te vervangen
door kwantitatieve links. Een oplossing die we hiervoor voorstellen is om de “++/+/-/--” te vervangen
op onderstaande manier (Tabel 13):
Symbool Kwalitatief Grafisch Numeriek
++ Make
1
+ Help
0,5
Geen link None None 0
- Hurt
-0,5
-- Break
-1
Tabel 13: Kwanitatieve voorsteling "++/+/-/--"
79
Deze numerieke waarden geven de mate aan waarmee een waarde van de ene softgoal of van het
alternatief gepropageerd wordt naar de softgoal waartoe een bijdrage geleverd wordt. Tijdens de
evaluatie die we toepassen wordt de waarde die gekoppeld wordt aan een alternatief gepropageerd
naar de softgoals door deze waarde te vermenigvuldigen met de numerieke waarde die gegeven
wordt aan de contributielinks. Tijdens de evaluatie is het dus nodig om de alternatieven een initiële
waarde te geven. Voor de eenvoud is gekozen voor de waarde “0” of “100” om aan te tonen voor
welk alternatief gekozen wordt en om zo de evaluatie voor dit alternatief uit te voeren. Tijdens de
verdere evaluatie worden de prioriteiten die toegekend werden aan de verschillende softgoals ook
mee verrekend om op die manier tot een waarde te komen voor het doel dat men uiteindelijk wil
maximaliseren. De bedoeling is om te kijken bij welk alternatief de waarde van het ‘target’ doel
maximaliseert gegeven de prioriteiten die gekoppeld werden aan de softgoals.
In deze evaluatie wordt dus een duidelijk onderscheid gemaakt tussen de bijdrage die geleverd wordt
van de ene softgoal tot de andere softgoal en tussen de prioriteiten binnen de verschillende
softgoals. Dit is noodzakelijk omdat sommige softgoals misschien wel belangrijk zijn voor bepaalde
stakeholders maar dit betekent niet altijd dat deze softgoals ook een even grote bijdrage leveren ten
opzichte van andere softgoals. Daarom wordt in deze evaluatie van beide (bijdragen en prioriteiten)
gebruik gemaakt om het uiteindelijke resultaat van de softgoal bovenaan het softgoal model te
bepalen.
De waarde die gepropageerd wordt naar de volgende softgoal, wordt simpelweg bepaald door de
vermenigvuldiging van de contributiebijdrage, de prioriteit en de waarde toegekend aan de softgoal
of het alternatief.
80
Figuur 28: Evaluatie alternatief Cyber Café/Portal/ Chat Room
Figuur 29: Evaluatie alternatief SMS- dienst
81
Deze twee figuren (Figuur 28 en Figuur 29) geven de evaluatie van respectievelijk de Cyber
Café/Portal/Chat Room en de SMS-dienst. We gaan dieper in op de evaluatie van Figuur 28 waarbij er
gekozen wordt voor een Cyber Café/Portal/Chat Room. De softgoal “Immediacy” krijgt een waarde
“100”. Dit is afkomstig van 0 (SMS- dienst) * 100% * -0,5 (“Hurt” Link) + 100 (Cyber Café/Portal/Chat
Room) * 100% * 1 (“Make” link”). De softgoal “Anonimity” krijgt de waarde “-50” (0 * 100% * 0,5 +
100 * 100% * -0,5). De softgoal “Comfortable to Use” krijgt een waarde “12,5” (0 * 50% * 0,5 + 100 *
50% * 0,5 + -50 * 50% * 0,5). Gegeven de prioriteiten die gekoppeld werden aan de softgoals met
behulp van AHP is het mogelijk om voor de softgoal “Get Effective Help” een waarde “29” (12,5 *
24% * 0,5 + -50 * 14% * 0,5 + 100 * 62% * 0,5) te bepalen. Doordat de Cyber Café/Portal/Chat Room
een “Make” link heeft met de softgoal “Immediacy” en doordat deze softgoal een hoge prioriteit
heeft, geniet dit alternatief de voorkeur en werd ook de hoogste score voor dit alternatief berekend.
8.2 Evaluatie zonder prioriteiten in rekening te brengen
Als we dezelfde evaluatie uitvoeren vanuit het standpunt van de jongeren (Figuur 28 en Figuur 29),
maar dan zonder de prioriteiten mee te rekenen. In ons methode komt dit overeen met het
toekennen van een prioriteit van 33% aan de drie softgoals die bijdragen tot “Get effective help”.
Deze uitkomst kunnen we vervolgens vergelijken met de kwalitatieve evaluatie van (J. Horkoff & Yu,
2009). Via de evaluatie van Horkoff en Yu kunnen we besluiten dat beide alternatieven ervoor zorgen
dat de softgoal “Get effective help” gedeeltelijk vervuld is. Als we bovenstaande methode vervolgens
toepassen komen we voor het alternatief van het Cyber Café aan een waarde van “10,4” (Figuur 30)
en voor de SMS-dienst aan een waarde van “12,5” (Figuur 31).
82
Figuur 30: Evaluatie alternatief Cyber Café/Portal/ Chat Room zonder prioriteiten
Figuur 31: Evaluatie alternatief SMS- dienst zonder prioriteiten
83
8.3 Beoordeling evaluaties
Na deze twee evaluaties (één keer met prioriteiten en de tweede keer zonder prioriteiten) is het
reeds mogelijk om een aantal conclusies te trekken:
Ten eerste is het dankzij de nieuwe methode mogelijk om de alternatieven te rangschikken,
wat de keuze tussen de alternatieven aanzienlijk zal vereenvoudigen. Bij de kwalitatieve
methode werd als uitkomst gevonden dat beide alternatieven voor een gedeeltelijke
vervulde softgoal “Get effective help” zorgen wat het niet mogelijk maakt om te kiezen
tussen beide alternatieven. Bij de nieuwe methode daarentegen kan de rangschikking
onmiddellijk afgeleid worden.
Ten tweede is het nu ook mogelijk om prioriteiten te integreren in de methode, wat de keuze
tussen de alternatieven realistischer maakt. In het dagelijkse leven zullen bijna alle keuzes
afhangen van de verschillende preferenties die de persoon die de keuze maakt op een
bepaald moment heeft, dus het zou onlogisch zijn om deze preferenties niet te integreren bij
de evaluatie van alternatieven.
Jammer genoeg zijn er ook minpunten aan de nieuwe evaluatiemethode. Zo is het moeilijker
geworden om labels toe te kennen aan de softgoals. We zouden de labels uit onderstaande tabel
kunnen gebruiken om respectievelijk aan te geven in welke mate een softgoal vervuld is. Deze labels
(vervuld, gedeeltelijk vervuld, geen invloed, gedeeltelijk niet vervuld, niet vervuld) kunnen telkens
afgeleid worden uit de numerieke waarden door te kijken in welk interval deze numerieke waarden
zich bevinden (Tabel 14). Hierbij moet wel de opmerking gemaakt worden dat de numerieke
waarden vrij vlug lage waarden representeren doordat er in de meeste softgoal modellen veel “Help”
en “Hurt” links aanwezig zijn die slechts de helft van de waarde propageren. Indien in een softgoal
model enkel “Make” of “Break” links terug te vinden zijn is het mogelijk om een softgoal als “vervuld”
te labellen.
84
Label Interval
Vervuld [100]
Gedeeltelijk vervuld ]0,100[
Geen invloed [0]
Gedeeltelijk niet-vervuld ]-100,0[
Niet-vervuld [-100]
Tabel 14: Toekenning label aan softgoals
Een tweede minpunt is dat er momenteel slechts vier verschillende contributielinks zijn waarmee
gewerkt wordt. Het is immers vanzelfsprekend dat wanneer twee alternatieven beiden een “Help”
contributielink hebben ten opzichte van een softgoal, de bijdrage voor deze alternatieven niet per se
even groot zal zijn. Indien men dus over meer gegevens beschikt bij het opstellen van deze modellen,
zou deze methode het mogelijk maken om de “Help” (en “Hurt”) contributielink verder op te
splitsen. Via de numerieke bijdragen uit onderstaande tabel (Tabel 15) zou dus onderscheid kunnen
gemaakt worden tussen verschillende “Help” (en “Hurt”) contributielinks wat de evaluatie opnieuw
realistischer zou kunnen maken.
Kwalitatieve contributielink Kwantitatieve bijdrage
Help
0,9
0,8
…
0,2
0,1
Hurt
- 0,1
- 0,2
…
- 0,8
- 0,9
Tabel 15: Van kwalitatieve naar kwanitatieve bijdrages
85
Indien nog meer informatie beschikbaar is over de verschillende bijdrages die alternatieven leveren
ten opzichte van softgoals, kan nog een stap verder gegaan worden. Stel bijvoorbeeld een softgoal
die een zo laag mogelijke kost wenst voor de verschillende alternatieven. Indien dan voor elk
alternatief de kost gekend is, kan de contributie van de alternatieven ten opzichte van deze softgoal
gemakkelijk bepaald worden door de kosten onderling te vergelijken en aan de hand daarvan de
bijdrages op te stellen. Dit wordt duidelijker met een voorbeeld. Stel 4 alternatieven (A, B, C en D)
met elk een andere kostprijs. Aan het goedkoopste alternatief wordt de contributielink “1” (Make)
gekoppeld en de andere alternatieven krijgen dan een link in functie van de ratio ten opzichte van
het goedkoopste alternatief. In onderstaande tabel (Tabel 16) is alternatief B het goedkoopst en
wordt hieraan de kwantitatieve bijdrage “1” gekoppeld.
Alternatief Kost Kwantitatieve bijdrage
A 8.000 0,5
B 4.000 1
C 5.000 0,8
D 10.000 0,4
Tabel 16: Mogelijke uitwerking kwantitatieve bijdragen
Wanneer er dus voldoende informatie beschikbaar is, zou voor elk alternatief de kwantitatieve
bijdrage tot verschillende softgoals bepaald kunnen worden. In veel gevallen is de bijdrage tot de
softgoals vooraf moeilijk te bepalen en kan dit pas achteraf via testen gebeuren. Maar indien hiervan
een accurate schatting gemaakt kan worden, kan dit de evaluatiemethode verder verbeteren.
Dit kan opnieuw toegepast worden op ons voorbeeld van online counseling. Zoals al een paar keer
vermeld, is het hiervoor enorm belangrijk om voor elke softgoal te bepalen welke KPI eraan
gekoppeld wordt.
Stel nu bijvoorbeeld de softgoal ‘Immediacy’. Hier kan als KPI genomen worden hoe lang het duurt
vooraleer iemand een antwoord krijgt op zijn vraag. We kunnen deze KPI opsplitsen in twee delen. In
de eerste plaats de wachttijd, dit is de tijd dat het duurt voordat er een raadgever beschikbaar is. Een
tweede deel is dan de tijd dat het duurt voor de raadgever om een antwoord te geven.
86
Tijd vooraleer raad gegeven wordt = wachttijd + antwoordtijd
Laten we in eerste instantie ervan uitgaan dat er voldoende raadgevers beschikbaar zijn en dat de
wachttijd dus verwaarloosd wordt. Dan moet alleen de antwoordtijd geëvalueerd worden.
Alternatief KPI “Immediacy” (in seconden) Kwantitatieve bijdrage
SMS-Dienst 110 seconden 0,27
Chat Room 30 seconden 1
Tabel 17: Kwantitatieve bijdragen toegepast op voorbeeld
Indien het bij de SMS-dienst 110 seconden duurt (tijd voor sms te typen + verzendtijd) en bij de Chat
Room slechts 30 seconden, dan kunnen de kwantitatieve bijdragen uit Tabel 17 afgeleid worden.
Deze kwantitatieve bijdragen geven indien correct bepaald veel meer informatie dan de huidige
“Hurt” en “Make” links voor deze alternatieven ten opzichte van de softgoal ‘Immediacy’. Dit zal op
zijn beurt de keuze tussen de alternatieven verder beïnvloeden. De beste manier om dit toe te
passen is door goede KPI’s te linken aan de softgoals waardoor een nauwkeurigere evaluatie mogelijk
is. Het grote probleem hierbij is dat het voor veel bedrijven niet evident is om op voorhand te
achterhalen hoe bepaalde alternatieven zullen scoren op de KPI’s die bepaald werden voor de
softgoals.
In deze berekeningen werd ervan uitgegaan dat de wachttijd verwaarloosd kan worden. In sommige
gevallen, bijvoorbeeld tijdens spitsuren, is het echter wel mogelijk dat er onvoldoende raadgevers
zijn waardoor deze kwantitatieve bijdragen moeten herzien worden. Dit wordt besproken in de
Sensitiviteitsanalyse.
87
9 Sensitiviteitsanalyse
Zoals kort vermeld in het vorige hoofdstuk, kunnen externe gebeurtenissen de evaluatie van het
model beïnvloeden. In het algemeen kunnen we twee situaties onderscheiden.
9.1 Veranderingen in prioriteiten tussen softgoals
In een eerste situatie kunnen de gewichten die aan de softgoals toegekend zijn veranderen. Indien
bijvoorbeeld andere stakeholders in het proces aan belang winnen of indien de bestaande
stakeholders hun prioriteiten aanpassen. Zo kan het zijn dat het bedrijf besluit om een andere
strategie te volgen vanaf de toekomst. Of het kan zijn dat de klanten andere verwachtingen krijgen.
In sommige gevallen kan deze verandering ook komen doordat de overheid bepaalde subsidies
toekent indien processen milieuvriendelijker worden. Deze verandering in prioriteiten tussen de
softgoals zal natuurlijk een invloed uitoefenen op de evaluatie van het model en de keuze van het
alternatief (Ma, Liu, Xie, Zhang, & Yin, 2009).
Het is dus belangrijk dat bij de keuze tussen de alternatieven gekeken wordt hoe een verandering in
prioriteiten de keuze zou beïnvloeden. Indien er in een bepaalde sector de laatste jaren een
bepaalde trend is, zoals een stijgend belang van de kwaliteit, dan moet daarmee rekening gehouden
worden tijdens de evaluatie. Zo kan men kijken of de keuze van alternatief al dan niet zou
veranderen indien een bepaalde softgoal 20% aan belang zou winnen. Indien zou blijken dat de
keuze van alternatief zou veranderen indien een bepaalde softgoal belangrijker wordt, moet men
schatten wat de toekomstverwachtingen zijn van de stakeholders. Indien een verandering in
prioriteiten geen directe invloed uitoefent op de keuze dan zou men dit alternatief als robuust
kunnen omschrijven.
9.2 Veranderingen van bijdragen tot softgoals
In een tweede situatie zou het ook kunnen dat de bijdrage die een alternatief levert tot een bepaalde
softgoal verandert naargelang de situatie (Lapouchnian, 2011). Neem nu het voorbeeld van online
counseling. Indien op een bepaald moment enorm veel jongeren op hetzelfde moment raad nodig
hebben, dan zou het kunnen gebeuren dat er niet genoeg raadgevers zijn om al de vragen
onmiddellijk te kunnen beantwoorden. Dit kan sommige bijdrages negatief beïnvloeden. Door deze
plotse drukte zal de softgoal ‘Immediacy’ negatief beïnvloed worden, maar de drukte zal normaal
gezien echter geen invloed uitoefenen op de softgoal “Anonimity”. Indien een bepaalde softgoal
negatief beïnvloed wordt door een externe situatie, moet in de eerste plaats achterhaald worden of
88
deze negatieve impact dezelfde is voor al de alternatieven omdat dit in sommige gevallen natuurlijk
niet het geval zal zijn. In veel gevallen zal deze externe situatie te maken hebben met de capaciteit
van een bepaald proces. De beste manier om dit te integreren in het goal model is om voor elke
softgoal op te stellen bij welke capaciteit de bijdrage tot de softgoal optimaal (100%) is en in welke
mate de bijdrage van het alternatief afneemt. Een mogelijk voorbeeld is weergegeven in
onderstaande tabel (Tabel 18).
# oproepen per uur Performance Chat Room tot softgoal ‘Immediacy’
0 - 49 100%
50 - 99 80%
100 - 149 60%
150 - 199 40%
200 + 20%
Tabel 18: Sensitiviteitsanalyse
We weten uit vorige berekeningen dat de bijdrage van de Chat Room tot de softgoal ‘Immediacy’ 1 is
als het aantal oproepen beperkt blijft tot maximaal 49 oproepen per uur. Indien er op een spitsuur
uitzonderlijk 120 oproepen zijn, dan zal deze bijdrage slechts 0,6 zijn. Hetzelfde kan berekend
worden voor de SMS-dienst en in het geval van de SMS-dienst zal de performance evenredig
afnemen, maar bij andere toepassingen zal dit waarschijnlijk niet altijd het geval zijn.
Zoals we zelf al aangaven zal het misschien uitzonderlijk zijn dat een bepaalde situatie zich voordoet.
Het bedrijf in kwestie zal zich dan moeten afvragen of de keuze tussen de alternatieven zal afhangen
van zulke uitzonderlijke situaties. Maar indien een bedrijf een bepaalde service garandeert, dan
zullen ze dit toch ergens in rekening moeten brengen.
Een laatste opmerking in dit hoofdstuk is het feit dat in sommige gevallen het niet meer voldoende is
om zo goed mogelijk te voldoen aan een kwaliteitsattribuut en dus ook aan een softgoal. Dit zijn
gevallen waarin bijvoorbeeld de overheid een kwaliteitsvereiste oplegt waardoor een
kwaliteitsattribuut een hardgoal wordt. In deze gevallen zal een bepaald alternatief ofwel voldoen
aan deze vereiste ofwel niet voldoen.
89
De eenvoudigste manier om deze sensitiviteitsanalyse uit te voeren, vooral voor de eerste en de
tweede situatie, is door de evaluatie uit te voeren in een rekenprogramma zoals Excel. Bij deze
sensitiviteitsanalyse kunnen enkele beginwaarden worden aangepast om de impact hiervan op het
uiteindelijke resultaat na te gaan. Verder is het in Excel ook mogelijk om via de functie “Oplosser”
enkele waarden variabel te laten en om op die manier te vergelijken wat de ideale waarden zouden
zijn voor een optimaal resultaat.
10 Overzicht methode
De voorgestelde methode bestaat dus uit vier belangrijke stappen, namelijk het opstellen van het
goal model, het opstellen van het softgoal model, het bepalen van de prioriteiten en de evaluatie van
de alternatieven.
Onderstaande figuur (Figuur 32) toont de schematische opbouw van het model. In de eerste plaats is
het nodig om het goal model op te stellen waaruit de verschillende alternatieven geïdentificeerd
kunnen worden. Deze alternatieven leveren verschillende bijdragen tot de softgoals uit de
opgestelde softgoal modellen. Afhankelijk van de prioriteiten die werden toegekend aan deze
softgoals door de stakeholders en afhankelijk van de contributie van de alternatieven tot deze
softgoals, worden de alternatieven anders gerangschikt. In een laatste fase wordt een
sensitiviteitsanalyse gebruikt om de invloed van veranderingen in zowel de contributies als de
prioriteiten te bepalen. Dit zijn ook de stappen die we overlopen hebben doorheen deze
masterproef.
Figuur 32: Schematische voorstelling methode
90
11 Groepsbesluitvorming
11.1 Groepsbesluitvorming binnen één softgoal model
In dit geval is er één voornaam probleem: hoe worden individuele beoordelingen samengebracht tot
één algemene beoordeling die representatief is voor de totale groep? Hoe kunnen we dus individuele
voorkeuren en keuzen samenbrengen tot één groepsbeslissing? De wederzijdse eigenschap speelt
hierbij een belangrijke rol. Beoordelingen moeten op dergelijke manier samengevoegd worden dat
de gesynthetiseerde beoordeling de synthese van de individuele beoordelingen weerspiegelt (Saaty,
2008).
Deze groepsbesluitvorming is dus belangrijk bij het opstellen van de verschillende prioriteiten tussen
de softgoals. Indien we de prioriteiten van een bepaalde groep stakeholders willen bepalen,
bijvoorbeeld van de klanten, dan maken we nog steeds gebruik van AHP, maar op dit moment is het
noodzakelijk om de beoordeling van meerdere klanten in rekening te nemen bij het bepalen van deze
prioriteiten.
Om via AHP deze beoordelingen samen te brengen tot één beoordeling werd aangetoond dat het
geometrisch gemiddelde en niet het veel gebruikte rekenkundig gemiddelde, de enige correcte
manier is (Saaty, 2008). Het geometrisch of meetkundig gemiddelde van n beoordelingen wordt
verkregen door deze n beoordelingen met elkaar te vermenigvuldigen en vervolgens van dit product
de n-de-machtswortel te nemen. Het rekenkundig gemiddelde wordt eenvoudigweg bepaald door de
som te nemen van n beoordelingen en deze som te delen door n. Het geometrisch gemiddelde is
betekenisvoller dan het rekenkundig gemiddelde omdat de beoordelingen die gebruikt worden voor
AHP zich op een schaal van 1-9 bevinden (Tabel 7) en deze schaal niet lineair is aangezien een
beoordeling van “4” niet twee keer beter is als een beoordeling van “2”.
11.2 Groepsbesluitvorming tussen meerdere softgoal modellen
Het kan in veel gevallen ook belangrijk zijn om te bepalen welke stakeholders voor een bedrijf het
belangrijkst zijn en welke stakeholders dus ook het meeste aandacht verdienen. Indien voor een
bepaald bedrijf de werknemers van cruciaal belang zijn en dit bedrijf hoog wil scoren op
werknemertevredenheid, dan kan het bedrijf bij de evaluatie van alternatieven overwegen om het
softgoal model van de werknemers zwaarder te laten doorwegen. Indien bepaalde stakeholders voor
een bedrijf niet belangrijk zijn, dan kan het zelfs mogelijk zijn dat het niet de moeite loont om een
softgoal model op te stellen voor deze stakeholders en kan een bedrijf beslissen om deze
stakeholders achterwege te laten bij de evaluatie.
91
12 Besluit
In deze masterproef werd een oplossing gezocht voor het vereenvoudigen van de vele keuzes die
dagelijks genomen moeten worden in het bedrijfsleven. Hiervoor werd een methode ontwikkeld die
door veel bedrijven gebruikt kan worden als vertrekpunt bij het maken van beslissingen. Aangezien
de methode ontworpen werd binnen GORE, werd bij de ontwikkeling ervan vertrokken van de al
bestaande methodes uit de literatuur. Hierbij werd gezocht naar gebreken van de bestaande
methodes en manieren om deze methodes te verbeteren. Verder werden ook aspecten van
besluitvorming toegevoegd om tot onze uiteindelijke methode te komen.
De methode die wordt voorgesteld in deze masterproef, kan opgesplitst worden in meerdere
stappen. In eerste instantie is het noodzakelijk om een goal model op te stellen waaruit de
verschillende alternatieven bepaald kunnen worden. Een volgende stap is het identificeren van de
softgoals en het opstellen van het softgoal model. Eenmaal het goal model en het softgoal model
opgesteld zijn, is het noodzakelijk om in de eerste plaats de bijdragen van de verschillende
alternatieven tot de softgoals te bepalen en om in de tweede plaats de prioriteiten tussen de
softgoals te bepalen. Nadat deze informatie verzameld is, kan de evaluatie van de verschillende
alternatieven gebeuren.
Natuurlijk is het in onze huidige economie met een constant veranderende bedrijfsomgeving
belangrijk om de impact van deze onzekerheden mee in rekening te brengen bij het maken van
bepaalde keuzes. Dit is ook de reden waarom een sensitiviteitsanalyse wordt voorgesteld.
13 Conclusie
In deze masterproef werd er gezocht naar een manier om het goal model en het softgoal model te
evalueren. Hierbij werd er getracht om zoveel mogelijk over te schakelen naar een kwantitatieve
oplossing omdat dergelijke oplossing nauwkeuriger is en meer informatie biedt dan de veel gebruikte
kwalitatieve oplossingen. De huidige kwantitatieve oplossingen uit (Hui & Liaskos, 2003; Liaskos et
al., 2010, 2011) schoten zoals vermeld op verschillende vlakken tekort en in deze masterproef werd
hiervoor een oplossing gezocht.
Een ander aspect dat in deze masterproef binnen GORE geïntegreerd werd is het beslissingsproces.
Er werd voorgesteld om binnen GORE manieren te vinden om elke stap van dit beslissingsproces te
92
koppelen aan een aspect van GORE. Belangrijk hierbij is de integratie van AHP en ANP. AHP werd in
detail uitgewerkt en ook gebruikt voor de uitwerking van het voorbeeld. De werking van ANP
verloopt grotendeels op een identieke manier maar toch zijn er enkele struikelblokken bij een
eventuele integratie van ANP. Zo zou het volgens ons bij ANP nodig zijn om de bijdragen en de
prioriteiten te integreren in één waarde en zou het eveneens moeilijker zijn om negatieve bijdrages
mee in rekening te brengen. Omdat we deze opsplitsing belangrijk vinden tijdens de evaluatie,
hebben we ervoor gekozen om alleen AHP in detail uit te werken. In de toekomst is het misschien
wel interessant om ANP ook verder uit te werken omdat ANP ook toegepast kan worden op softgoal
models die behoren tot de vermelde netwerkstructuur.
Als laatste element wouden we de aandacht vestigen op de sensitiviteitsanalyse en de
groepsbesluitvorming. Dit zijn twee elementen die we toch belangrijk vinden binnen het
beslissingsproces en we hebben deze daarom ook kort toegelicht. In toekomstige werken zouden
deze elementen eveneens meer in detail uitgewerkt kunnen worden en zouden deze elementen,
vooral de laatste, concreet toegepast kunnen worden op een voorbeeld of een casestudie.
93
14 Lijst met referenties
Akao, Y. (1990). Quality Function Deployment QFD: Integrating Customer Requirements into Product DesignNo Title. 1990.
Alencar, F., Castro, J., Cysneiros, G., & Mylopoulos, J. (2000). From Early Requirements Modeled by i* Technique to Later Requirements Modeled in Precise UML, 92-109. Retrieved from http://www.inf.puc-rio.br/~wer/WERpapers/artigos/artigos_WER00/alencar.pdf
Amyot, D., Ghanavati, S., Horkoff, J., Mussbacher, G., Peyton, L., & Yu, E. (2010). Evaluating goal models within the goal-oriented requirement language. International Journal of Intelligent Systems, 25(8), 841–877. Wiley Online Library. Retrieved from http://onlinelibrary.wiley.com/doi/10.1002/int.20433/full
BPMSG. (2011a). AHP/ANP Practical Application with Pros and Cons. Retrieved a from http://www.youtube.com/watch?v=ydKGNb4bgYY&feature=relmfu
BPMSG. (2011b). Analytic Network Process ANP - Introduction. Retrieved b from http://www.youtube.com/watch?v=ow-BUs7ojaQ&feature=relmfu
Bernaert Maxime, P. G. (2011). The Quest for Know-How, Know-Why, Know-What and Know-Who: Using KAOS for Enterprise Modelling.
Boehm, B. (1981). Software Engineering Economics.
Bresciani, P., Perini, A., & Giorgini, P. (2004). Tropos: An agent-oriented software development methodology. Agents and Multi-Agent, 203-236. Retrieved from http://www.springerlink.com/index/G757056736223U65.pdf
Call Center Magazine. (2007). The Essential Call Center KPIs ICMI. Retrieved from http://www.icmi.com/Resources/Articles/2007/April/The-Essential-Call-Center-KPIs
Chung, L., & Leite, J. S. do P. (1996). Non-functional requirements in the software development process. Software Quality Journal, 5(4), 285-294. doi:10.1007/BF00209186
Chung, L., Nixon, B. a., & Yu, E. (1996). Dealing with change: An approach using non-functional requirements. Requirements Engineering, 1(4), 238-260. doi:10.1007/BF01587102
Chung, L., Yu, E., & Mylopoulos, J. (2000). Non-Functional Requirements in Software Engineering. Kluwer.
Dardenne, a. (1993, April). Goal-directed requirements acquisition. Science of Computer Programming. doi:10.1016/0167-6423(93)90021-G
David R. Shaffer. (1999). No TitleSocial and Personality Development.
Fickas, S., Ehlhardt, L., Sohlberg, M., & Todis, B. (2000). of Oregon Personal Requirements Engineering. Most, 1-11.
94
Gerevini, A. (2005). Plan constraints and preferences in PDDL3. of Electronics for Automation, University of, 1-12. Retrieved from http://zeus.ing.unibs.it/ia/PDDL2-151003/pddl3-0.ps
Giorgini, P., Kolp, M., Mylopoulos, J., & Pistore, M. (2004). The Tropos Methodology : An Overview. Information Systems Research.
Giorgini, P., Mylopoulos, J., & Nicchiarelli, E. (2003). Reasoning with goal models. Retrieved from http://www.springerlink.com/index/QHQMUNBL100Y6UPM.pdf
Hansson, S. O. (2005). Decision Theory, 1-94.
Haumer, P., Pohl, K., Weidenhaupt, K., & V, L. I. (1998). Requirements Elicitation and Validation with Real World Scenes by Requirements Elicitation and Validation with Real World Scenes. Scenario, 24(12), 1-29.
Horkoff, J. . (2006). An Evaluation Algorithm for the i* Framework. University of Toronto.
Horkoff, J., & Yu, E. (2009). Evaluating Goal Achievement in Enterprise Modeling – An Interactive Procedure and Experiences. Ifip International Federation For Information Processing, 145-160.
Horkoff, J., & Yu, E. (2011). Analyzing Goal Models – Different Approaches and How to Choose Among Them. Simulation.
Hui, B., & Liaskos, S. (2003). Requirements analysis for customizable software: A goals-skills-preferences framework. Requirements Engineering, 117–126. IEEE. Retrieved from http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1232743
ISO/IEC 9126. (2001). Software engineering -- Product quality -- Part 1: Quality model, 2001.
Kavakli, E. (2002). Goal-oriented requirements engineering: A unifying framework. Requirements Engineering, 0-34. Retrieved from http://www.springerlink.com/index/ddgjljmdq6ed4t02.pdf
Kiker, G. a, Bridges, T. S., Varghese, A., Seager, P. T. P., & Linkov, I. (2005). Application of multicriteria decision analysis in environmental decision making. Integrated environmental assessment and management, 1(2), 95-108. Retrieved from http://www.ncbi.nlm.nih.gov/pubmed/16639891
Labib, A. I. and A. (2009). Analytic Hierarchy Process and Expert Choice: Benefits and Limitations, 22(4).
Lamsweerde, A. V. (2000). Requirements engineering in the year 00: A research perspective. international conference on Software engineering, 5-19. Acm. doi:10.1109/ICSE.2000.870392
Lamsweerde, A. V. (2001). Goal-oriented requirements engineering: A guided tour. Requirements Engineering, 2001., 249-262. IEEE Comput. Soc. doi:10.1109/ISRE.2001.948567
Lamsweerde, A. V. (2003). From System Goals to Software Architecture. Methods.
Lamsweerde, V., Darimont, R., & Letier, E. (1998). Managing conflicts in goal-driven requirements engineering. IEEE Transactions on Software Engineering, 24(11), 908-926. doi:10.1109/32.730542
95
Lamsweerde, V., & Letier, E. (2004). From object orientation to goal orientation: A paradigm shift for requirements engineering. Radical Innovations of Software and Systems Engineering in the Future, (I), 153–166. Springer. Retrieved from http://www.springerlink.com/index/6UY8D9WKWBMVRJC1.pdf
Lamsweerde, V., & Willemet, L. (1998). Inferring declarative requirements specifications from operational scenarios. IEEE Transactions on Software Engineering, 24(12), 1089-1114. doi:10.1109/32.738341
Lapouchnian, A. (2005). Goal-Oriented Requirements Engineering : An Overview of the Current Research by. Requirements Engineering.
Lapouchnian, A. (2011). Exploiting Requirements Variability for Software Customization and Adaptation by. Science.
Letier, E., & van Lamsweerde, A. (2004). Reasoning about partial goal satisfaction for requirements and design engineering. ACM SIGSOFT Software Engineering Notes, 29(6), 53. doi:10.1145/1041685.1029905
Liaskos, S., Mcilraith, S. A., Sohrabi, S., & Mylopoulos, J. (2010). Integrating Preferences into Goal Models for Requirements Engineering. Secretary.
Liaskos, S., Mcilraith, S. A., Sohrabi, S., & Mylopoulos, J. (2011). Representing and reasoning about preferences in requirements engineering. Requirements Engineering, 227-249. doi:10.1007/s00766-011-0129-9
Loucopoulos, P., & Karakostas, V. (1995). System Requirements Engineering (p. 160). McGraw-Hill, Inc. New York, NY, USA ©1995.
Ma, W., Liu, L., Xie, H., Zhang, H., & Yin, J. (2009). Preference Model Driven Services Selection, 216-230.
Moody James. (2004). Categorizing Non-Functional Requirements Using a Hierarchy in UML. Chemistry & Retrieved from http://onlinelibrary.wiley.com/doi/10.1002/cbdv.200490137/abstract
Mylopoulos, J. (1992). Conceptual Modelling and Telos 1. Information Systems Journal, 49–68. Citeseer. Retrieved from http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.3647&rep=rep1&type=pdf
Mylopoulos, J., Chung, L., & Nixon, B. (1992). Representing and Using Non-Functional Requirements : A Process-Oriented Approach Abstract 1 Introduction, 1-23.
Nilsson, N. J. (1971). Problem-solving methods in artificial intelligence (p. 255).
Nuseibeh, B. (2000). Requirements engineering: a roadmap. on the Future of Software Engineering. Retrieved from http://dl.acm.org/citation.cfm?id=336523
Objectiver. (2007). A KAOS tutorial. Retrieved from http://www.objectiver.com/fileadmin/download/documents/KaosTutorial.pdf
96
Penumbra. (n.d.). The stakeholder Ecosystem. Retrieved from http://www.penumbraconsulting.com/services/research-and-insight/understanding-stakeholders.asp
Reed, S. (2000). Cognition: Theory and applications.
Robinson, W. N. (1990). Negotiation Behavior During Requirement Specification. on Software Engineering, IEEE Computer Society (pp. 268-276).
SMART Goal Setting. (2010). Retrieved from http://www.goal-setting-guide.com/goal-setting-tutorials/smart-goal-setting
Saaty, T. L. (1990). How to make a decision : The Analytic Hierarchy Process. European Journal Of Operational Research, 48.
Saaty, T. L. (2008). Decision making with the analytic hierarchy process. International Journal of Services Sciences, 1(1). Retrieved from http://inderscience.metapress.com/index/02t637305v6g65n8.pdf
Schreyer, M., & Bögl, M. (2009). A MODEL-BASED DESIGN APPROACH WITH THE FOCUS ON ENERGY Jutta Schade, Thomas Olofsson (Luleå University of Technology) and Marcus Schreyer (Max Bögl), (June), 10-12.
Schreyer, M., Bögl, M., Benning, P., Ryd, N., & Forum, C. (2010). A Smart Decision Making Framework for Building Information Models, (January).
Sebastiani, R., Giorgini, P., & Mylopoulos, J. (2004). Simple and Minimum-Cost Satisfiability for Goal ModelsWe thank Maddalena Garzetti for sharing with us a version of her goal model for the Trentino Public Transportation Service, and Paolo Liberatore for helping us with the Minweight solver. The first. Advanced Information Systems Engineering (pp. 675–693). Springer. Retrieved from http://www.springerlink.com/index/KLLXAMYQBW61NPXQ.pdf
Shahin, A., & Mahbod, M. A. (2007). Prioritization of key performance indicators: An integration of analytical hierarchy process and goal setting. International Journal of Productivity and Performance Management, 56(3), 226-240. doi:10.1108/17410400710731437
Ssebuggwawo Denis, Hoppenbrouwers Stijn, P. E. (2009). Evaluating Modeling Sessions using the analytical Hierarchy Process (AHP).
Vliet, H. V., & Brinkkemper, S. (2002). Requirements Engineering. Requirements Engineering.
Yu, E. (1995). MODELLING STRATEGIC RELATIONSHIPS FOR PROCESS REENGINEERING. Computer.
Yu, E. (1997). Towards modelling and reasoning support for early-phase requirements engineering. Requirements Engineering, 1997., Proceedings of, 226-235. IEEE Comput. Soc. Press. doi:10.1109/ISRE.1997.566873
Yu, E. (2011). Modeling strategic relationships for process reengineering. Social Modeling for Requirements Engineering, 11. Mit Pr. Retrieved from http://books.google.com/books?hl=en&lr=&id=ceNA3l1jOeAC&oi=fnd&pg
97
=PA11&dq=Modeling+Strategic+relationships+for+process+engineering&ots=gFhCMv10W8&sig=7ot6LWPLJCUDq9By6g8qNNKr24w
Yue, K. (1987). What Does It Mean to Say that a Specification is Complete? Fourth International Workshop on Software Specification and Design. Monterey.
Zave, P. (1997). Classification of research efforts in requirements engineering. ACM Computing Surveys, 29(4), 315-321. doi:10.1145/267580.267581
98
15 Appendix
15. 1. AHP voor “Comfortable to Use”, “Anonimity” en “Immediacy” t.o.v. “ Get Effective Help”
15.1.1. Vergelijkingsmatrix:
15.1.2. Uitwerking:
15.1.3. Bekomen Prioriteiten:
Get effective help Comfortable to use Anonimity Immediacy
Comfortable to use 1 2 0,33
Anonimity 0,5 1 0,25
Immediacy 3 4 1
1ste iteratie
(Get eff help)² C A I Som Prioriteiten
C 2,99 5,32 1,16 9,47 0,24
A 1,75 3 0,67 5,415 0,14
I 8 14 2,99 24,99 0,63
39,875 1,00
2de iteratie:
((Get eff help)²)² C A I Som Prioriteiten
C 27,5301 48,1068 10,47 86,1115 0,24
A 15,8025 27,62 6,01 49,43585 0,14
I 72,34 126,42 27,5301 226,2901 0,63
361,8375 1,00
3de iteratie
(((Get eff help)²)²)² C A I Som Prioriteiten
C 2275,847 3977,293763 866,0166 7119,157 0,24
A 1306,515 2.283 497,1617 4086,957 0,14
I 5980,807 10452,12155 2275,847 18708,78 0,63
29914,89 1,00
Softgoal Prioriteiten
Comfortable to use 0,24
Anonimity 0,14
Immediacy 0,62