Overslaan en naar de inhoud gaan

De voor- en nadelen van maatwerk binnen je open source-website

Wat als de open source-website die je gebruikt net niet biedt wat je zoekt? Dan kun je wachten tot de open source-community een oplossing voor je ontwikkelt en test, of je kunt zelf een uitbreiding laten maken.

Een programmeur die custom code oftewel maatwerk programmeert op zijn laptop.

Wat als de open source-website die je gebruikt net niet biedt wat je zoekt? En tussen alle modules, plug-ins, components en widgets kun je niet de functionaliteit vinden die je nodig hebt? Dan kun je wachten tot de open source-community een oplossing voor je ontwikkelt en test, of je kunt zelf een uitbreiding laten maken. Maar wat zijn hiervan de consequenties? Met andere woorden: wat zijn de voor- en nadelen van maatwerk integreren in je open source-website?

De voordelen van maatwerk

Je kunt helemaal naar wens een eigen stukje functionaliteit laten maken. Of het nu gaat om een koppeling tussen je website met een extern systeem, of om een productconfigurator zodat bezoekers op je website zelf een product kunnen samenstellen.

De maatwerkoplossing die je krijgt is specifiek voor jouw doeleinden geprogrammeerd. Hierdoor ziet de functionaliteit er qua beheer vaak simpel uit want je zit niet opgescheept met functionaliteiten die je toch nooit gebruikt.

Nog een voordeel is dat je de functionaliteit na de ontwikkeling meteen kunt gaan gebruiken. Bij open source-techniek zie je dat de ontwikkelaar vaak de techniek nog maandenlang in beta- of developmentmode laat om alle bugs eruit te halen. Daarnaast kan het zijn dat een ontwikkelaar hier niet al te veel tijd voor heeft en dat dit proces soms te lang op zich laat wachten.

  • Je kunt gebruik maken van de functionaliteit die specifiek voor jou gemaakt is.
  • Geen overbodige toeters en bellen. Alleen de functionaliteit die jij nodig hebt.
  • Het proces gaat zo snel als jij wilt. Je hoeft niet te wachten op de community.

 

De nadelen van maatwerk

Het voornaamste is dat het geld kost. Natuurlijk kost het ook geld wanneer je een website laat bouwen op basis van open source-software, maar dan betaal je alleen voor design, configuratie en eventueel de ontwikkeling van een template.

Iets laten programmeren is meestal duur. Ga maar na: een gemiddelde programmeur kost € 51,- ex. btw. Een vrij simpele functionaliteit is binnen een dag gemaakt, maar wordt het een beetje ingewikkelder dan is het niet gek dat je een week bezig bent met programmeren. Tel daarbij op de besprekingen en communicatie met de opdrachtgever, de test en bugfixing-periode, en je zit zo op twee weken. 80x51= € 4.080,- ex. btw.

Naast de initiële investering moet je ook rekening houden met onderhoudskosten. Net als alle andere software moet jouw maatwerkonderdeel worden onderhouden. Software werkt namelijk op een server, wordt geladen via browsers en werkt samen met andere onderdelen van je website zoals het cms zelf en andere plug-ins of modules. Deze zijn allemaal onderhevig aan verandering, en afhankelijk daarvan moet jouw maatwerk mee veranderen.

Een ander nadeel is dat je naast afnemer en gebruiker ook betatester bent geworden. Een hoop van het testwerk wordt gedaan door de open source-community. Dit gebeurt, als het goed is, heel open en transparant waarbij problemen worden gemeld en door de maker van de module of plug-in worden verholpen. Dit zijn bijvoorbeeld de openstaande problemen bij de meest gebruikte WYSIWYG-editor voor Drupal. 

Blijf op de hoogte van internetontwikkelingen en meld je aan op onze nieuwsbrief

De programmeur van de maatwerkoplossing kan natuurlijk ook zelf bugtesten, maar er zijn, afhankelijk van de functionaliteit, vaak te veel variaties om te testen. Daarom is het een goed gebruik dat de programmeur de functionaliteit test en er een bugfixing-periode wordt afgesproken. Na deze periode valt het repareren van bugs onder onderhoudskosten.

