MCTL - Managing Computer Technology Library



Vergelijkbare documenten
Taakgebied Bepalen huidige bedrijfsprocessen

Taakcluster Operationeel support

Bepalen toekomstige computertechnologie

Managing Computer Technology Library Aanpassingen v1.1 versus v1.0

De wereld is een schouwtoneel, elk speelt zijn rol en krijgt zijn deel (Joost van den Vondel) Hoofdstuk 4. Rolbeschrijvingen

Continuous Requirements Engineering

Last but not least. Hoofdstuk 35. Bijlagen

Taakgebied realisatie

Kwaliteitsbewaking en testen in ICT beheerorganisaties

Alles wat ik nodig heb om een komedie te maken is een park, een politieagent en een mooi meisje (Charlie Chaplin) Hoofdstuk 2.

Taakcluster Tactisch support

ORGANISATORISCHE IMPLENTATIE BEST VALUE

Verschillen in QA aanpak tussen ERP projecten en niet-erp projecten

MCTL - Managing Computer Technology Library

De wereld is een schouwtoneel, elk speelt zijn rol en krijgt zijn deel (Joost van den Vondel) Hoofdstuk 4. Rolbeschrijvingen

Incore Solutions Learning By Doing

Procesmanagement. Waarom processen beschrijven. Algra Consult

Projectvoorstellen maken

Taakcluster Strategisch support

white paper 2 Selectie ehrm oplossing: Hoe kom ik tot de juiste keuze?

Archimate risico extensies modelleren

UML. From weblog Dennis Snippert

ABN AMRO Verzekeringen Project: Documentbeheer Verzekeringen

Olde Bijvank Advies Organisatieontwikkeling & Managementcontrol. Datum: dd-mm-jj

E-resultaat aanpak. Meer aanvragen en verkopen door uw online klant centraal te stellen

Management. Analyse Sourcing Management

Managing Computer Technology Library

Whitepaper. Outsourcing. Uitbesteden ICT: Wat, waarom, aan wie en hoe? 1/6.

Scrum. Een introductie

QUICK SCAN KWALITEITSZORG VRIJWILLIGERS ORGANISATIES (ZELFEVALUATIE)

Handout. Hoe testers de kwaliteit van requirements kunnen beïnvloeden. Slechte requirements zijn overal. Testnet thema-avond Requirements.

Conclusie: voor elke organisatie die dit nastreeft is het goed besturen en beheersen van de bedrijfsprocessen

In deze appendix wordt bekeken wat er moet gebeuren voordat

Als je blijft denken zoals je altijd hebt gedacht, blijf je krijgen wat je altijd hebt gekregen. Hoofdstuk 1: Inleiding

Duurzaam Product. Ecodesign methode van Tischner

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

Dr. Projects Management B.V.

Studielink Dashboard terugbrengen beheerskosten Studielink bij zowel instellingen, DUO als Studielink. SISLINK juni 2010

BDD/Gherkin. Een introductie

Verzamelde vragen en antwoorden Agile Applicatie ontwikkeling. Agile Methodiek en Technologie. Zest Application Professionals

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

case: toestandsdiagrammen

Ontwikkelmethoden en technieken. Ontwikkelmethoden & Technieken HC 2

Business Sprint LOOT-scholen en Zo.Leer.Ik in kader van project Leerling Door Madelief Keyser en Michael van Wetering

Ant: B Dit is het doel van het proces.

bedrijfsprocessen en vormt daarmee de kapstok voor de producten van andere disciplines. Het PAM is geen RUP concept.

Rapportage Pizzasessie Functioneel-beheer.com Specialisten Managers Adviseurs Algemeen functioneel beheer applicatiebeheer informatiemanagement

Agile werken: zó doen we dat

Proactief en voorspellend beheer Beheer kan effi ciënter en met hogere kwaliteit

Inge Test

De Agile Analist. Ebook over requirements en agile. Deel I

Inhoudsopgave. Bewust willen en kunnen 4. Performance Support 5. Informele organisatie 5. Waarom is het zo moeilijk? 6

Resultaatgericht werken

Rapport over het werkprofiel van Software engineer (sr)

Handleiding Migratie. Bronboek Professional

GAMP Toegepast op de DeskTopXorter Besturing DeskTopXorter

Van Samenhang naar Verbinding

WHITEPAPER IN 5 MINUTEN. 11. Scrum

De Budget Ster: omgaan met je schulden

Methodiek. Versie: 16/05/ :42:35

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

Business case: Fieldservice Management bij Danwood

6. Project management

Unified Modeling Language ACTIVITY DIAGRAMS

Secretariaat: ECP Postbus AG Leidschendam INHOUD

E-book. In 7 stappen naar een effectieve HR-cyclus

Business Scenario. Voorbeeld Archimate Risico Extensie. versie 0.1. Bert Dingemans

In een keten gaat het om de verbindingen, niet om de schakels.

Van Bragt Informatiemanagement

De controller met ICT competenties

Plan van aanpak. Website voor Bouwkundig Adviesbureau Punte. Hugo Nijhuis John Oelen Frank Hazekamp Cindy Roelofs Ben Wilbers Tim Regelink

Praktijkinstructie Oriëntatie op de informatie-analyse 4 (CIN08.4/CREBO:50131)

Rapport Kwaliteit- & Projectmanagement 360. Test Kandidaat

Business Sprint in kader van project Leerling Door Madelief Keyser

Software Test Plan. Yannick Verschueren

Hoe ver moet je gaan?

Architectuurredeneermodel Afgewogen keuzes maken

Testomgevingen beheer

Introductie stakeholdermanagement. SYSQA B.V. Almere

