De Dienst Justitiële Inrichtingen (DJI) van het ministerie van Justitie zit in zijn maag met de oude, op Progress gebaseerde informatiesystemen. De dienst wil de Progress-ontwikkelaars van het eigen Shared Service Centrum ICT de komende maanden laten omscholen naar Java. Meer eigen Java-ontwikkelkracht moet de broodnodige vernieuwing van de ict wél laten slagen. DJI stopte onlangs met de ontwikkeling van het nieuwe systeem Cajis. Dat heeft twaalf miljoen euro gekost.
Hoewel Cajis, een informatiesysteem over gedetineerden, is mislukt, wil DJI doorgaan met de broodnodige vernieuwing van zijn primaire bedrijfssystemen. Waarschijnlijk neemt de dienst nu eerst een ander systeem onder handen: Jeugd, een informatiesysteem voor jeugdgevangenissen. Net als bij Cajis moet er een op Java-gebaseerde applicatie uitrollen, als opvolger van een oude Progress-toepassing.
Probleem is dat bij de ontwikkelaars van het Shared Service Centrum ICT van DJI te weinig Java-kennis bestaat. DJI is daarom bezig met een plan om de Progress-programmeurs om te scholen naar Java. Dit omscholingstraject vindt dit najaar plaats. DJI wil dan, wanneer de automatiseerders op cursus zijn, Progress-programmeurs inhuren om het onderhoud en eventuele aanpassingen aan de huidige systemen te laten uitvoeren.
Een woordvoerder van DJI wil geen toelichting geven omdat er Kamervragen zijn gesteld over het Cajis-echec. 'Het is goed gebruik dat het ministerie eerst de Tweede Kamer antwoord geeft. Dat moeten we nu eerst even afwachten.'
Gesneefd
DJI, het agentschap van het ministerie van Justitie dat gevangenissen en justitiële inrichtingen beheert, telt zo'n 19.000 medewerkers en meer dan honderd vestigingen verspreid over het land. Jaarlijks worden zo'n tachtigduizend mensen voor langere of kortere tijd ingesloten. Om de bedrijfsprocessen te ondersteunen, is er het primaire systeem Tulp (Ten UitvoerLegging Persoonsgebonden straffen). Dat bestaat uit vier deelsystemen: Jeugd (voor de jeugdgevangenissen), Fris (Forensische applicatie), Mits (TBS Klinieken) en GW (Gevangeniswezen). Het zijn verouderde en traag geworden systemen die begin jaren negentig in Progress ontwikkeld zijn.
DJI wil deze systemen vervangen door applicaties die in Java zijn ontwikkeld. De eerste poging, Cajis (Capaciteit en Justiabelen InformatieSysteem), is gesneefd. Dit moest de opvolger worden van het oude systeem voor de gevangenissen (GW). Dat kostte Justitie twaalf miljoen euro. Een van de oorzaken van dit echec was het ontbreken van voldoende Java-capaciteit bij het Shared Service Centrum ICT. DJI probeerde dit op te lossen door zeven programmeurs in te huren.
Klassieke foutenfestival
Uiteindelijk is het project mislukt door een aantal klassieke fouten, zoals een opdrachtgever (DJI) die door een gebrek aan een scherp doel steeds nieuwe eisen stelde, eindgebruikers die te weinig betrokken werden, een systeem dat te complex werd gemaakt en waarbij te veel in een keer moest worden gebouwd, een aannemer (het Shared Services Centrum ICT) die technisch tekort schoot, ongemotiveerd personeel door de vele tegenslagen en het ontslag van de externe Java-programmeurs, en het ondanks de regelmatig gegeven adviezen, niet bijsturen van het project.
Vreemd verhaal. Het lijkt toch veel logischer om de bestaande en kennelijk op zich nog wel functionerende Progress systemen te moderniseren in plaats van vervangen? Dat is veel goedkoper dan herbouw, voorkomt kapitaalvernietiging van bestaande herbruikbare onderdelen zoals de database en wellicht een deel van de business logica en de bestaande kennis en skills worden niet weggegooid. Is er iemand die denkt dat Java beter is dan Progress? Dat is zeker niet het geval. Als je de systemen nu in Java ontwikkeld en vervolgens weer 15 jaar verwaarloost zit je weer in precies dezelfde situatie als nu. Dat heeft met management en visie te maken, niet met technologie.
Helemaat eens met de vorige reactie. Daarnaast is het omscholen van de huidige progress medewerkers uitdagend vanwege het moeten aanleren van een compleet nieuw programmeer paradigma.
het dubbel onderhoud op de systemen in zowel menskracht als licenties zal ook kostenverhogend werken.
Andere organisaties hebben dit aan den lijve ondervonden.
@Peter: Sinds wanneer heeft de overheid verstand van ict? Ze hebben belastinggeld genoeg, ze hoeven het zelf niet op te hoesten, dus kunnen ze er ook (weer) mee wegkomen deze kapitaalvernietiging. En verstand van management en visie, zijn eveneens 2 zaken die ontbreken bij dit clubbie 🙂
De reden van deze overstap kan zijn omdat een – in Java gebouwd systeem – zich weer makkelijker laat outsourcen zodat er weer een rijks-ict-afdeling kan worden opgedoekt 🙂 Volgens mij is Progress kennis langzaam maar zeker (gestructureerd) aan het uitsterven.
Zo kunnen ze de interne Progressers (indien aanwezig) ook lozen, want hun kennis is dan niet meer nodig
Eens, plus dat de weg die nu blijkbaar wordt voorgesteld al jaren geleden ingezet is. En nu blijkt dat het niet gewerkt heeft doen ze net of ze nu pas het idee krijgen en gaan ze het nog een keer doen. Volkomen kansloos. Gewoon een opfriscursus Progress (ja ook Progress is de afgelopen 10 jaar veranderd) voor de interne medewerkers, een paar echt goeie lead consultants erbij, die zowel de problematiek als de techniek snappen, en ze kunnen weer jaren vooruit. Zonder koelkastsoftware. Want laten we eerlijk zijn, Java is toch nooit bedoeld voor de ontwikkeling van serieuze bedrijfssoftware?
Ik vraag me af wat er zo speciaal is aan dit “bedrijf” dat er geen gebruik gemaakt kan worden van bestaande oplossingen evt. iets aangepast voor kleine afwijkingen.
Wanneer ik aan een gevangenis denk, denk ik aan planning van de beschikbaarheid en onderhoud e.d. Dan denk ik aan software voor hotels en vakantieparken, maar ook ziekenhuisbedden en voertuigen. Wanneer ik aan de transportbewegingen denk van gevangenen (tussen gevangenissen en rechtzalen), denk ik aan een transportplanpakket. En wanneer ik aan de personeelsplanning denk, zijn er daar ook pakketten beschikbaar. En als laatste de financiële administratie en de gegevens over de “relaties”, dus het personeel en de “gasten”. Uit mijn ervaring denk ik als eerste aan een ORTEC, die een heel planpakket heeft voor verschillende branches en koppelingen heeft met div. financiële pakketten. Waarom moet altijd alles helemaal op maat opnieuw uitgevonden worden? En dan dus vaak nog met heel veel kosten en toch niet het gewenste resultaat.
Dit is in 2005 ook al gebeurd. Toen werd een deel van progress beheer omgeschoold tot oracle beheer en werden progress ontwikkelaars omgeschoold tot java ontwikkelaars sinds de afgelopen jaar hadden ze eindelijk weer wat progress ontwikkelaars indienst om de gewenste functionaliteit in hun progress applicaties weer in te bouwen. Moeten ze nu weer omgeschoold worden. Dan zien we bovenstaand bericht in 2015 weer terug komen wanneer het volgende java project weer gefaald is bij DJI en ze weer een nieuwe opstarten en alle progress applicaties nog fijn door draaien.
Grappig dat in geen van de reacties wordt gerept over de frase “door een gebrek aan een scherp doel”. Kennelijk een moeilijk te omzeilen valkuil. Eerst denken, dan doen; dus eerst een duidelijk en doortimmerd plan en dan pas bouwen. En ‘agile’ (wendbare) software ontwikkeling is bedoeld om een bepaalde mate van flexibiliteit te hebben in en gedurende de bouwfase, niet om het gebrek aan een goed ontwerp (plan) te ondervangen.
Java nooit bedoeld voor serieuze bedrijfssoftware??? Ik ga er even vanuit dat je nog nooit in een Enterprise omgeving buiten de overheid aan de bak bent gekomen anders zou jij deze opmerking nooit geplaatst hebben. J2EE staat hoger op de lijst binnen internationale organisaties dan wat dan ook.
Dit klinkt als een recept voor mislukking. Het oude systeem is kennelijk hard toe aan vernieuwing. Dus vervolgens gaan we een nieuwe techniek omarmen en alle bestaande ontwikkelaars omscholen naar een nieuwe taal. Een taal die fundamenteel anders denken vereist en bovendien minder krachtig is op het gebied van business logic.
Ik vind het moeilijk te geloven dat een project van 12 miljoen euro mislukt omdat de technologie niet zou deugen. Laten ze eerst beginnen met een goede projectorganisatie, vervolgens uitzoeken wat het te herbouwen systeem eigenlijk doet via reverse engineering (want documentatie zal er wel niet zijn). En dan gaan bedenken waarin eea opnieuw gebouwd wordt. Als je puur naar de kosten kijkt zou herbouw in Progress misschien wel eens het goedkoopste kunnen zijn. Geen omscholing en geen vertaling nodig naar een nieuwe ontwikkelomgeving.
Maar als ze daar écht niet weten hoe ze hun geld op moeten krijgen, dan wil ik ze met alle liefde mijn bankrekeningnummer geven 🙂
Uit het artikel blijkt nergens waarom er nu voor Java wordt gekozen. Java is wellicht meer portabel en flexibeler, maar over de behoefte daaraan lees ik niets.
De laatste paragraaf (Klassieke fouten festival) gaat over van alles behalve de implementatietaal.
Afijn in ieder geval weten we nu waarom de Politie extra inkomsten middels bekeuringen nodig heeft.