In de praktijk hebben we veelal te maken met bestaande legacy-applicaties waarin vaak een tiental en soms zelfs een honderdtal manjaren is geïnvesteerd. Het ombouwen van deze applicaties naar een DB2-database met referentiële integriteit, database triggers en constraints is te kostbaar. De applicatiegeneratoren die we gebruiken maken hier vaak geen gebruik van. Validaties en database-integriteit worden daarentegen programmatisch geïmplementeerd.
door Martin van Kolck
Het vervangen van 5250-schermen door een GUI met HATS, WebFacing, of andere ‘screenscrapers’ is niet de oplossing voor het bouwen van rich clients. Onze medewerkers die zich bezighouden met usability missen steeds weer user-interfacefunctionaliteiten die met voornoemde tools niet te realiseren zijn. Het geeft geen Windows look en feel en een 5250-scherm heeft relatief weinig data op het scherm. Meer een ‘poor client’ dan een ‘rich client’, en je blijft gebonden aan de 5250-datastream.
Wat dat betreft zijn de ontwikkelingen rond SOA en composite applications veelbelovend. Door het opzetten van een SOA-omgeving word je gedwongen je RPG-applicaties open te maken. Zowel de businesslogica als de databaseacties worden aangeroepen met API’s. Deze API’s worden aangestuurd met Web Services. System i-softwareleveranciers gebruiken voor de integratie met andere System i-applicaties al meer dan tien jaar API’s om de werking, na het uitbrengen van nieuwe releases, te kunnen blijven garanderen. Composite applications leveren nieuwe oplossingen door bestaande IT-oplossingen op een nieuwe manier te hergebruiken.
Als je bijvoorbeeld een order-entry-systeem hebt, dan maakt het niet meer uit of je de order invoert via een webshop, webportal, EDI, Notes CRM-applicatie, rich client op de desktop, of een mobile device. Uiteindelijk wordt in de legacy-applicatie telkens dezelfde API aangeroepen voor het invoeren van de order. Er is één API voor het berekenen van de verkoopprijs en er is één API voor het maken van een bevestiging.
In onderstaande klantencases worden een aantal oplossingen beschreven die gebouwd zijn op de bestaande legacy-applicaties van Eniac.
Grafisch Planbord en Grafische Bill of Material
Deze twee modules zijn gebouwd in samenwerking met de EniacBS-gebruikersvereniging. Het zijn twee voorbeelden van rich clients. De modules zijn gebouwd in Elipse/Java en hebben alle eigenschappen die je aan een rich cliënts stellen, zoals: per gebruiker bepalen welke velden en kolommen getoond moeten worden; per gebruiker schermgroottes, kleuren, lettertypes instellen; door dubbelklik op kolommen, sorteren op de kolom; zoeken deelomschrijvingen in alle kolommen.
Alle gegevens die worden getoond, komen uit de legacy-applicatie (zie afbeelding 1). Voor het herplannen van een werkorder wordt hetzelfde programma aangeroepen, of het nu via het 5250-scherm of via het grafisch planbord wordt gepland. Hetzelfde geldt voor de stuklijst- en routinggegevens.

Afbeelding 1: Grafische planbord in JAVA ATAG Verwarming
ATAG Verwarming BV is fabrikant en leverancier van hoogwaardige CV-toestellen en zonne-energiesystemen. ATAG bedient hiermee zowel de consumenten- als de zakelijke markt. Naast Nederland worden de toestellen inmiddels in vele Europese landen verkocht. ATAG heeft hierbij de ambitie om vernieuwend te zijn in techniek, prestaties en design.
ATAG maakt gebruik van EniacBS als back-office-systeem. Het complete bedrijfsproces wordt hiermee ondersteund. Aan de frontend zijn hierbij een aantal moderne systemen ontwikkeld, waarmee de vereiste flexibiliteit wordt bereikt. Een aantal voorbeelden ter verduidelijking.
Het eerste voorbeeld betreft de service-organisatie van ATAG. Het bedrijf heeft een 20-tal servicemonteurs in dienst die continu onderweg zijn om storingen te verhelpen bij de consument. De aansturing van deze monteurs, inclusief de administratieve afhandeling van een servicemelding, vereiste een mobiele oplossing. Het antwoord werd gevonden in het ATAG Service Systeem. Vanuit het backoffice-systeem worden alle meldingen direct in dit op Lotus Notes gebaseerde systeem gerepliceerd. Via een vaste workflow wordt de afspraak met de consument gepland en in de agenda van een monteur gepland. Deze heeft vervolgens de beschikking over alle relevante informatie van het CV-toestel en kan de verbruikte materialen en uren registreren. ’s Avonds repliceert de monteur deze informatie weer richting het backoffice-systeem, waarmee automatisch de administratieve afhandeling plaatsvindt.
Recentelijk is daarnaast het zogenaamde
dealerportaal gelanceerd (zie afbeelding 2).
De ATAG Select Dealers hebben daarmee de mogelijkheid om via een browser in te loggen op een portaal, waarin informatie
opgevraagd en geregistreerd kan worden.
Eén van de mogelijkheden is het registreren van garantiekaarten en ComfortGarantie-contracten. ATAG biedt daarmee de dealers de mogelijkheid om online de garantie- en contractgegevens in te voeren. Deze informatie wordt direct in het backoffice-systeem vastgelegd en wordt daarmee automatisch beschikbaar gesteld voor de serviceorganisatie.