Case study. Verhoog je werkkapitaal: tips voor goed debiteurenbeheer

Portal Planning Process

Service Garantie. Inhoudsopgave. Versie 1.2. November 2016

Persoonlijk opleiding plan

Subwerkgroep Methoden. Toelichting inhoud en voortgang tot nu toe

Als je snel wilt gaan, ga alleen. Als je ver wilt komen, ga dan samen (Afrikaans spreekwoord) Hoofdstuk 20. Contractmanagement

case: use-case-diagram

Wanneer ga je Agile? Wat is Agile Project Management?

Transcriptie:

13. TAAKGEBIED REQUIREMENTS MANAGEMENT Aan de gebruikerszijde moet vanzelfsprekend een beschrijving zijn van de bedrijfsprocessen en de inzet van computertechnologie hierbinnen. In het geval van een wijziging wordt op basis van de huidige beschrijvingen een gedetailleerde uitwerking gemaakt van de veranderingen die dit teweeg brengt, zowel in de bedrijfsprocessen als in de gebruikte computertechnologie. De term requirements is overigens in de praktijk een wat verwarrende term. Immers, we hebben te maken met 1) een bestaande situatie, en daarnaast met 2) een of andere behoefte aan verandering. Het huidige systeem is ontstaan door de invulling van eerdere behoeften. Aldus zijn requirements te splitsen in reeds gerealiseerde requirements en nog te realiseren requirements. De nog te realiseren requirements vormen natuurlijk hier het kernpunt. De huidige situatie vormt echter wel het uitgangspunt en verdient daarom ook de nodige aandacht: De set gerealiseerde requirements is wel te zien als de baseline waarop verder kan worden gebouwd. ACHTERGROND Op het moment dat het gaat om specificeren en ontwerpen, dan blijkt dat op het gebied van computertechnologie de invloed die leveranciers vanouds hebben gehad, nog steeds groot is. De manier waarop wordt gespecificeerd, heeft een opvallend hoog abstractieniveau. Erger nog is dat specificaties en ontwerpen vaak wel goed aansluiten op de wijze waarop binnen infra en applicatie support en leveranciers de realisatie ter hand wordt genomen, maar heel slecht aansluiten op de belevingswereld van de gebruikers. Met als consequentie: gebruikers doorgronden specificaties en ontwerpen nogal eens onvoldoende en dat leidt later tot teleurstellende resultaten. In dit taakgebied wordt uitgegaan van een manier van specificeren (opstellen en bijwerken requirements) die is gebaseerd op concrete, herkenbare bedrijfsprocessen in de gebruikersorganisatie. De uitwerking is dusdanig dat iedere gebruiker en iedere manager het moet kunnen begrijpen, beoordelen en met feedback kan komen om de requirements te verbeteren. Een te prefereren werkwijze is dat de specificaties in een groep gezamenlijk worden gemaakt en bijgewerkt. DOEL VAN DIT TAAKGEBIED Het doel van het taakgebied Requirements management is zorgen voor de juiste beschrijving van de (nog niet gerealiseerde) behoeften van de gebruikers. V1.0 Pagina 1

Juist betekent hier: volledig, voldoende specifiek, in voor gebruikers begrijpelijke taal en schema's, actueel en gevalideerd. Het dient bij een wijziging duidelijk te zijn wat het uitgangspunt is (de baseline), en waar de requirements welke consequenties tot gevolg hebben. AANPAK: WATERVAL, INCREMENTEEL EN/OF ITERATIEF? Een vraag die al lang bestaat, en waar wellicht nooit een definitief antwoord op komt, is de vraag welke aanpak de meest wenselijke is. In het verleden was het waterval-model de dominante aanpak. Daarbij worden alle fasen van ontwikkeling, bouw, test en inproductiename strikt achtereenvolgens doorlopen, als in een waterval. Hoewel het een heldere aanpak is, is het belangrijkste knelpunt dat al helemaal in het begin de requirements geheel, en heel gedetailleerd, duidelijk moeten zijn. Dat blijkt in de praktijk vaak een probleem. Vandaar dat alternatieven zijn opgekomen, waarvan de incrementele en iteratieve de meest bekende zijn. Toch is het niet zo dat het waterval-model bij het vuilnis kan worden gezet. Indien vanaf het allereerste begin precies duidelijk is wat de requirements zijn, en dat de kans op tussentijdse wijziging heel klein is, is het een te prefereren werkwijze. Vooral bij volwassen systemen kan dat het geval zijn. De incrementele en iteratieve aanpak worden tegenwoordig vaak gebruikt. Bij de incrementele aanpak wordt eerst een deel ( increment ) van een systeem gebouwd of aangepast. Daarna wordt het volgende onderdeel gemaakt, enzovoort. Logischerwijs wordt doorgaans gestart met de kern van een systeem, waarna in de loop van de tijd onderdelen aan de randen van de kern worden toegevoegd. Ook in geval van aanpassingen kan een identieke werkwijze worden gevolgd. Bij de iteratieve aanpak wordt een onderdeel gebouwd zodat daarop feedback mogelijk is. Aan de hand van de feedback worden aanpassingen / uitbreidingen gedaan, net zo lang tot de behoefte voldoende is afgedekt of de tijd / het budget op is. De focus bij een iteratieve aanpak is doorgaans dat alles wat wordt gedaan uiteindelijk business value oplevert. Binnen MCTL zijn zowel een werkwijze conform het waterval-model, als de incrementele als de iteratieve aanpak mogelijk. Zelfs is het mogelijk afwisselend, afhankelijk van de situatie, de ene of andere aanpak te kiezen. SAMENWERKING MET IN- EN EXTERNE CT-LEVERANCIERS Bij requirements management staat de behoefte centraal. Toch wordt er hier vanuit gegaan dat niet alleen functionele mensen aan het werk zijn, maar ook personen afkomstig van de infra en applicatie support en leveranciers. Het is de bedoeling dat direct met het achterhalen en uitwerken van de requirements een toets wordt gedaan op technische haalbaarheid. Van infra en applicatie support en leveranciers wordt verwacht dat zij meedenken over de best mogelijke oplossingen. Zou dat pas later worden gedaan, dan is het gevaar heel groot dat er diverse behoeftes in kaart worden gebracht, tezamen met een oplossingsrichting, die later niet-realiseerbaar blijkt. Het strikt scheiden van behoeften en oplossingen werkt op die manier teleurstellingen in de hand. Natuurlijk moet de nadruk in requirements management wel liggen op het achterhalen en beschrijven van de behoeften, maar een directe link met de realisatie-kant is hier van belang. Ook een directe inschatting van de consequenties van bepaalde oplossingsrichtingen kan helpen om betere keuzes te maken. V1.0 Pagina 2

