Geschreven door Erwin van den Berg, Co-Owner / IT Consultant.

Erwin van den Berg heeft meer dan 25 jaar ervaring in IT-consultancy, met een focus op het strategisch afstemmen van technische oplossingen op zakelijke doelen.

Erwins achtergrond in Microsoft 365 automatisering en cloudoplossingen informeert deze analyse van integratievoorstellen en de bijbehorende aannames.

Afkadering: Erwins expertise richt zich op de strategische en budgettaire aspecten van integratie, niet op de technische uitvoering van specifieke oplossingen.

Schat onbekende legacy-integratiekosten niet als één vaste bouwprijs, maar als afzonderlijk onderzoekbaar werk. Laat eerst de technische uitgangssituatie toetsen en splits daarna discovery, bronherstel of transformatie, realisatie, interne mapping en acceptatie, plus beheer na livegang uit; zo wordt zichtbaar welke kosten vast te prijzen zijn en welke afhankelijk blijven van gevonden afwijkingen.

Kernpunten: kosten van legacy-integratie inschatten

Vergelijk voorstellen op hun aannames, verantwoordelijkheden en uitgesloten risico’s, niet alleen op de totaalprijs.

  • Maak onderscheid tussen werk waarvan de technische voorwaarden bekend zijn en werk dat eerst onderzoek naar API’s, datakwaliteit en afhankelijkheden vereist.
  • Bepaal expliciet of gegevens aan de bron worden hersteld of tijdens de koppeling worden aangepast; die keuze ruilt een snellere oplevering in tegen structurele beheerlast.
  • Neem interne inzet voor veldmapping, data-aanlevering en acceptatie op als projectvoorwaarde, zodat externe scope niet goedkoper lijkt door onbegrote klantarbeid.
  • Toets of uitzonderingen, monitoring, ketenregie en ondersteuning na livegang binnen de afspraken vallen; anders kunnen storingen, vertraging en aanvullend werk buiten de bouwprijs ontstaan.

Schat onbekende integratiekosten eerst als onderzoekbaar werk in

Wanneer de technische staat van een legacy-omgeving slechts deels bekend is, vormt een totaalprijs vooral een prijs voor wat de aanbieder veronderstelt. De bruikbare eerste raming behandelt het onbekende deel daarom als afzonderlijk onderzoekbaar werk. Technische discovery maakt zichtbaar welke aannames over API-beschikbaarheid, datakwaliteit en onderlinge legacy-afhankelijkheden werkelijk houdbaar zijn. Zolang die aannames niet zijn getoetst, hoort een voorstel duidelijk te maken welke onderdelen voorlopig zijn, welke informatie nog ontbreekt en op welk moment een afwijking gevolgen krijgt voor prijs of scope.

Dit onderscheid voorkomt dat een ontbrekende API, gebrekkige data of een niet-gedocumenteerde afhankelijkheid pas tijdens de uitvoering als onverwacht probleem verschijnt. In een offerte kunnen zulke uitgangspunten aanvankelijk onschuldig ogen: gegevens zijn beschikbaar, koppelingen kunnen worden gebruikt en de bron gedraagt zich voorspelbaar. Blijkt een van die uitgangspunten onjuist, dan verandert onbekend herstelwerk gemakkelijk in een meerwerkverzoek. De kostenonzekerheid zit dan niet uitsluitend in de bouw van de koppeling, maar in de vraag hoeveel van de bestaande omgeving eerst onderzocht en hersteld moet worden.

Ook de plaats van de gegevensopschoning vraagt om een afzonderlijke keuze. Saneren in het bronsysteem vóór de integratie kan de oplevering vertragen, maar legt de verbetering bij de oorzaak en ondersteunt lagere structurele beheerkosten. Datatransformatie in de integratielaag kan daarentegen een snellere oplevering mogelijk maken. De keerzijde is dat de integratielaag dan blijvend afwijkingen uit het bronsysteem moet opvangen, met hogere technische schuld als gevolg. Twee aanbiedingen met hetzelfde integratiedoel kunnen dus wezenlijk verschillen wanneer de ene uitgaat van bronherstel en de andere van blijvende transformatie buiten het bronsysteem.

Acceptatie vormt een derde grens in de kostenraming. Wanneer User Acceptance Testing volledig bij interne key-users wordt gelegd, zonder gereserveerde uren of passende ondersteuning, kan operationele werkdruk tot oppervlakkige toetsing leiden. Veldtransformatiefouten blijven dan mogelijk onopgemerkt tot na livegang, waarna foutieve gegevens op grotere schaal in Dataverse en SharePoint terechtkomen. Handmatige correcties en verlies van draagvlak zijn geen vervanging voor een expliciet begrote acceptatie-inspanning. Vergelijk voorstellen daarom pas nadat discovery, de plaats van sanering en de interne UAT-inzet afzonderlijk zichtbaar zijn gemaakt.