Afbeelding 2: Garantiekaart in het ATAG-dealerportaal
Nelipak
Nelipak is Europa’s toonaangevende thermovormer, met opdrachtgevers over de hele wereld.?Nelipak ontwerpt, ontwikkelt en produceert in nauw overleg met de klant de meest uiteenlopende gethermovormde producten en blisters. In 2005 is Nelipak in Groot-Brittannië onderscheiden met de Star Award, een prestigieuze onderscheiding voor de beste verpakking van het jaar.
De afdeling Customer Service behartigt de belangen van de opdrachtgevers. De hierbij noodzakelijke informatie komt uit verschillende systemen. De behoefte aan een integraal inzicht in deze informatie was groot.
Door Eniac is voor het ontsluiten van deze info een portal ontwikkeld. Via deze op WebSphere gebaseerde portal krijgen de medewerkers van de afdeling Customer Service alle relevante informatie op een overzichtelijk scherm gepresenteerd (zie afbeelding 3).
Via de portaltechniek worden hierbij de verschillende systemen ontsloten. Tevens bestaat de mogelijkheid om orders in te voeren via de portal.

Afbeelding 3: Customer Service Portal in WebSphere
Een tweede voorbeeld van een WebSphere-applicatie is het afhandelen van de voorraadbewegingen in het magazijn. Middels een aantal handscanners en heftruckterminals worden de verplaatsingen van pallets geregistreerd. Deze functionaliteit is via een browser beschikbaar, waarbij de schermen gerealiseerd zijn via Java Server Pages (JSP). Onderliggend zijn frameworks als Struts, iBatis en Spring gebruikt.
Mibra Kantoormeubelen
Mibra Kantoormeubelen is producent van kantoormeubelen. Mibra ontwerpt, ontwikkelt en produceert kantoormeubelen en voert kantoorinrichtingprojecten uit. Zij doet dat onder de Office in Use-filosofie. Office in Use staat voor de dynamiek in het gebruik van de kantooromgeving en de wijze waarop Mibra Kantoormeubelen de gebruikers van die omgeving faciliteert om hun activiteiten optimaal uit te voeren.
Mibra gebruikt een uitgebreid dealernet voor de verkoop van hun producten. Deze dealers adviseren hun klanten middels de productcatalogus van Mibra bij de keuzes van nieuw kantoormeubilair. Elk jaar dient de productcatalogus bijgewerkt te worden met de nieuwe producten en prijzen. Dit is een tijdrovende bezigheid met veel kans op fouten. Het plaatsen van de order gebeurt middels een fax of telefonisch, waarna deze in het ERP-systeem wordt ingevoerd en bevestigd aan de dealer.

Afbeelding 4: Webshop met JSF
Om het een en ander eenvoudiger te maken, wil Mibra graag de productcatalogus op internet zetten, van waaruit de dealer direct de order kan plaatsen. In de webcatalogus kunnen productopties als een ander bladdecor, andere pootstellen etc. worden gekozen en kan de daarbij behorende meerprijs worden berekend. Indien de dealer zich aanmeldt op de website, krijgt hij direct zijn netto prijzen te zien en kan dan eenvoudig de order plaatsen. De businesslogica van deze webshop is dezelfde als die van het ERP-systeem op de System i.
De webshopmodule geeft de mogelijkheid om de producten in te delen in categorieën en om in verschillende talen de omschrijvingen vast te leggen. Dit ligt vast in de database op de System i. Hierbij zijn met name de Slavische talen een uitdaging vanwege de vreemde tekenset. Dit is opgelost door de database op te zetten in de Unicode-tekenset.
Middels de frameworks Spring en iBatis wordt de database op de System i benaderd. Deze frameworks dienen via een XML-file te worden geconfigureerd, maar de ontwikkelaar wordt hierin door Eclipse plug-ins geassisteerd. Als frontend is een oplossing op basis van Java Server Faces gerealiseerd. Voordeel van Java Server Faces is bijvoorbeeld dat middels gegenereerde Java-scripts de invoerwaarden worden gevalideerd. Ook hier wordt de ontwikkelaar middels Eclipse plug-ins geassisteerd.
Martin van Kolck van Eniac Business Solutions is bereikbaar via mvkolck@eniac.nl.
|