Van leveranciers mag op functioneel gebied het nodige meedenken worden verwacht. Immers, leveranciers werken voor meer klanten en hebben dus ervaring met diverse behoeften en de invulling daarvan. Aldus kan een elders reeds gerealiseerde oplossing soms ook een heel goede oplossing blijken te zijn voor de ontstane behoeften in de eigen organisatie. REQUIREMENTS MANAGEMENT BIJ STANDAARD COMPONENTEN Zoals ook in hoofdstuk 3 bij uitgangspunt 6 van MCTL verwoord, gaat MCTL uit van het werken met standaard componenten: hardware, databases, maar vooral ook software. De vraag doemt dan op in hoeverre het nog zinvol is om behoeften te inventariseren en uit te werken. Immers, standaard componenten bieden een vaststaande functionaliteit, en je kunt wensen wat je wilt, daar ben je dan toch aan gebonden. Echter: 1. Standaard componenten hebben op zichzelf vaak een vaststaande functionaliteit. Echter, de invulling van een behoefte wordt (vrijwel) altijd gedaan door een combinatie van meerdere standaard componenten, en juist een slimme keuze hierin kan de behoefte beter of minder goed invullen 2. Standaard componenten zijn steeds vaker instelbaar (voorzien van parameters, configureerbaar), en dus beter aan te passen aan de behoeften 3. Standaard componenten kunnen zijn voorzien van faciliteiten die vrij zijn te gebruiken, bijvoorbeeld bepaalde vrij te gebruiken velden 4. Er bestaat op software gebied veel standaard software specifiek voor een bepaald gebied, bijv. onderwijs, overheid (gemeenten) of de gezondheidszorg. Daar is het wel degelijk mogelijk de geboden functionaliteit te beïnvloeden, vaak via gebruikersgroepen. En daarnaast: leveranciers van standaard componenten hebben er ook belang bij dat de componenten zo goed mogelijk aansluiten bij de behoeften. Via individueel contact, maar vaak ook via de reeds genoemde gebruikersgroepen, is het mogelijk behoeften aan de leveranciers door te geven. De kans is niet gering dat deze wensen op enig moment in een nieuwe versie van het standaard component worden ingevuld. BEPALING SCOPE Binnen Requirements management wordt uitgegaan van bedrijfs- / bedrijfsprocessen en de precies juiste invulling van computertechnologie daarbinnen. Echter, het is mogelijk de scope breder te trekken. Door alle relevante bedrijfsvoeringselementen te betrekken ontstaat een vollediger model. Een manier om dat te realiseren is door te werken met COPAFIJTH, wat staat voor: Commercie & Communicatie Organisatie Personeel Administratieve organisatie Financiën Informatievoorziening Juridisch Technologie V1.0 Pagina 3

Huisvesting Binnen MCTL wordt de scope niet zo breed getrokken, daar ligt de nadruk op de I en T uit het COPAFIJTH-model. ONDERSCHEID BUSINESS REQUIREMENTS EN GEBRUIKERS REQUIREMENTS Er wordt wel onderscheid gemaakt in twee soorten requirements: 1. Business requirements, waarbij vanuit de business behoefte wordt gekeken 2. Gebruikers (user) requirements, waarbij logischerwijs vanuit de gebruikers wordt gekeken Hoewel gebruikers gewoon onderdeel zijn van de business, bestaat er in de praktijk wel een verschil in abstractie- en detailleringsniveau. Toch is het onderscheid vaak moeilijk te maken in de uitwerking, en daarom wordt binnen MCTL geen principieel onderscheid gemaakt tussen deze twee soorten. In de prioriteitenlijst is echter wel terug te zien dat requirements die een algemene behoefte in de business verwoorden doorgaans een hogere prioriteit krijgen dan requirements van individuele gebruikers of (kleine) gebruikersgroep. HOE WEET JE DAT HET DOEL IS BEREIKT? De volgende indicatoren zijn te benoemen om te weten of bovenstaande doel wordt bereikt: De requirements zijn zo gespecificeerd dat elke key-user en manager deze kan begrijpen en beoordelen De requirements zijn eenduidig beschreven De requirements zijn gelaagd opgebouwd en de lagen sluiten op elkaar aan (verticale samenhang) De requirements in elke laag sluiten op elkaar aan; er zitten geen gaten tussen de verschillende requirements en evenmin is er sprake van overlap (horizontale samenhang) De requirements zijn zo gespecificeerd dat het mogelijk is op basis hiervan het ontwerp van een concreet systeem of onderdeel van een systeem is te maken of aan te passen De requirements zijn zo gespecificeerd dat het mogelijk is op basis hiervan een concreet systeem of onderdeel van een systeem is te testen De requirements zijn just-in-time: ze zijn niet te lang van te voren uitgewerkt (met het risico dat ze daarna vaak moeten worden aangepast), maar precies op tijd, zodat ook precies op tijd met het ontwerp en de realisatie kan worden gestart Just enough: er zijn niet meer requirements uitgewerkt dan in de beschikbare ontwerp- en realisatietijd verwerkt kunnen worden INPUT, ACTIVITEITEN, OUTPUT De activiteiten in dit taakgebied zijn als volgt schematisch weer te geven: V1.0 Pagina 4