Maatwerk zorgt ervoor dat je afhankelijk wordt. Er is niemand die jouw maatwerkfunctionaliteit beter begrijpt dan de programmeur die het gemaakt heeft. En een andere programmeur verder laten werken aan een stuk maatwerk heeft als consequentie dat die programmeur zich moet inwerken, wat meer geld kost. Daarnaast zijn er ook een hoop verschillen in programmeurs. De een werkt rommelig, de ander heel secuur. De ene kiest voor een omslachtige oplossing, de ander denkt meer in simpel en elegant. Het is als leek moeilijk te beoordelen of een maatwerkoplossing nu goed is of niet. In de praktijk is een opdrachtgever tevreden zolang het werkt en zijn er pas bedenkingen als de functionaliteit er mee op houdt en een second opinion met kreten als ‘spaghettibende’ aangeeft dat het niet helemaal goed in elkaar zit.

  • Maatwerk kost geld, soms veel geld, en de onderhoudskosten worden onderschat.
  • Je bent niet alleen gebruiker maar ook betatester.
  • Je maakt je afhankelijk van de programmeur.

Hoe kun je het beste een maatwerkproject aangaan?

Probeer eerst een klein project met de ontwikkelaar die je gaat gebruiken. Desnoods een analyse van een huidig project of betaald advies voor een nieuw project. Het gaat erom dat je kunt testen of de partij waarmee je in zee gaat daadwerkelijk levert wat er wordt afgesproken.

Iets op maat laten ontwikkelen kost vaak veel geld en tijd, daarnaast zit je ook na oplevering vast aan deze partij voor bugfixing of doorontwikkeling.

Ga je eenmaal over tot het geven van de opdracht, zorg er dan voor dat je duidelijke afspraken maakt en dat die in een offerte staan. Pas wanneer je het zwart op wit hebt, kun je er vanuit gaan dat het ook zo gebeurt.

Denk hierbij aan de volgende zaken:

  • Welke functionaliteit wordt opgeleverd? Maak zelf een lijstje met de minimale eisen waaraan hetgeen dat je laat maken moet voldoen. Zorg dat deze eisen genoemd worden in de offerte.
  • Welk doel heeft de maatwerkoplossing? Soms verliezen we onszelf in de functionaliteiten en vergeten we waar het ook alweer om draait. Door een duidelijk doel af te spreken, heb je deze bij elke beslissing duidelijk voor ogen.
  • Hoe lang wordt over de ontwikkeling gedaan? Spreek duidelijke milestones af en houd er rekening mee dat dit ook consequenties voor de opdrachtgever heeft. Denk aan het op tijd aanleveren van gegevens of bugs.
  • Hoe wordt er omgegaan met bugs? Spreek een vaste periode af waarin dit binnen de projectprijs wordt verholpen.
  • Wil je de afhankelijkheid beperken? Spreek dan af dat de ontwikkelaar documentatie oplevert waarin de functionaliteit wordt beschreven. Dit kost natuurlijk extra geld maar kan de overgang naar een andere programmeur versoepelen.

Heb je vragen of een reactie naar aanleiding van dit artikel? Ik lees en beantwoord ze graag in het reactiegedeelte onderaan dit artikel.

 

Heb je iets aan deze content gehad? Laat weten hoe je ons waardeert.

Meld je aan voor onze nieuwsbrief

En je ontvangt een overzicht van onze nieuwste artikelen. Met onderwerpen zoals; de laatste webdesign trends, SEO tips, conversie optimalisatie, Joomla, Drupal en Wordpress ontwikkelingen.

Reacties

Stel nu dat het maatwerk een (gesloten source) module is, die bovenop de open source cms komt. Vaak zie je complete MVC web apps worden geintegreerd in het CMS. Is de betreffende web app dan ineens ook open source of kan daar wel auteursrecht op worden uitgeoefend?

Standaard avatar OpenSource Lie… 14.09.2016 - 15:40

Stel nu dat het maatwerk een (gesloten source) module is, die bovenop de open source cms komt. Vaak zie je complete MVC web apps worden geintegreerd in het CMS. Is de betreffende web app dan ineens ook open source of kan daar wel auteursrecht op worden uitgeoefend?

Standaard avatar OpenSource Lie… 14.09.2016 - 15:41

Beperkte HTML

  • Regels en alinea's worden automatisch gesplitst.