Naar inhoud springen
Van Oosten Advies B.V.

Automatisering

Maatwerk webapplicatie laten maken voor een proces dat geen enkel product dekt

Het proces draait op een werkmap die niemand meer durft aan te raken. Er zijn drie versies in omloop, de formules zijn ooit gemaakt door iemand die er niet meer werkt, en alles wat die werkmap niet kan gaat per e-mail. U heeft gekeken wat er te koop is, maar elk product doet net iets anders dan wat u werkelijk doet.

Een maatwerk webapplicatie is één applicatie, gebouwd voor één organisatie, met uw begrippen en uw stappen erin. Geen bestaand product dat in vorm wordt gebogen, maar software die het proces volgt zoals het bij u loopt. Dat is niet automatisch de betere keuze. Het is de juiste keuze wanneer het proces zelf het onderscheid van uw organisatie is, of wanneer geen enkel bestaand product de combinatie van gegevens en stappen dekt die u nodig heeft. In alle andere gevallen is kopen goedkoper, en dan zeg ik dat.

Wanneer maatwerk zich terugverdient

Maatwerk kost meer dan een abonnement en het blijft van u, met onderhoud en al. Dat verdient zich terug in situaties als deze.

  • Het proces draait op een gedeelde werkmap met formules die niemand meer durft te wijzigen, en op e-mail voor alles wat die werkmap niet kan.
  • U heeft bestaande producten bekeken en steeds hetzelfde antwoord gekregen: het kan bijna, mits u uw manier van werken aanpast aan het product.
  • Wat u doet is precies het onderscheid met uw concurrenten. Dat wilt u niet inleveren voor de standaard-inrichting van een leverancier.
  • Meerdere mensen werken tegelijk in dezelfde gegevens, en de fouten die daaruit ontstaan kosten inmiddels meer dan een applicatie.
  • U heeft gegevens uit twee of drie systemen op één scherm nodig, en dat scherm bestaat nergens.
  • Er ligt een eis rond toegang, goedkeuring of aantoonbaarheid waaraan losse bestanden niet voldoen.

Wat de opdracht omvat

Bouwen is het kortste deel. Het meeste werk zit ervoor en erna.

  • Het proces uitschrijven zoals het werkelijk loopt, inclusief de uitzonderingen die alleen in iemands hoofd zitten.
  • Afbakenen wat versie één wel en niet doet, en dat vastleggen voordat er een regel code staat.
  • Ontwerp van datamodel, schermen en rechten: wie ziet wat, wie wijzigt wat, en wat er gebeurt als twee mensen tegelijk iets aanpassen.
  • Koppelingen met wat er al draait, via API of bestandsuitwisseling, zodat gegevens op één plek worden onderhouden en niet op drie.
  • Bouw in gangbare, breed ondersteunde techniek, zodat een volgende ontwikkelaar het kan overnemen zonder eerst iets zeldzaams te leren.
  • Migratie van wat er in de bestaande bestanden staat, inclusief het opschonen dat daarbij aan het licht komt.
  • Hosting, back-ups, een herstelprocedure en een testomgeving, zodat een wijziging niet meteen in productie landt.

Wat u overhoudt

Een werkende applicatie, en alles wat nodig is om er zonder mij mee verder te gaan. Dat laatste is geen extra dienst, het is de definitie van af.

  • De applicatie, draaiend op hosting die op naam van uw organisatie staat. Niet op mijn account, niet binnen mijn abonnement.
  • De volledige broncode met geschiedenis, in een repository die van u is. Het intellectueel eigendom gaat bij oplevering en volledige betaling over op uw organisatie; dat leggen we vooraf schriftelijk vast.
  • Een technische overdracht: hoe het is gebouwd, waarom die keuzes zijn gemaakt, hoe u uitrolt, waar sleutels en instellingen staan en hoe u iemand anders toegang geeft.
  • Een korte instructie voor de mensen die er dagelijks in werken, en een aparte voor degene die het beheert.
  • Een lijst met wat bewust buiten versie één is gebleven, zodat de volgende stap een besluit is en geen ontdekking.