Samengevat komen de activiteiten op het volgende neer: 1. Voorbereiding omvat de controle op de volledigheid van de uitgangssituatie en het vaststellen van de scope 2. Eliciteren omvat het achterhalen van impliciete en expliciete behoeften van belanghebbenden 3. Analyseren is het onderzoeken van de gevonden behoeften op volledigheid, juistheid, onderlinge consistentie, mogelijke impact op andere systeemonderdelen, risico s en haalbaarheid 4. Specificeren omvat de daarop volgende gedetailleerde vastlegging van de geconstateerde behoeften zodanig dat alle belanghebbenden deze eenduidig kunnen begrijpen en gebruiken 5. Valideren omvat als laatste activiteit het vaststellen of de requirements (gespecificeerde behoeften) voldoen aan de behoeften van de business, realiseerbaar zijn en voldoen aan alle daaraan te stellen (kwaliteits-)eisen. Logischerwijs wordt gestart met een voorbereiding. Daarna volgt de eerste elicitatie, waarna analyse en specificatie volgen. Echter, deze activiteiten worden niet lineair doorlopen: al tijdens de elicitatie wordt een specificatie opgesteld en ook de analyse wordt al tijdens de elicitatie gedaan. Tot slot wordt dit proces afgerond met de validatie. De activiteiten worden hierna uitgewerkt. ACTIVITEIT: VOORBEREIDING Voor de start van de elicitatie is het noodzakelijk eerst de huidige situatie helder en voldoende gedetailleerd in beeld te hebben. Dat voorkomt tijdverlies en ook verwarring of items die aan de orde komen tijdens de elicitatie, feitelijk al gerealiseerde requirements zijn of dat het een nieuwe behoefte betreft. Praktijk is dat dat voor gebruikers nogal eens door elkaar loopt. Indien de requirements engineer zelf geen scherp onderscheid kan maken, wordt de elicitatie een gecompliceerde en verwarrende activiteit, die pas na veel pijn en moeite tot een goed einde zal komen. Daarnaast moet de scope worden vastgesteld. Niet zelden wordt in de loop van het opstellen van de requirements meer en meer toegevoegd. Het staat bekend onder de beruchte naam scope-creep. Het kan ook verderop in het wijzigingstraject opspelen, maar hier al van start gaan. Door een goede afbakening wordt het hier in de greep gehouden. V1.0 Pagina 5

Ook zullen voor de start alle reeds beschikbare brondocumenten moeten worden verzameld en bestudeerd. Behalve voor het bestaande systeem geldt dit ook voor de wijzigingsbehoefte zelf. Is er bijvoorbeeld een aanpassing in het systeem noodzakelijk vanwege een wetswijziging, dan zijn uiteraard alle gegevens van die wetswijziging van belang. Welke wijze u ook kiest om de huidige situatie helder, volledig en voldoende gedetailleerd in beeld te krijgen, er zijn altijd de meer ervaren werknemers benodigd, die niet alleen de gewone loop van de werkzaamheden kunnen aangegeven maar ook de uitzonderingen. Vandaar dat key-users in dit stadium een belangrijke rol kunnen spelen. ACTIVITEIT: ELICITATIE Elicitatie omvat het achterhalen van requirements bij alle belanghebbenden. Het is daarmee het inhoudelijke startpunt van requirements management. Elicitatietechniek 1: Observatie Het observeren van medewerkers in de eigen werksituatie is een onovertroffen, maar wel intensieve, manier om te achterhalen of het beeld van de huidige werkwijze klopt en waar precies wijzigingen zijn gewenst. Er kan ook al een eerste toetsing plaatsvinden van de gevolgen van een wijziging. Observatie vergt een nauwgezette voorbereiding. Medewerkers onvoorbereid confronteren met een of meer personen die indringend het werk in ogenschouw komen nemen, kan bijzonder onaangenaam overkomen. Aan de andere kant, teveel informatie vooraf verstrekken kan er weer toe leiden dat mensen niet meer onbevangen het werk doen zoals ze het altijd doen. Hierdoor ontstaat dan bij de observatie geen correct beeld van de huidige realiteit. Om te voorkomen dat veel zaken moeten worden gevraagd tijdens het werk, en daardoor bedrijfsprocessen niet meer lopen zoals ze normaal gesproken lopen, kan worden afgesproken dat zoveel mogelijk met camera wordt opgenomen. Bij het later afspelen kan dan per onderdeel worden ingezoomd op de details. Na de observatie kan een uitwerking worden gemaakt waarin zowel de huidige situatie als de gewenste aanpassingen zijn weergegeven. Indien beschikbaar kan gebruik worden gemaakt van eerdere uitwerkingen. De uitwerking moet dusdanig zijn dat iedereen die bij de observatie is betrokken, dus met name ook de geobserveerden zelf, deze uitwerking kunnen begrijpen en beoordelen op volledigheid en juistheid. Elicitatietechniek 2: Het interview Interviewen van betrokkenen van alle relevante partijen kan ertoe bijdragen dat de wijzigingswens gedetailleerd kan worden uitgewerkt. Interviewen is een techniek die vaak wordt toegepast en kan absoluut goede resultaten opleveren mits de interviewer over de juiste vaardigheden beschikt. Enkele van de valkuilen zijn dat de interviewer allerlei antwoorden bij de geïnterviewde in de mond legt, suggestieve vragen stelt of niet voldoende doorvraagt. Ook het maken van onderscheid tussen de huidige situatie, de wijzigingswensen en de mogelijke oplossingen is van groot belang. Nogal eens wordt tijdens de interviews uitgebreid doorgepraat over de naar het idee van de geïnterviewde beste oplossing, terwijl de interviewer alleen maar de behoefte boven water moet zien te krijgen. V1.0 Pagina 6

