|
Begroting van een gegevensconversie
Om de omvang van een gegevensconversie in te kunnen schatten kan gebruik
worden gemaakt van het middel Functie Punten Analyse.
FPA bij gegevensconversie is (voor zover ons
bekend) nooit verder theoretisch
uitgewerkt. Daarom nemen we bij deze de vrijheid om een voorstel te doen. Als
eerste plaatsen we een aantal kanttekeningen. Vervolgens werken we een voorbeeld
uit...
Functiepunt analyse zegt vrij vertaald:
De omvang van een systeem is te berekenen aan de hand van het datamodel en de
daaromheen te realiseren functies
Hoe
werkt het?
-
Men neme het datamodel. Per
entiteit wordt, afhankelijk van het aantal attributen een aantal punten
toegekend
-
Per opvoerfunctie, uitvoer
functie, koppelingsfunctie, rapport wordt afhankelijk van het aantal
attributen en de betrokken entiteiten een aantal functiepunten geteld
-
De functiepunten worden
getotaliseerd
-
Per fase in de
systeemontwikkeling afhankelijk van de gehanteerde hulpmiddelen en eventueel
aanwezige ervaringscijfers hanteert men een aantal uren per functiepunt.
-
Optellingen en
vermenigvuldigingen leveren een vrij betrouwbare planning voor een
ontwikkeltraject.
Een
vuistregel
Hoe zit dat bij conversie
-
Een conversie kent feitelijk 2 datamodellen
-
Alle gegevens dienen goed te zijn in de nieuwe omgeving (dus
opvoer functie)
-
Uitval dient te worden gerapporteerd (rapportage functie)
-
Getalsmatige onderbouwing dient te worden geleverd (rapportage)
-
Uitgebreide koppelingen zijn aanwezig (koppelingsfunctie).
Een vuistregel voor conversie
-
Gezien
de hoeveelheid functionaliteit kan voor conversie zeker worden gerekend op ca
15 functiepunten per entiteit voor de eerste ontwikkeling.
-
Hierbij is geen rekening gehouden met de inspanning in verband met wijzigende
specificaties
Conclusie
voor de begroting van een conversie
-
Bij gelijkblijvende
productiviteitscijfers voor de ontwikkeling van de conversie naast die van het
feitelijke ontwikkeltraject ontstaat er op basis van het voorgaande een 30 :
15 = 2 : 1 verhouding.
-
Dat betekent, dat tenminste 30%
van het budget voor conversie gereserveerd zou moeten worden
-
Wie is daarvoor de eerste?
Een
discussiepunt ten aanzien van gegevensconversie kan zijn de manier waarop de
feitelijke conversie moet worden begroot. Strikt volgens de definities zou er
sprake zijn van uitvoerfuncties als met redeneert vanuit het oude datamodel.
Men kan ook als basis voor de begroting het nieuwe datamodel nemen, maar dat zal
vaak pas later in het project duidelijk worden. Daarom kiezen we ervoor om uit te
gaan van het oude datamodel en op basis daarvan een schatting te maken van het
aantal koppelingsfuncties dat nodig zal zijn.
Een rekenvoorbeeld:
Situatieschets (vervanging van een
personeelsinformatiesysteem door PeopleSoft)
-
Bron is een personeels informatie systeem, waarin de gegevens
van ca 100.000 personeelsleden (actueel en historie) vastliggen.
-
Het technische datamodel van het bronsysteem bestaat uit ca 80
bestanden, waarvan er 50 ‘mee moeten’ in de conversie.
-
In het bron systeem werken de gegevens behoorlijk goed, er
zitten echter wel fouten in. deze fouten moeten niet worden overgenomen naar
het nieuwe systeem. Ook stelt het nieuwe systeem eisen aan de gegevens.
Daarvoor zal de kwaliteit van de gegevens op een hoger plan moeten worden
gebracht.
-
De conversie moet bewijs leveren van compleetheid van het
uitgevoerde proces.
-
Een deel van de historie zal niet mee gaan naar het nieuw in
te voeren PeopleSoft systeem. Naar schatting blijven ca 40.000 dossiers over.
-
Het vullen van het PeopleSoft systeem zal plaatsvinden door
gebruik te maken van PeopleSoft Templates. Dezen zullen worden gebruikt als
doel datamodel. Bij aanvang wordt een 70-tal templates genoemd. Er blijkt een
40-tal te moeten worden gevuld vanuit de conversie.
-
In dit voorbeeld zijn de conversieregels voor 90% bekend. Van
daaruit is dan ook de berekening in functiepunten gemaakt.
De tellingen van de
functiepunten ziet er als volgt uit:
als bij een initiële schatting voor deze
conversie was uitgegaan van de eerder opgegeven vuistregel van ca 15
functiepunten per entiteit, dan had men bij geschat 50 bestanden als invoer met
50x15 = 750 functiepunten aardig in de buurt gezeten.
|