Waarom vergelijkbare integratiedoelen toch sterk verschillende offertes opleveren

Twee offertes kunnen dezelfde koppeling tussen een legacy-systeem en Microsoft 365 beloven, terwijl zij niet dezelfde werkzaamheden, verantwoordelijkheden of risico’s prijzen. Het zichtbare einddoel zegt weinig over de kwaliteit van de uitgangssituatie waarop de prijs is gebaseerd. Een fixed-price aanname kan bijvoorbeeld zijn opgesteld na een oppervlakkige discoveryfase. Als tijdens de eerste uitvoeringsfase blijkt dat een REST API ontbreekt of tabellen in de legacy-database corrupt zijn, verschuift het werk direct van bouwen naar onderzoeken, saneren en middleware ontwikkelen.

Daarmee ontstaat een keten die de oorspronkelijke prijsvergelijking ondermijnt. De engineeringcapaciteit die voor de geplande integratie was voorzien, wordt aangesproken voor onverwacht herstelwerk. Het budget raakt eerder uitgeput, terwijl de eigenlijke integratie nog niet volledig is gerealiseerd. Vervolgens ontstaat discussie of aanvullende werkzaamheden onder de afgesproken scope vallen of als meerwerk moeten worden behandeld. Dit maakt een lage startprijs niet per definitie onjuist, maar wel onvoldoende als niet zichtbaar is welke kwaliteit van brondata, technische toegang en bestaande structuur erin besloten ligt.

De kostenkant ligt bovendien niet alleen bij de externe partij. Veldmapping, brondata en acceptatie vragen inzet van interne medewerkers. Een voorstel kan deze rollen concreet maken door de benodigde klantrollen, tijdsbesteding en acceptatieverantwoordelijkheden vooraf te kwantificeren. Dat verandert interne inzet van een impliciete verwachting in een toetsbare projectvoorwaarde. Zonder die verduidelijking kan de voortgang afhankelijk worden van medewerkers die tegelijk hun reguliere operationele taken uitvoeren, terwijl hun bijdrage wel bepalend is voor de uitvoering en acceptatie.

Na oplevering blijft de vergelijking relevant. Zonder structurele afspraken over gateway en lifecycle kan een authenticatie-update binnen Microsoft 365 of een serverpatch de gateway uitschakelen. Als actieve logging ontbreekt, kan de synchronisatie geruisloos stoppen. Wanneer ordersynchronisatie daardoor dagenlang uitvalt, volgt herstel onder tijdsdruk en mogelijk tegen hogere spoedtarieven buiten het contract. Een offertevergelijking hoort dus verder te gaan dan bouwscope: de behandeling van discovery, herstelwerk, interne acceptatie en de afspraken voor de periode na livegang bepalen samen hoe voorspelbaar de feitelijke kosten zijn.

Vergelijk per leveringsfase zodra mapping en brondata bij het klantteam landen

Een vergelijking op totaalprijs verliest betekenis zodra cruciale voorbereidingsactiviteiten buiten de geprijsde werkzaamheden vallen. Veldmapping en data-aanlevering zijn daarvan een duidelijk voorbeeld. Als deze activiteiten stilzwijgend bij het interne klantteam worden gelegd, lijkt de externe bouwscope kleiner en daarmee goedkoper. De feitelijke inspanning verdwijnt echter niet: medewerkers moeten velden duiden, gegevens beschikbaar maken en de benodigde input aanleveren. Wanneer zij door operationele werkdruk onvoldoende ruimte hebben, wachten externe consultants op die input. Die wachttijd kan declarabele idle time veroorzaken, terwijl de planning alsnog opschuift.

Een tweede onderscheid betreft de manier waarop een aanbod met afwijkingen omgaat. Een begroting die uitsluitend uitgaat van foutloze brondata en perfect werkende eindpunten omvat alleen het verwachte hoofdpad. Daarin kunnen exception handling, rate limiting en logging ontbreken. Die onderdelen zijn niet zichtbaar in de headline-prijs, maar hun afwezigheid betekent dat het voorstel een beperktere uitvoeringsscope heeft dan een aanbod waarin zij wel zijn opgenomen. Het verschil zit dus niet noodzakelijk in een andere prijsstelling voor hetzelfde werk, maar in een andere definitie van wat onder het werk valt.