Een aardig voorbeeld van hoe je als interviewer volstrekt op het verkeerde been kan worden gezet is de song "Sour Times van Portishead, uit 2007. Op een zeker moment zingt Beth Gibbons: Nobody loves me, it s true Triest toch? Laat het een moment op u inwerken voordat u het schuingedrukte hieronder verder leest. (De songtekst vervolgt namelijk met: not like you do. Je zult maar niet hebben doorgevraagd. ) Elicitatietechniek 3: Simulatie / prototype Op het moment dat observatie te belastend is voor het productieproces en de medewerkers daarbinnen, en er twijfel bestaat of via interviews een werkelijk juist en volledig beeld ontstaat van de werkelijke, huidige gang van zaken, kan een simulatie worden gedaan. In een aparte ruimte wordt daartoe een opstelling gemaakt waarin het bedrijfsproces zo realistisch mogelijk wordt nagebootst. Een simulatie kan uiteraard ook worden gebruikt om de resultaten van het observeren of interviewen te controleren op juistheid en volledigheid. Behalve om duidelijk te krijgen hoe de huidige werkwijze is, kan simulatie ook heel goed worden ingezet om de wijzigingen in de werkwijze te doorlopen. Op deze manier wordt op vrij natuurlijke wijze de nieuwe werkwijze geïntroduceerd en wordt meer zekerheid verkregen dat er geen zaken over het hoofd zijn gezien. Bij werkzaamheden die veel interactie met computerschermen vergen, kan het ook nuttig zijn een storyboard te maken: V1.0 Pagina 7

Bron: Wikipedia Een storyboard bestaat uit een aantal opeenvolgende afbeeldingen op papier of een computerscherm. Ze zijn vrij statisch: de acties worden er mondeling bij verteld. Zodra redelijk zicht is op hoe een en ander zou zijn, is een prototype te maken waarin ook een aantal acties zijn te simuleren. Valkuilen van het werken met prototypes zijn: 1. Er wordt te snel naar één mogelijke werkwijze toegewerkt 2. De uitgangssituatie is nog zo weinig duidelijk dat voortdurend aanpassingen moeten plaatsvinden om de uitgangssituatie in de simulatie / het prototype te krijgen, waardoor te weinig tijd over blijft voor de gewenste aanpassingen 3. Op het moment dat het prototype van de gewenste situatie af is, lijkt het voor sommigen of het ook al werkelijk snel de productiesituatie kan zijn; het is er immers toch al? De werkelijke aanpassing en inproductiename kan nog heel wat moeite en tijd kan kosten. Het prototype is niets meer is dan het woord al aangeeft en wordt dus uiteindelijk weggegooid, maar dat wordt wel eens vergeten.. Prioriteitsstelling Elke behoefte kent een bepaalde urgentie. Vaak komt deze urgentie al tijdens het elicitatieproces ter sprake, en het is aan te bevelen deze urgentie ook te noteren. En wel in relatieve zin: dus hoe de urgentie van de ene behoefte zich verhoudt tot de urgentie van een andere behoefte. Een indeling in prioriteiten met een bepaalde nummering (bijv. 1 tot 5, waarbij een prio-1 de hoogste prioriteit heeft), heeft op dit moment nog geen zin en heeft het gevaar dat veel behoeften met eenzelfde, en vaak (te) V1.0 Pagina 8

