Automatiseer het onderhoud
Onderhoudsprogrammeurs zijn te veel tijd kwijt met het analyseren en aanpassen van verouderde broncode. Het zou beter zijn dit proces te automatiseren met behulp van tools.
Dat stelt Niels Veerman, die maandag 15 januari promoveerde aan de Vrije Universiteit op dit onderwerp. Softwaresystemen zijn constant onderhevig aan veranderingen en worden daardoor steeds complexer. Daarbij gaat het niet alleen om zoiets als het jaar 2000-probleem of de invoering van de euro, maar ook een nieuw besturingssysteem, een databasemigratie, veranderende gebruikerswensen of nieuwe wetgeving kunnen aanleiding zijn voor het moeten doorvoeren van structurele aanpassingen. Operationele systemen stammen echter vaak nog uit de jaren ’70 en ’80. Ze zijn geschreven in klassieke programmeertalen, waarvan Cobol de belangrijkste is. Analyse van deze programma’s is lastig, omdat objectoriëntatie, procedures en lokale variabelen er nog niet in gebruikt worden. Onderhoudsprogrammeurs zijn daardoor veel tijd kwijt met het leren begrijpen van legacysystemen. Andere factoren die de analyse bemoeilijken zijn dat gegevens vaak zijn opgeslagen in verouderde databanken, dat een ‘intelligente’ programmeeromgeving ontbreekt en dat het over het algemeen om enorme hoeveelheden code gaat. Het doorvoeren van aanpassingen kost daardoor veel tijd. Veerman in zijn proefschrift: “Uit diverse studies blijkt dat meer dan de helft van de kosten van software gemaakt wordt na oplevering. Van deze kosten wordt weer de helft besteed aan het analyseren van de code, een kwart aan testen en slechts 5 procent aan het doorvoeren van de eigenlijke wijziging.”Het analyseren en aanpassen van legacysystemen gebeurt nu nog grotendeels handmatig.
Die aanpak is volgens Veerman echter foutgevoelig, inefficiënt en inflexibel. Het zou beter zijn om analyses en aanpassingen te automatiseren met gereedschappen. Veerman: “Er bestaan commerciële tools voor algemene aanpassingen, zoals een veel voorkomende migratie. Omdat organisaties vaak echter heel specifieke aanpassingen moeten doen, loont het de moeite om tools op maat te maken. Daarvoor bestaan ontwikkelomgevingen die zijn gebaseerd op generieke taaltechnologie.” Daar-mee kan de broncode worden ontleed aan de hand van een grammatica die de betreffende taal beschrijft. Het resultaat is een ‘parse tree’, een boomstructuur waarin de elementen van de code gerepresenteerd zijn in de structuur zoals ze in de code voorkomen. Met behulp van dezelfde ontwikkelomgeving kunnen transformatieregels worden geschreven, die delen van de broncode aanpassen. Veerman schets in zijn proefschrift de voordelen van deze benadering: “De ontwikkeling en afstemming van de ‘tooling’ kan enige tijd in beslag nemen. Gedurende deze periode kan het reguliere onderhoud gewoon doorgaan. Op het moment dat de ‘tooling’ beschikbaar is wordt de meest recente versie van de broncode aangeleverd. Deze wordt vervolgens automatisch aangepast en binnen korte tijd opgeleverd, zodat het reguliere onderhoud niet ‘bevroren’ hoeft te worden en eventuele versieproblematiek wordt vermeden.”
OS-software voor tooling
Op www.meta-environment.org vind je een open source ontwikkelomgeving op basis van generieke taaltechnologie. Het volledige promotieonderzoek van Niels Veerman kun je nalezen op www.cs.vu.nl/~nveerman/research/thesis.pdf.
10-02 Raadsels rond computerstoring Groningen
09-02 'Ook met cookiewet is gebruiker niet anoniem'
07-02 Detron zoekt naar scherper profiel
07-02 De lange weg naar ERP
01-02 Imtech ICT hoort bij tien grootste dienstverleners
31-01 Infotheek profiteert van overjarige hardware
27-01 iPad is favoriet in de zakelijke markt
25-01 Recessie schrikt ICT-bedrijven niet af bij...
23-01 Boek belicht tien effecten van opkomst apps
20-01 'Oracle wil iPad van de bedrijfs-ICT worden'
03-02 SLTN en ICTroom openen Datacenter Brabant
01-02 Spoelstra spreekt: Het is helemaal geen crisis
31-01 Viafrica levert diensten voor Nice ICT-centra...
30-01 Wennen aan cybercrime kost tijd
26-01 Be Informed komt met oplossingen voor overheden
23-01 Boek belicht tien effecten van opkomst apps
23-01 Sogeti publiceert boek over app-effecten
20-01 EU zoekt Nederlandse vrijwilligers voor...
19-01 Van oude IT, de dingen, die voorbijgaan…
13-01 Brein heeft last van Brein
|
|
Gerelateerde artikelen

