Henk Arendse

Dingen die mij bezig houden

Header Image

ERP

ERP is de afkorting van Enterprise Resource Planning. ERP systemen ondersteunen productiebedrijven bij het plannen van de materialen en mensen. Dit wordt ook wel logistiek genoemd.

Productiebedrijven zijn tegenwoordig heel innovatief en gespecialiseerd. En de ERP systemen die de bedrijven moeten ondersteunenen, zijn dus ook heel complex. Een eenvoudige handeling (bijvoorbeeld het uit magazijn halen van een materiaal) heeft gevolgen voor de voorraadadministratie, voor de financiële administratie, voor de productieplanning en voor nog veel meer. Al die gevolgen worden direct bepaald en online doorgevoerd.

Bij mijn werkgever Infor werkte ik als software engineer aan het Infor LN systeem. Ik hield me bezig met de volgende dingen:

Ontwikkeling nieuwe functionaliteit voor nieuwe versies

development

Twee keer per jaar brengt Infor een nieuwe release van onze software uit, met nieuwe functionaliteit. Dit betekende voor mij: ontwerpen, programmeren, testen en concept help-teksten aanleveren.

Programmeren deden we in een 4GL programmeertaal met daarin SQL-opdrachten om de database te benaderen. Verder natuurlijk report- en form editors. Dit maakt allemaal onderdeel uit van de eigen ERP LN ontwikkelomgeving.

Als ik het zo formuleer, dan lijkt het nog wel eenvoudig. Maar niets is simpel in een ERP-pakket dat door duizenden totaal verschillende bedrijven in totaal verschillende landen wordt gebruikt om totaal verschillende producten te maken.

Het begrijpen en gebruiken van de programmeeromgeving is nog wel het meest eenvoudige onderdeel. Veel moeilijker is het begrijpen van de functionaliteit. Daar zit de echte uitdaging.

Eerst heb ik veel gewerkt aan de modules voor kostprijsberekening en voor- en nacalculatie van productieopdrachten. Later werkte ik aan de MRP Plannings modules.

Onderhoud bestaande versies

kantoorlargeNaast de ontwikkeling van nieuwe versies, werkte ik ook aan het onderhoud van de bestaande versies. Hierbij ging het om het oplossen van fouten in bestaande versies.

Ook bijzonder boeiend, omdat ik hierdoor meer inzicht kreeg in de manier waarop klanten met ons systeem werken. Infor heeft veel klanten, over de hele wereld. Elke klant heeft weer zijn eigen werkwijze, met eigen combinaties van instellingen, met andere data waardoor het systeem zich bij elk klant weer anders gedraagt.

En zo kan het voorkomen dat er een fout wordt gemeld, en dat de oorzaak van die fout uiteindelijk in een onderdeel van de software blijkt te zitten, dat al 20 jaar niet gewijzigd is. En dus ook al 20 jaar lang zonder problemen door vele klanten is gebruikt. Maar juist bij deze ene klant gaat het dan wel fout, omdat hij het systeem op een bepaald onderdeel net wat anders gebruikt dan andere klanten.

 

Opzetten en coördineren van automatische testen

trafficlightIedereen heeft met automatisering te maken. Ook wij software-ontwikkelaars ontkomen er niet aan: software wordt tegenwoordig automatisch getest, door test-software. Dus maakten wij bij Infor ook software om onze software te testen.

In de afgelopen jaren heb ik hiervoor de benodigde technieken en werkwijzen ontwikkeld. Dat viel niet mee, want ERP systemen vallen in een categorie die erg moeilijk automatisch te testen is (database intensieveonline transactiesystemen).

Er waren dus veel problemen en uitdagingen waar creatieve oplossingen voor gevonden moesten worden. Een bijzonder interessant traject! En het resultaat mag er zijn: de software wordt nu automatisch getest in vele duizenden automatische testen. Elke nacht draait er een job, die al die testen uitvoert. Daarnaast worden de testen op ad-hoc basis uitgevoerd. Als ik een verandering maakte in de software, dan startte ik eerst een aantal automatische testen op, voordat ik die aanpassing vrijgaf. Dat bespaart veel tijd; anders had ik al die testen handmatig moeten doen.

Software engineers werken nu sneller en leveren betere software op. Er kunnen nu aanpassingen in de software gemaakt worden die voorheen niet gemaakt konden worden, omdat het handmatig testen dan maandenlang zou duren.