hoge prioriteit worden ingeschat. De definitieve vaststelling van de prioriteit vindt later plaats, maar een eerste inschatting op dit moment kan een goede basis vormen voor die latere vaststelling. Een lijst met bovenaan de meest urgente behoefte, en dan aflopend tot onderaan de minst urgente, kan op dit moment al ruimschoots voldoende helderheid verschaffen. ACTIVITEIT: ANALYSE Analyse is de activiteit waar de gevonden behoeften worden onderzocht op volledigheid, juistheid, onderlinge consistentie, mogelijke impact op andere systeemonderdelen, risico s en haalbaarheid. Impactanalyse Van elke behoefte moet niet alleen via elicitatie helder worden wat dit nu precies omvat, maar ook wat de gevolgen zijn voor andere onderdelen van bedrijfsprocessen / systemen. Daar is door degene die de behoefte aangeeft logischerwijs minder aandacht voor. Ten eerste is het soms al moeilijk het geheel van een bedrijfsproces / systeem met koppelingen naar andere bedrijfsprocessen / systemen (soms ook naar buiten de eigen organisatie), te overzien. Ten tweede kan de impactanalyse ook als gevolg hebben dat de consequenties van een wijziging zo groot blijken te zijn dat wordt afgezien van realisatie. En dat willen sommigen menselijkerwijs niet zien of horen. Is een wijziging eenmaal in gang gezet, zonder dat de consequenties vooraf helemaal duidelijk zijn, dan leert de ervaring dat vaak toch wordt doorgezet. Een te nauwe scope, waardoor min of meer opzettelijk niet alle consequenties vooraf duidelijk worden, kan dus ook een manier zijn om wijzigingen door te drukken. Maar een weinig fraaie dat zal duidelijk zijn. Intern vergelijkbare systemen / bedrijfsprocessen Veel bedrijfsprocessen en systemen zijn helemaal niet uniek. En ook veel wijzigingen zijn dat niet. Toch worden wijzigingen vaak aangepakt of ze wel uniek zijn. In deze fase van de analyse word gekeken of de wijziging zoals deze in de elicitatie tot nu toe is gedefinieerd, niet grote gelijkenissen vertoond met wijzigingen elders in de organisatie. En indien dat het geval is, of er niet het nodige kan worden overgenomen: specificaties, risico s en consequenties. Deze aanpak kan tijd besparen en risico s beperken. Dergelijke interne Best Practices kunnen ook discussies voorkomen als Dat werkt misschien ergens anders, maar bij ons gaat dat niet werken. Benchmarking / externe deskundigheid Veel bedrijven en bedrijfsprocessen zijn slechts uniek op detailniveau. De consequenties hiervan zijn duidelijk te zien in de opkomst van standaard hard- en software. Waarbij de software configureerbaar is, zodat detailverschillen in werkwijzen in de software kunnen worden ingesteld. Dit betekent dat bedrijfsprocessen, en de optimale toepassing van computertechnologie daarbinnen, ook heel goed vergelijkbaar zijn. Doorgaans is dit voor het eigen bedrijf lastig. Voorname oorzaak is dat vergelijkbare bedrijven vaak ook concurrenten zijn, en alleen al om die reden is de neiging om gegevens en ervaringen uit te wisselen op zijn zachtst gezegd niet groot. Daarnaast komt simpele onwil ook vaak voor; bedrijven hebben de neiging zich voor hun bedrijfsprocessen naar binnen te richten in plaats van naar buiten. Het not invented here syndroom doet hier opgeld. V1.0 Pagina 9

Om een en ander te doorbreken kan natuurlijk een beroep worden gedaan op externe leveranciers, met name softwareleveranciers. Die leveren immers een bepaalde set software waarvan ze zelf kennis hebben, en werken vaak in een specifieke branche. Zij kunnen dus als geen ander zien hoe de door hen geleverde software werkelijk overal wordt gebruikt. En daarmee zijn eenvoudige benchmarks te verzamelen waar elk individueel bedrijf zijn voordeel mee kan doen. ACTIVITEIT: SPECIFICATIE: BIJWERKEN BESCHRIJVING BEDRIJFSPROCES Specificeren is de activiteit waarin de wijzigingen gedetailleerd worden uitgewerkt en vastgelegd. Hierna wordt stapsgewijs opgebouwd hoe de specificaties binnen MCTL worden gecreëerd. Hierbij worden overigens de huidige werkwijze en de wensen voor verandering als geheel gezien. Met andere woorden: zowel de reeds gerealiseerde requirements als de nog te realiseren requirements worden hier gespecificeerd. Uiteraard kan gebruik worden gemaakt van eerdere specificaties, waarbij vanzelfsprekend wel moet worden gecontroleerd of deze up-to-date zijn. Samengevat zijn de stappen de volgende: 0. Uitgangspositie 1. Definiëring bedrijfsproces 2. Bepalen benodigde gegevens per actie 3. Definiëring functionaliteit binnen de activiteit 4. Schetsmatige definiëring interface 5. Aangeven regels of restricties 6. Niet-functionele systeemvereisten 7. Invullen / aanvullen wensen- en innovatielijst Hierna komen de stappen uitgebreid en elk voorzien van een voorbeeld, aan bod. Stap 0: uitgangspositie Soms kan het zinvol zijn om eerst nog stil te staan bij de essentiële vraag: wat is eigenlijk het doel van het bedrijfsproces? In het geval er geen duidelijkheid of overeenstemming is, is het zaak om dat eerst te regelen. In de rest van deze paragraaf wordt als voorbeeld het bedrijfsproces voor terrasbestellingen verder uitgewerkt. Daarom wordt gestart het doel van dit bedrijfsproces in kaart te brengen: Voorbeeld uitwerking van deze processtap Het achterliggende doel van het afhandelen van terrasbestellingen zou kunnen zijn: - Mensen een aangename tijd bezorgen - Geld verdienen - Herhaalbezoek genereren (omdat het terras aanvullend is op het café / restaurant, mensen kunnen hier dus terecht voor niet slechts één service) - Voortbestaan bedrijf veiligstellen: het café/restaurant bestaat eigenlijk vanwege het restaurant, V1.0 Pagina 10

maar in de zomer willen mensen niet binnen zitten - Combinatie van bovenstaande - Stap 1: definiëring bedrijfsproces In de eerste stap wordt het bedrijfsproces gedetailleerd en schematisch beschreven. Dit heeft in essentie dan de volgende vorm: Een voorbeeld van een uitwerking zou kunnen zijn: Voorbeeld uitwerking van deze processtap Stap 2: bepalen benodigde gegevens per actie In de tweede stap wordt in het bedrijfsproces precies aangegeven welke gegevens nodig zijn om, per individuele actie, de actie te kunnen uitvoeren en welke gegevens worden ingevoerd of gemuteerd in V1.0 Pagina 11

deze actie. Let op! Het gaat dus niet om de output van deze actie, die hoeft ook niet te worden bepaald. Een en ander gaat er als volgt uitzien: Een voorbeeld van een uitwerking zou kunnen zijn: (let op! In het vervolg van deze beschrijving wordt bij elk voorbeeld alleen actie 2 verder uitgediept) Voorbeeld uitwerking van deze processtap V1.0 Pagina 12

