HERGEBRUIK VAN REQUIREMENTS EEN PRAKTISCHE AANPAK
BUSINESS ANALYSE CENTER OF EXCELLENCE - SYNERGIO
Inhoudsopgave 1 HERGEBRUIK VAN REQUIREMENTS ............................................................... 3 1.1
GEBRUIKEN VERSUS HERGEBRUIKEN ............................................................................................ 4
2 STRATEGIE ................................................................................................. 5 2.1 Herbruikbare collecties van requirements ......................................................................... 5 2.1.1 BEHOEFTE.......................................................................................................................... 6 2.1.2 OPLOSSING ....................................................................................................................... 6 2.1.3 COMPLIANCY..................................................................................................................... 7
3 ADVIES HERGEBRUIK REQUIREMENTS ........................................................... 8 3.1 HET BEHEER VAN HERBRUIKBARE COLLECTIES .............................................................................. 8 3.1.1 PROCEDURE UITGIFTE ........................................................................................................ 8 3.1.2 PROCEDURE WIJZIGEN EN TERUGGAVE ............................................................................... 8 3.1.3 PROCEDURE ACCEPTATIE.................................................................................................... 9 3.2 INRICHTING VAN HERBRUIKBARE COLLECTIES .............................................................................. 9
Synergio – Business Analyse Center of Excellence
2
19-10-2015 11:08
1
HERGEBRUIK VAN REQUIREMENTS
Requirements geven richting aan het product ontwikkelproces en daarmee vormen ze een belangrijk fundament voor een verandering en/of verbetering. Steeds beter worden in het werken met requirements levert een bijdrage aan het sneller en beter (productiviteit) opleveren van producten, zoals applicaties. Het groeipad voor het werken met requirements kent 3 stappen: 1. Hebben Om te kunnen werken met requirements moet je ze eerst hebben. Daarbij wil je dat de requirements goed geformuleerd zijn, zodat misinterpretaties worden voorkomen. En je wilt dat je de goede requirements hebt, niet te veel, niet te weinig, precies genoeg, met als doel: a. Inzicht in de klantbehoefte b. Een goede overdracht van informatie in de ontwikkelketen 2. Gebruiken Als je requirements hebt wil je ze goed gebruiken. Ze zijn input voor de projectleider en de planning, voor testers en het testplan, voor ontwikkelaars/architecten en het ontwerp. Dit is geen eenmalige overdracht van een document, maar een regelmatige afstemming gedurende het gehele project tussen requirements (wat wil je?) en oplossingen (wat is mogelijk?). Requirements worden je “stuur op de inhoud” gedurende het gehele project met als doel: a. Lagere ontwikkelkosten b. Minder faalkosten c. Hogere klanttevredenheid 3. Hergebruiken Zodra je de goede requirements hebt en ze goed gebruikt kun je ze hergebruiken. Hiermee voorkom je dat in projecten dubbel werk plaatsvindt. Door een goede indeling (bibliotheek) te maken kun je het onderhouden van herbruikbare requirements bij verschillende materie deskundigen beleggen, met als doel: a. Kortere time-to-market b. Hogere standaardisatie Het hergebruik van requirements is belangrijk voor product ontwikkeling omdat hiermee een mogelijkheid wordt gecreëerd om tijd te besteden aan de écht belangrijke zaken zoals product innovatie. Synergio – Business Analyse Center of Excellence
3
19-10-2015 11:08
1.1 GEBRUIKEN VERSUS HERGEBRUIKEN Er bestaat een verschil tussen “gebruik” en “hergebruik” van requirements. Dit lijkt een futiele discussie, maar er bestaat tussen beide begrippen een essentieel verschil. Gedurende het maken en gebruiken van een oplossing ‘gebruiken’ we in de diverse stappen van het product ontwikkelproces de requirements. We noemen dit ‘gebruiken’ omdat elke processtap bijdraagt aan het bereiken van één en hetzelfde doel: het realiseren en onderhouden van een passende oplossing voor een behoefte. ‘Hergebruik’ van requirements vindt plaats als requirements, die zijn opgesteld voor een bepaalde behoefte of oplossing, ook voor een andere behoefte of oplossing toepasbaar zijn. Bij ‘hergebruik’ van requirements is er dus sprake een ander doel: het sneller en efficiënter opstellen van een collectie requirements als verwoording van de behoefte.
Synergio – Business Analyse Center of Excellence
4
19-10-2015 11:08
2
Strategie
De strategie voor hergebruik is vooral gericht op het mogelijk maken om met minder kosten steeds sneller producten te kunnen ontwikkelen. Vanuit dit perspectief is het handiger om niet alleen de requirements geschikt te maken voor hergebruik maar juist de meest zinvolle informatieonderdelen die nodig zijn in het productontwikkelproces. 1. Maak hergebruik mogelijk voor de informatieonderdelen die relatief minder vaak wijzigen 2. Maak hergebruik mogelijk voor de informatieonderdelen die een duidelijke eigenaar hebben en er belang bij hebben dat ze altijd up-to-date zijn 3. Maak hergebruik mogelijk door een goede synchronisatie en beheer procedure door onder andere gebruik te maken van baselines, wijzigingsprocedures en releasemanagement Om hergebruik goed in te richten is een strategie nodig die enerzijds richting geeft ten aanzien van welke set van requirements handig zijn voor hergebruik en anderzijds invulling geeft aan het beheer van herbruikbare requirements sets en de organisatie die daarvoor nodig is.
2.1 Herbruikbare collecties van requirements Voor het identificeren van collecties van herbruikbare requirements maken we gebruik van het onderstaande model voor hergebruik van informatie van Synergio.
Het requirementsmodel onderscheidt 3 kolommen, Behoefte, Oplossing en Compliancy, die allemaal een eigen dynamiek hebben ten aanzien van hergebruik.
Synergio – Business Analyse Center of Excellence
5
19-10-2015 11:08
2.1.1 BEHOEFTE De kolom Behoefte beschrijft de gewenste verandering in de vorm van requirements. Veelal gaat het om een verbetering van bestaande Processen, Producten, Uitingen en/of Systemen (Oplossingen). Je kunt zeggen dat je met de requirements aan de Behoefte kant een verandering/verbetering “injecteert” in bestaande oplossingen. De requirements in de Behoefte kolom gaan van een hoog abstractieniveau – doelen/behoeften – naar een laag abstractieniveau – system requirements. Voor hergebruik geldt de regel: “Hoe hoger het abstractieniveau, hoe meer geschikt voor herbruikbaarheid”. Stel je voor de organisatie heeft een meerjarenplan uitgestippeld met daarin een aantal doelstellingen voor de komende 3 tot 5 jaar (doelen/behoeften). Om deze te realiseren worden een aantal programma’s opgestart (oplossingen) met per programma een aantal projecten. Dan geldt dat de meerjaren doelstellingen herbruikbaar zijn voor de programma’s en projecten, immers alle programma’s en projecten leveren een bijdrage aan de realisatie van deze doelstellingen. System requirements die zijn opgesteld om een aanpassing in een systeem te maken zijn heel specifiek en dus niet of nauwelijks herbruikbaar. Kortom de requirements in de Behoefte kolom zijn beperkt herbruikbaar. Met name het deel dat bedoeld is voor het bereiken van doelstellingen en het geven van richting en kaders is het best herbruikbaar.
2.1.2 OPLOSSING De kolom Oplossingen bevat bedrijfsprocessen (Processen), die worden ingezet om bepaalde producten en diensten te leveren (Producten en Uitingen) aan klanten. We noemen deze elementen bedrijfscomponenten. Om deze processen uit te kunnen voeren en producten/diensten te kunnen leveren, maken de medewerkers van Achmea gebruik van applicaties (Systemen) die hen helpen de administratie t.a.v. de geleverde producten bij te houden. Deze bestaande processen, producten, uitingen en systemen hebben zogenaamde kenmerken (ook wel bedrijfsspecificaties genoemd). In een project zorgen de requirements (Behoefte kolom) dat: Nieuwe kenmerken worden toegevoegd, Bestaande kenmerken worden verwijderd, Bestaande kenmerken worden aangepast Als requirements zijn gerealiseerd in bijvoorbeeld een product worden het nieuwe of aangepaste kenmerken van dat product. Stel voor een hypotheek heeft als een van haar kenmerken de looptijd, bijvoorbeeld van 10, 20 of 30 jaar. Als ook een looptijd van 25 jaar
Synergio – Business Analyse Center of Excellence
6
19-10-2015 11:08
wordt toegestaan, wordt het bestaande kenmerk “looptijd” van het product hypotheek aangepast (uitgebreid) met een waarde 25 jaar. Omdat het gaat om bestaande processen, producten, uitingen en systemen zijn deze per definitie goed herbruikbaar over projecten heen. Omdat meerdere projecten tegelijkertijd de kenmerken van een proces, product, uiting of systeem kunnen aanpassen is het beheer van deze herbruikbare collecties uitermate belangrijk.
2.1.3 COMPLIANCY Het aantoonbaar voldoen aan wet- en regelgeving wordt steeds belangrijker voor organisaties. De derde kolom in het requirements model van Synergio bevat alle requirements die voortkomen uit interne en externe wet- en regelgeving. In feite leggen deze requirements beperkingen op aan de Oplossingen die worden gekozen. Een voorbeeld van interne regelgeving is de doelarchitectuur en de daarvan afgeleid de project start architectuur (PSA). De doelarchitectuur stelt eisen aan de Oplossing. Bij Achmea is SAP de doelarchitectuur en deze stelt daarmee eisen aan de Oplossing Systeem. Compliancy requirements zijn uitstekend herbruikbaar, immers ze gelden voor alle projecten. 2.1.3.1 WETGEVING Een speciale collectie van herbruikbare requirements zijn eisen vanuit de wet. Voor Achmea en Achmea Bank gelden bijvoorbeeld een groot aantal financiële wetten waaraan Achmea aantoonbaar moet voldoen. Een kenmerk van de financiële wetgeving is dat ze vaak complex is en daardoor moeilijk begrijpbaar in de vorm van tekst en taal. De vertaling ervan naar een implementatie in applicaties kost daardoor veel tijd kost en is erg foutgevoelig. Herbruikbaarheid van wetgeving – in de vorm van tekst – is verre van optimaal. Een oplossing hiervoor is om wetgeving zoveel mogelijk door te vertalen naar zogenaamde Business Rules. De wetgeving wordt hiermee gemodelleerd in de vorm van een formele taal. Dit maakt wetgeving “visueel”, testbaar en veel makkelijker, sneller en zonder fouten te vertalen naar een applicatie implementatie. Kortom door de vertaling van wetgeving in Business Rules worden de Business Rules een of meer herbruikbare collecties voor projecten.
Synergio – Business Analyse Center of Excellence
7
19-10-2015 11:08
3 ADVIES HERGEBRUIK REQUIREMENTS Bij Achmea Bank is hergebruik van requirements slechts deels ingeregeld en deels geborgd in de organisatie. Dit betekent dat een behoorlijke inspanning nodig is om dit te professionaliseren. Het onderstaande advies legt de basis voor deze professionalisering.
3.1 HET BEHEER VAN HERBRUIKBARE COLLECTIES Voor het beheer van de herbruikbare collecties van requirements wordt een beheerder aangesteld. De beheerder is verantwoordelijk voor de uitgifte van herbruikbare collecties aan projecten en voor de intake van gewijzigde collecties. De beheerder managet het beheerst verwerken van deze wijzigingen tot een nieuwe, consistente herbruikbare collectie. Daarnaast stelt de beheerder de herbruikbare collectie beschikbaar aan de operatie, zodat altijd duidelijk is welke herbruikbare sets actueel en in gebruik zijn.
3.1.1 PROCEDURE UITGIFTE De beheerder maakt een baseline van de herbruikbare collectie. De baseline wordt enerzijds gebruikt om verschillenanalyse uit te kunnen voeren tussen verschillende baselines. Anderzijds geeft een baseline de mogelijkheid om een herbruikbare collectie “terug te zetten” naar de uitgangssituatie. De beheerder stelt de baseline van de herbruikbare collectie beschikbaar aan het project (branch). Deze branch behoudt haar relatie met de originele herbruikbare collectie zodat deze later weer samengevoegd kunnen worden (merge).
3.1.2 PROCEDURE WIJZIGEN EN TERUGGAVE Het project maakt de aanpassingen die nodig zijn (business requirements, user requirements, processen, producten, uitingen) en stelt deze beschikbaar aan de beheerder aan het eind van het project. Eventueel kan het project een baseline maken aan het eind van de oplevering.
Synergio – Business Analyse Center of Excellence
8
19-10-2015 11:08
3.1.3 PROCEDURE ACCEPTATIE De beheerder controleert de aanpassingen en voegt ze samen met originele herbruikbare set (merge). Hiermee ontstaat een aangepaste herbruikbare set. Vervolgens maakt de beheerder een baseline van de nieuwe herbruikbare set en stelt deze beschikbaar aan de operatie zodat altijd duidelijk is welke processen, producten, etc. “in productie” zijn.
3.2 INRICHTING VAN HERBRUIKBARE COLLECTIES Bij de inrichting van de herbruikbare collecties is het enerzijds belangrijk om ervoor te zorgen dat ze makkelijk aan een project beschikbaar gesteld kunnen worden (branch) en anderzijds om ze weer te kunnen samenvoegen met het origineel (merge). Het advies is om een product gerichte inrichting te hanteren voor herbruikbare collecties. Dit betekent dat alle relevante informatie – requirements, processen, uitingen, etc. – behorend bij een product – bijvoorbeeld Bancaire Lijfrente Afbouw – in één herbruikbare collectie wordt ingedeeld. De figuur rechts toont een map, genaamd “Functionaliteiten beheer”. Hieronder zijn ter illustratie 3 productgroepen opgenomen: Banksparen, Hypotheken en Verzekeren. In de map Banksparen zijn 2 producten opgenomen: BLA en BLO. In de map “Bancaire Lijfrente Afbouw (BLA)” zijn herbruikbare collecties opgenomen in de vorm van Doelstellingen, Business concepts en business requirements, Processen, Producten, Uitingen, User requirements en Business rules. Het aantal op te nemen herbruikbare collecties is niet gelimiteerd.
Synergio – Business Analyse Center of Excellence
9
19-10-2015 11:08
Bij de uitgifte van herbruikbare collecties kan de beheerder, in samenspraak met het project, bepalen welke collecties relevant zijn voor het project en alleen die ter beschikking stellen. Ook kan de beheerder slechts een deel van de informatie in een herbruikbare collectie beschikbar stellen – zie figuur rechts. Hoe specifieker de herbruikbare collectie aan het project beschikbaar gesteld kan worden hoe makkelijker de beheerder bij acceptatie in staat is de merge te doen omdat er relatief weinig kans is op overlap met andere projecten die wijzigingen op de dezelfde elementen hebben aangebracht op exact hetzelfde moment. Tevens is het belangrijk dat in herbruikbare collecties de onderlinge relaties – traceability – gewaarborgd zijn. De beheerder bepaalt in samenspraak met het project welke traces van belang zijn en meegenomen moeten worden in de beschikbaar gestelde herbruikbare set. Bij het accepteren van de gewijzigde herbruikbare collectie moet de beheerder een overzicht krijgen van de wijzigingen die zijn aangebracht. Per wijziging dient de beheerder te kunnen bepalen of deze wel of niet wordt geaccepteerd. Dit alles in samenspraak met de projecten die de informatie aanleveren.
Synergio – Business Analyse Center of Excellence
10
19-10-2015 11:08
In de bovenstaande figuur is zichtbaar dat er 4 wijzigingen hebben plaatsgevonden vanuit het project in de herbruikbare collectie: 1. Viewpoint 3 is aangepast – groen van kleur 2. User requirement 4 is verwijderd – rood van kleur 3. Nieuw Viewpoint en Nieuwe user requirement zijn toegevoegd – blauw van kleur Per gewijzigd record kan de beheerder bepalen of deze wordt geaccepteerd of niet – zie de vinkje in de kolom “Select?”. De beheerder houdt hierdoor volledige controle over elke herbruikbare collectie.
Synergio – Business Analyse Center of Excellence
11
19-10-2015 11:08