Maak deze punten per leveringsfase zichtbaar voordat voorstellen naast elkaar worden gelegd. In de fase waarin input wordt voorbereid, hoort te staan of veldmapping en data-aanlevering zijn geprijsd, wie daarvoor verantwoordelijk is en welke inzet van het klantteam wordt verondersteld. In de fase waarin de koppeling wordt gerealiseerd, hoort zichtbaar te zijn of de begroting alleen het hoofdpad omvat of ook afwijkingen, begrenzingen in verwerking en logging behandelt. Daardoor wordt duidelijk of een vertraging voortkomt uit ontbrekende interne input, uit niet-geprijsde behandeling van uitzonderingen, of uit beide.

Deze fasegerichte lezing voorkomt dat een lage prijs wordt beoordeeld als een volledige prijs terwijl zij feitelijk afhankelijk is van kosteloze interne arbeid en ideale omstandigheden aan de bron. Zij maakt eveneens onderscheid tussen een planning die uitgaat van direct beschikbare gegevens en een planning die rekening houdt met wachttijd. De relevante vergelijking is daarom niet alleen wat de leverancier bouwt, maar ook welk voorbereidende werk, welke gegevenskwaliteit en welke afwijkingen buiten die bouwprijs blijven.

Zet saneringsaannames en keteneigenaarschap naast elkaar

Gebruik onderstaande matrix om te toetsen of aanbiedingen dezelfde technische en organisatorische grenzen hanteren. De twee rijen voorkomen dat een vaste prijs voor beperkte realisatie wordt gelezen als dekking voor bronherstel en coördinatie tussen alle betrokken partijen.

VergelijkingsregelWat het voorstel expliciet maaktRisico wanneer dit vaag blijft
Behandeling van niet-genormaliseerde databaseschema’sOf onderzoek en sanering van het bronsysteem binnen de realisatiescope vallen, buiten scope blijven of pas na vaststelling als wijziging worden behandeld. Ook hoort het voorstel te benoemen welke randvoorwaarden het hanteert voor de structuur van de brondata.Een vaste-prijscontract met vage randvoorwaarden kan het financiële saneringsrisico bij de koper leggen. Zodra tijdens realisatie blijkt dat databaseschema’s niet genormaliseerd zijn, ontstaat ruimte om het benodigde herstelwerk als aanvullende kosten te behandelen.
Eén eindverantwoordelijke integratorWie bij een storing de volledige integratieketen aanstuurt wanneer een Microsoft-consultant, legacy-leverancier en netwerkbeheerder betrokken zijn. De rol moet meer omvatten dan een eigen deelactiviteit: zij moet het aanspreekpunt zijn voor de keten als geheel.Bij ontbrekend keteneigenaarschap kunnen partijen de oorzaak bij elkaar leggen. De klant draagt dan niet alleen de coördinatielast, maar ook de kosten van vertraging terwijl Microsoft-consultant, legacy-leverancier en netwerkbeheerder hun eigen verantwoordelijkheidsgrens afbakenen.

Een vaste prijs dekt geen onbekende afwijkingen of ongeteste datatransformaties

Een vaste prijs en een geplande livegang adresseren twee verschillende soorten onzekerheid. De eerste betreft onbekende afwijkingen in de legacy-omgeving; de tweede betreft de vraag of getransformeerde gegevens aan formeel vastgelegde acceptatievoorwaarden voldoen. Beoordeel beide apart.

OnzekerheidWat een geruststellend voorstel kan verhullenZichtbaar gevolg
Legacy-afwijkingen achter een fixed-price aanneemsomDe aanneemsom kan veilig lijken zolang de werkelijke afwijkingen in de legacy-omgeving nog niet zichtbaar zijn. Een vaste prijs maakt niet vanzelf duidelijk hoe met later gevonden afwijkingen wordt omgegaan.Zodra afwijkingen aan het licht komen, kan het project stoppen en kunnen change requests zich opstapelen. De budgetdruk en stagnatie komen dan voort uit de verhouding tussen de vaste uitgangsscope en het aanvullende werk dat nodig blijkt.
Datatransformaties zonder geformaliseerde acceptatie- en testcriteriaEen livegang kan plaatsvinden zonder dat subtiele fouten in getransformeerde gegevens vooraf als toetsbaar acceptatiepunt zijn vastgelegd. De onvolledigheid zit dan niet in de prijsafspraak, maar in wat als aantoonbaar correct geldt.Fouten kunnen pas na go-live in Microsoft 365 zichtbaar worden. Volgens deze keten kan dat acute procesuitval in primaire bedrijfsfuncties veroorzaken, precies op het moment dat herstellen onder operationele druk plaatsvindt.