Wat het niet is

  • Geen vervanging van software die gewoon te koop is. Doet u iets wat veel andere organisaties ook doen, dan is een bestaand product goedkoper en beter onderhouden, en dat is dan mijn advies.
  • Geen constructie die u aan mij bindt. Hosting, code en kennis blijven niet bij mij liggen.
  • Geen systeem dat uw hele bedrijfsvoering overneemt. Eén proces goed gebouwd, met koppelingen naar wat er verder draait.
  • Geen prototype dat per ongeluk in productie belandt. Wat wordt opgeleverd is gebouwd om beheerd te worden, met back-ups, logging en een manier om te herstellen.
  • Geen eindeloos project. Loopt een eerste versie richting een jaar bouwen, dan is de scope verkeerd gekozen en niet de techniek.

Veelgestelde vragen

Wanneer is maatwerk juist het verkeerde antwoord?

Wanneer het proces niet onderscheidend is. Boekhouden, salaris, een webshop, een reserveringsagenda: daar bestaan producten voor die door hele teams worden onderhouden en die u gebruikt voor een fractie van wat bouwen kost. Maatwerk verdient zich terug wanneer het proces zelf het onderscheid is, of wanneer geen product de combinatie van gegevens en stappen dekt die u nodig heeft. De eerlijke volgorde is: eerst kijken of het bestaat, dan pas bouwen. Dat gesprek kunt u ook los afnemen, zonder dat er een bouwopdracht uit hoeft te komen.

Van wie is de code?

Van u, mits dat vooraf zo wordt afgesproken. Standaard blijven auteursrechten bij de maker, dus voor een bouwopdracht leg ik expliciet vast dat het intellectueel eigendom bij oplevering en volledige betaling overgaat op uw organisatie. Praktisch nog belangrijker: de repository staat vanaf dag één op een account van uw organisatie, niet op het mijne. Wat ik behoud is generieke kennis en ervaring, niet uw applicatie.

Wat als u ermee stopt of onder een bus komt?

Een terechte vraag bij een praktijk van één persoon, en het antwoord hoort niet 'dat gebeurt niet' te zijn. Het antwoord is dat de opdracht zo wordt ingericht dat mijn verdwijnen een ongemak is en geen ramp: uw eigen hosting-accounts, uw eigen repository, gangbare techniek in plaats van iets zeldzaams, en documentatie geschreven voor een ontwikkelaar die mij nooit heeft gesproken. De toets die ik daarop leg is simpel: kan een vakbekwame ontwikkelaar dit binnen een dag draaiend krijgen op een schone machine, met alleen wat er in de repository staat? Zo niet, dan is het niet af.

Waar draait het en wie beheert het?

Op hosting die op naam van uw organisatie staat, bij een aanbieder die u kunt opzeggen zonder mij te bellen. Voor een applicatie van deze omvang kies ik een beheerde omgeving waarin back-ups en beveiligingsupdates zijn inbegrepen; dat scheelt u een serverbeheerder. Het beheer daarna kan bij uw eigen ICT-partij liggen, bij mij in een afgesproken vorm, of een tijd bij niemand: een applicatie die af is, mag ook stilstaan. Wat er wel moet gebeuren, staat in de overdracht.

Wat hoort er in de eerste versie te zitten?

Het pad dat het vaakst wordt gelopen, van begin tot eind, voor de mensen die het dagelijks lopen. Niets meer. Wat er niet in hoort: uitzonderingen die twee keer per jaar voorkomen, rapportages die nog niemand heeft opgevraagd, een rechtenstructuur voor rollen die de organisatie niet heeft, en instelbaarheid voor wensen die nog niet bestaan. Elk van die dingen vergroot de bouwtijd en wordt beter ontworpen zodra echt gebruik zichtbaar is. Een eerste versie die snel in gebruik gaat, leert u meer dan een complete versie die pas een jaar later wordt opgeleverd.

Wat bepaalt de prijs?

Het aantal schermen en stappen, het aantal koppelingen met bestaande systemen, de staat van de gegevens die mee moeten, en de eisen rond toegang en aantoonbaarheid. Koppelingen en datamigratie zijn de twee posten met de meeste onzekerheid; die begroot ik apart. De vorm spreken we vooraf af: een korte opdracht van enkele dagen om het proces uit te schrijven en de bouw te begroten, daarna nacalculatie met een afgesproken maximum, of een vaste prijs per resultaat zodra de scope scherp is. Een tarief noem ik in het eerste gesprek.

Een proces dat om een eigen applicatie vraagt?

Een kort kennismakingsgesprek is vrijblijvend. Schets wat er nu op spreadsheets en e-mail draait; ik zeg eerlijk of maatwerk hier de juiste keuze is, of dat u met iets bestaands beter af bent.