Stap 3: definiëring functionaliteit binnen de activiteit In de derde stap wordt beschreven welke functionaliteit nodig is om de actie te ondersteunen of geheel of gedeeltelijk door de computer te laten uitvoeren (automatiseren). Een handelingenanalyse kan hier goede diensten bewijzen. Hierbij wordt van elke uit te voeren handeling op detailniveau bepaald: - Wat de handeling precies inhoudt, wat er precies gebeurt - Of deze handeling kan worden ondersteund door computertechnologie - Of deze handeling geheel of gedeeltelijk kan worden overgenomen door computertechnologie Vooral bij repeterende handelingen is dit al snel lonend. Bijvoorbeeld terrasbestellingen (het doorlopende voorbeeld in dit taakgebied) vinden in het seizoen duizenden malen plaats. Slechts een minieme besparing per bestelling kan op jaarbasis grote besparingen opleveren. Bij het definiëren van de functionaliteit binnen de activiteit wordt een directe relatie gelegd tussen de uit te voeren handelingen en de (optimale) rol van computertechnologie hierin: Een voorbeeld van een uitwerking zou kunnen zijn: Voorbeeld uitwerking van deze processtap V1.0 Pagina 13

N.B. Functionaliteit 4: bij het opnemen van een bestelling blijkt dat als iemand bijv. cappuccino bestelt, de kans groot is dat iemand anders in de groep dat ook doet. Door de bestelde items te laten zien, kan dat dus net even sneller worden verwerkt. Stap 4: schetsmatige definiëring interface In deze stap wordt in één of enkele schetsen de gewenste interface gedefinieerd. Overigens moet wel worden opgemerkt dat niet alle activiteiten een interface kennen. Bijvoorbeeld het uitleveren van een bestelling kent geen interface. Een interface kan een user-interface zijn, waarbij dus zoals de naam al zegt een computer interacteert met een mens. Het kan echter ook een interface zijn tussen computer en apparaat, dus bijv. tussen computer en koffiemachine. Een voorbeeld van een uitwerking zou kunnen zijn: V1.0 Pagina 14

Voorbeeld uitwerking van deze processtap V1.0 Pagina 15

Stap 5: aangeven regels of restricties In deze vijfde stap worden de regels of restricties die gelden voor dit bedrijfsproces, of onderdelen daarvan, vermeld: Dit kunnen restricties zijn die direct in verband staan met het bedrijfsproces, maar ook uit het oogpunt van functie- en taakscheiding, continuïteit (bijv. herstartbaarheid) en dergelijke kunnen restricties worden benoemd. En term die hier ook wel wordt gebruikt is business rules. Feitelijk worden hier uiteindelijk alle regels op een rij gezet waar het bedrijf zich aan wil / moet houden bij de uitvoering van de werkzaamheden. Een voorbeeld van een uitwerking zou kunnen zijn: Voorbeeld uitwerking van deze processtap V1.0 Pagina 16

Stap 6: Niet-functionele systeemvereisten In deze stap worden de niet functionele systeemeisen ingevuld c.q. aangevuld: V1.0 Pagina 17

Bij niet-functionele systeemeisen kan gedacht worden aan: - Totaal aantal gebruikers - Aantal gelijktijdige gebruikers (gemiddeld en piek) - Aantal transacties (gemiddeld per tijdseenheid en piek) - Bewaartermijn van gegevens - Maximaal dataverlies bij totale uitval van het systeem (waarna bijv. back-up moet worden teruggezet) - Openingstijden van systeem: wanneer moet het beschikbaar zijn - Beschikbaarheidspercentage van systeem gedurende openingstijden + grove berekening van kosten per uur down time Een voorbeeld van een uitwerking zou kunnen zijn: Voorbeeld uitwerking van deze processtap V1.0 Pagina 18

Stap 7: Invullen / aanvullen wensen- en innovatielijst In deze laatste stap wordt de wensen- en innovatielijst ingevuld, of indien deze al van een vorige versie beschikbaar is, aangevuld: V1.0 Pagina 19

Een voorbeeld van een uitwerking zou kunnen zijn: Voorbeeld uitwerking van deze processtap V1.0 Pagina 20

NB: NFC: Near Field Communication, waarmee contactloos communiceren mogelijk wordt. Toepassingen zijn bijv. contactloos betalen en entree via een vooraf gekocht entreebewijs op de smartphone. SPECIFICATIES OPMERKING: BIJWERKEN USER STORIES OF USE CASES De hiervoor uitgewerkte bedrijfsproces moet verder in onderdelen worden uitgewerkt. De meest gebruikte vormen zijn de User Story en de Use Case. User Story Een User Story is een microverhaal in de volgende vorm: Als een type gebruiker kan ik iets doen, zodat ik een doel bereik. Bijvoorbeeld: als een marketingmedewerker kan ik een selectie in het klantenbestand maken, zodat ik de juiste personen kan bellen. V1.0 Pagina 21