Wanneer wegen discovery en maatwerk zwaarder dan een lage bouwprijs?

De afweging draait niet om een vaste voorkeur voor een zwaardere integratieroute. Zij draait om de vraag welke onzekerheid nog bestaat voordat de realisatie begint en hoeveel flexibiliteit het legacy-datamodel later vraagt.

  • Waarom is een betaalde technische discoveryfase geen onnodige vertraging?
    Een technische discoveryfase vraagt vooraf een investering en levert op dat moment geen directe softwarefunctionaliteit op. Dat is precies het zichtbare nadeel in een voorstel: budget wordt besteed voordat de beoogde koppeling beschikbaar is. De functie van deze fase ligt echter in het vooraf onderzoeken van onbekend werk in de legacy-omgeving. Daarmee verschuift de vaststelling van onzekerheden naar vóór de realisatie, in plaats van naar het moment waarop bouwcapaciteit al is ingepland en de verwachtingen over prijs en voortgang al bestaan.

    Die verschuiving kan het risico op escalerende meerwerkkosten tijdens de realisatie verlagen. Zonder voorafgaand onderzoek blijft een lage bouwprijs afhankelijk van aannames die nog niet zijn getoetst. Met discovery kan een voorstel onderscheid maken tussen werk dat voldoende bekend is om te begroten en werk dat eerst nader moet worden vastgesteld. De investering koopt dus geen directe functionaliteit, maar meer zicht op de grens tussen voorzien werk en mogelijk aanvullend werk.
  • Wanneer wegen lage bouwkosten van low-code connectoren minder zwaar?
    Low-code connectoren bieden een snelle go-live tegen lage bouwkosten. Dat kan passend zijn wanneer de benodigde koppeling binnen de flexibiliteit van die connectoren blijft. De lagere initiële bouwlast is dan een werkelijk voordeel en geen aanwijzing dat een andere aanpak altijd nodig is.

    Bij complexe legacy-datamodellen verandert de afweging. Low-code connectoren kunnen daar inflexibel blijken en de operationele storingsgevoeligheid verhogen ten opzichte van robuuste maatwerk middleware. In die situatie is de vraag niet welke route in algemene zin beter is, maar of de lage startkosten voldoende ruimte laten voor de complexiteit van het bestaande datamodel. Wanneer die ruimte ontbreekt, verschuift het risico van initiële bouwkosten naar de werking en herstelbehoefte na livegang.

Maak de shortlist afhankelijk van uitgesplitste onzekerheid

Een aanbieder die zonder voorafgaande technische discovery geen fixed-price offerte wil afgeven, maakt daarmee een professionele grens zichtbaar: de legacy-risico’s zijn nog niet voldoende onderzocht om als vaste verplichting te prijzen. Dat is iets anders dan geen prijsdiscipline bieden. Het verschuift de vraag naar de juiste volgorde: eerst de onbekende technische staat vaststellen, daarna bepalen welk deel van het werk een vaste prijs kan dragen en welk deel nog begrensd moet worden.

Voor een shortlist biedt een transparante modulaire kostenstructuur daardoor meer houvast dan één ongedifferentieerde aanneemsom. Daarin staan discovery, legacy-sanering, Microsoft 365-configuratie, validatietesten, hypercare en beheer als afzonderlijke posten. Die opsplitsing maakt per post zichtbaar of deze inbegrepen is, welke aannames eraan verbonden zijn en waar de grens ligt tussen voorzien werk en aanvullend werk. Zij maakt ook mogelijk om de bouwprijs niet los te beoordelen van de kosten die ontstaan vóór livegang, tijdens validatie en in de periode direct erna.

De selectievoorwaarde is dus niet dat ieder onderdeel al volledig vastligt voordat een leverancier wordt gekozen. De voorwaarde is dat onbekendheid niet wordt verborgen in algemene randvoorwaarden. Een voorstel kan onzeker werk vooraf laten onderzoeken of het als herkenbare, afzonderlijke post begrenzen. Wanneer beide ontbreken, wekt een vaste prijs een mate van financiële afbakening die niet aansluit op de onderzochte staat van de legacy-omgeving.

Dat onderscheid raakt zowel budget als bedrijfsvoering. Sanering die niet zichtbaar is gemaakt, kan later buiten de geaccepteerde scope vallen. Dan ontstaat financiële druk op herstelwerk op het moment dat de uitvoering al loopt, met scopegeschillen als concrete beperking van een vage vaste prijs.