Ben Meijs is hoofdauteur van het boek ‘Enhancing the Quality of Abap Development’. Het is een duimdikke handleiding over het programmeren van SAP-toepassingen in deze taal, voor ontwikkelaars en hun bazen.
|
Meijs vindt van wel. De discipline is ver te zoeken. Op de informaticaopleidingen wordt het de leerlingen wel ingepeperd, toch krijgt de kwaliteit van de code in de praktijk weinig aandacht.
Hij constateert dit na een jarenlange ervaring met het de repareren van SAP-applicaties, geschreven in SAP-taal Abap. Een voorbeeld is het gereedmaken van bedrijfssoftware voor de euro. Een beetje programmeur zet de code zo op dat er wordt gewerkt rondom een ‘valuta’, die rekening houdt met een verandering van munteenheid. Helaas zit de gulden in veel code ingebakken; regels die lastig zijn om te zetten naar de euro.”
Er is onvoldoende vakmanschap, concludeert Meijs. Men komt van de opleiding af, krijgt twee of drie weken een SAP-cursus en wordt vervolgens ingezet. Geen wonder dat er bijna geen aandacht is voor kwaliteitsbegeleiding. “Zelfs een serieuze voorman komt in de hectiek niet toe aan het bekijken daarvan.”
Het wilde westen
In de inleiding tot het boek schrijven Meijs en zijn drie medeauteurs: “Hoe volwassen de taal is, blijkt niet altijd uit de toepassing ervan door programmeurs buiten SAP.” Foute ontwerpkeuzes resulteren in verkeerde facturen en onvolledige belastingrapportages. Onnodige wijzigingen kosten tijd en geld: “Wat een simpele aanpassing van een Abap-applicatie had moeten zijn, van gulden naar euro, daarvoor zijn dan een reeks van programmeerhandelingen nodig.”
Die problemen horen bij het leerproces, vinden de auteurs. Meijs: “Het is bij Abap al net zoals bij Cobol twintig jaar terug. De kenners van toen vergelijken hun begintijd ook met ‘Het Wilde Westen’.” “SAP-consultants en klanten namen optimale kwaliteit van de Abap-code onvoldoende serieus. Men vertrouwde op de deskundigheid van de programmeur.”
In Walldorf (het in Duitsland gelegen hoofdkwartier van SAP) heeft men er even over getwijfeld om Abap te vervangen door Java. Programmeurs voor Java zijn er eenvoudigweg meer dan Abap-kenners. Het is ook een taal waar je voor op universiteiten terecht kan.
Daar is men pas onlangs van teruggekomen, zegt Meijs, die dat opmaakt uit de contacten met de SAP-technici. “Ze geven hun twijfels toe. Maar door Abap objectgeoriënteerd te maken, loopt het de achterstand op Java in.” Bovendien, beargumenteert hij, er is veel Abap-code en de taal heeft een aantal sterke punten. Het is snel, stabiel en er zijn grote hoeveelheden data mee te verwerken. “Performance en versiebeheer is in Abap helemaal uitgekauwd. Java is meer voor de ontsluiting van Abap naar webapplicaties.”
Kortom, Abap is niet te vervangen door Java of een andere taal. “Twintig jaar legacy vervang je niet.” Volgens Meijs zijn bepaalde stukken code zo uitontwikkeld dat ze nauwelijks meer zullen veranderen. De basis van boekhouden in West-Europa bijvoorbeeld. Financiële applicaties kunnen daarom heel goed met standaardsoftware worden uitgevoerd. De logistieke kant heeft echter vaker behoefte aan maatwerk. Daarin ontstaan de brokken.
Core-dumps
Die praktijk was de aanleiding voor het boek. Meijs doet al zeven jaar de audits, keuring van toepassing en code, bij bedrijven. “Bij een van de klanten vlogen de core-dumps ze om de oren. Het gebeurde per dag een keer of acht. Het programma deed iets wat niet kan; delen door nul. Dat is een heel basale fout, en die werd niet netjes afgevangen. Een goede programmeur zorgt in zo’n geval voor een melding, en wel zo dat het systeem niet omvalt.”
SAP heeft er uiteraard tools voor. Maar het is Meijs te doen om een betere programmeerdiscipline.
Die begint met een goede organisatie en meer concreet voor SAP-toepassingen een raamwerk van programmeereisen. Meijs en collega’s besteden één hoofdstuk aan de organisatie en zeven aan de normen en waarden waaraan SAP-programmeurs volgens hun moeten voldoen. “Het invoeren van kwaliteitscontroles, zoals collega-checks, verbetert de technische kwaliteit sterk. Dat geld is snel terugverdiend.”
Waarom een boek, en niet een cursus?
Het boek was eerst. Ctac is echter bezig met het opzetten van een cursus, op basis van het boek.
Meijs: “Zo rolde het balletje toevallig.” Het combineert zijn passie voor het programmeren in Abap met die voor het verspreiden en delen van kennis. “Ik vind het leuk om ervoor te zorgen dat collega-programmeurs weten wat ze geacht worden te doen.”
Deze motivatie klinkt wellicht erg politiek correct, realiseert Meijs zich. Het schrijven van het boek was ook praktisch.
Ctact publiceerde in 1997 een boekwerkje; getiteld “A standard for system development with R3 environment.” Ondanks de beperkte oplage werd het boek in Nederland veel geraadpleegd. De laatste jaren steeg ook het aantal verzoeken om een nieuwe, bijgewerkte versie die ingaat op de nieuwe hulpmiddelen en taaluitbreidingen.
“We waren in oktober 2003 bij de grote SAP-bijeenkomst TechEd in Bremen. Toen vatten we het plan op om Abap-goeroe Andreas Blumenthal te vragen om voor die update een voorwoord te schrijven. Hij was erg enthousiast en vroeg ons waarom we het niet bij SAP/press onderbrachten.”
Ook een andere Abap-expert, Horst Keller, heeft het boek vooraf ingezien. “Op zijn verzoek pasten we één zinnetje aan, over unicode. Zijn ideeën daarover hadden we blijkbaar verkeerd opgevat. De rest van de tekst was goed.”< BR>
ik heb meer een vraag.
hoe heet de nieuwe boek en waar is deze te koop?
Gr, junny
ik heb meer een vraag.
hoe heet de nieuwe boek en waar is deze te koop?
Gr, junny