Het gebruik van Use Stories is een heel concrete en bondige wijze om vanuit gebruikersperspectief een functionaliteit te beschrijven. Het dwingt de opdrachtnemer te blijven denken vanuit de gebruiker en de gebruiker om voldoende concreet te zijn. Vanwege het detailniveau kan een project van 50 tot wel 500 of meer User Stories bevatten. Op basis van een individuele User Story kan een urenschatting worden gemaakt voor de realisatie waardoor de complexiteit en kosten van elk onderdeel van het project helder zijn en maximale controle ontstaat. Use Case Een Use Case diagram is een grafische weergave van het gedrag van een systeem vanuit gebruikersperspectief. Het beschrijft zowel de actoren (initiator van de actie) als de gebeurtenissen (activiteiten). Een voorbeeld is: Binnen MCTL wordt, zoals hiervoor uitgebreid beschreven, een andere wijze van specificeren gebruikt. Deze gaat uit van het bedrijfsproces waarvoor de requirements worden uitgewerkt. Er wordt een directe verbinding gemaakt met de computertechnologie die daarbinnen past. Die verbinding wordt vanuit een gebruikersfocus uitgewerkt in de activiteiten in het bedrijfsproces enerzijds en anderzijds in de binnen elke activiteit benodigde gegevens en functionaliteiten. De bedoeling is om alleen de specificaties verder uit te werken die in de komende periode ook verder aangepakt gaan worden. De specificaties dienen hier op precies het juiste detailleringsniveau zijn uitgewerkt. Het juiste detailleringsniveau is in dit geval: zodanig dat binnen het taakgebied Ontwerp op basis van deze specificatie het ontwerp kan worden aangepast. Daarnaast moet elke specificatie ook in omvang worden ingeschat; de voor realisatie benodigde inspanning. Naar keuze kan deze inschatting relatief zijn (dus de specificaties ten opzichte van elkaar), of absoluut (in uren / geld). Tot slot moet de prioriteit worden ingeschat. Deze prioriteit mag eveneens absoluut (dus in codes als 1, 2, V1.0 Pagina 22

3 of hoog, laag ) of relatief worden vastgesteld (dus ten opzichte van elkaar). Doorgaans wordt de prioriteit tegenwoordig relatief vastgesteld, maar dat is binnen MCTL dus geen vereiste. ACTIVITEIT: SPECIFICATIE: BIJWERKEN PRIORITEITENLIJST Nadat de individuele specificaties zijn uitgewerkt, kan de prioriteitenlijst worden bijgewerkt. Deze komt er dan als volgt uit te zien: Aan de hand van de prioriteitenlijst is eenvoudig vast te stellen welke specificaties in de eerstvolgende wijzigingsronde (naar keuze via een sprint, release of project) aangepakt zullen gaan worden. ACTIVITEIT: VALIDATIE Tot slot moeten de uitgewerkte specificaties worden gevalideerd. De uitwerking is in dit stadium stabiel, volledig en voldoende gedetailleerd. Er bestaan ook geen discussiepunten meer of aspecten die nog nader moeten worden uitgezocht. De betrokkenen bij de validatie zijn ten eerste uiteraard al degenen die waren betrokken bij het opstellen van de specificaties. Verder is het zinvol de specificaties te laten checken door met name personen die een belang hebben bij de juiste resultaten van de aanpassingen zoals managers en gebruikers. Een afgeleid effect is dat deze personen al in dit stadium meer betrokken zijn bij de wijzigingen, waardoor de uiteindelijke realisatie en overgang naar gebruik soepeler kan verlopen. Tot slot kunnen buitenstaanders, dus personen die op geen enkele wijze betrokken waren bij het opstellen van de requirements, een validatie uitvoeren. OPMERKINGEN De volgende opmerkingen zijn over dit taakgebied te maken: 1. AANPAK EN AFHANDELING DISCUSSIEPUNTEN Het kan voorkomen dat tijdens de activiteiten discussiepunten ontstaan, of losse eindjes waarvoor iets moet worden uitgezocht. Indien het gaat om discussiepunten, is het verstandig deze af te splitsen en door één persoon te laten uitwerken: wat is het discussiepunt, welke alternatieven zijn er, wat zijn de V1.0 Pagina 23

voor- en nadelen van de mogelijke keuzes? Pas nadat een definitieve keuze is gemaakt, wordt deze bij de activiteit Specificeren samengevoegd met de andere reeds uitgewerkte specificaties. Indien het uitzoekwerk betreft, wordt ook één persoon aangewezen die vanuit de groep verantwoordelijk wordt voor het (laten) uitzoeken. Ook hier wordt het resultaat teruggekoppeld en in de activiteit Specificeren samengevoegd met de overige specificaties. 2. VERSIEBEHEER OP REQUIREMENTS Zoals bij bijvoorbeeld software ook het geval is, dienen requirements onder versiebeheer te vallen. Bedrijfsprocessen en de inzet van computertechnologie daarin veranderen nu eenmaal in de loop van de tijd; er moet kunnen worden getraceerd welke aanpassing op welk moment om welke reden aan de requirements is gedaan. 3. COMMUNICATIE VAN DE RESULTATEN Om grip te houden op de requirements moet binnen de groep van betrokkenen voldoende worden gecommuniceerd over de voortgang, de tussenresultaten en de resultaten. Daarnaast is het verstandig om ook anderen, maar dan meer globaal, op de hoogte te stellen van de requirements. Tot slot is het management ook nog een doelgroep die niet uit het oog mag worden verloren. Binnen het taakgebied Requirements management ligt de nadruk sterk op de inhoudelijke aspecten. Echter, zonder voldoende betrokkenheid van het management is er een aanzienlijke kans dat op een later moment het hele wijzigingstraject niet loopt zoals zou moeten. Het management hoeft niet alle details van alle requirements te kennen, maar op enig abstractieniveau is het goed om de requirements, inclusief de te behalen doelstellingen, voordelen en consequenties, richting management te communiceren. Daarnaast is het noodzakelijk te communiceren wat andersom van het management wordt verwacht; alleen commitment, of ook toestemming voor het uitgeven van geld, het besteden van tijd aan verdere werkzaamheden, het verstrekken van opdrachten aan leveranciers? V1.0 Pagina 24