Software ontwikkelen op basis van softwarecomponenten, ofwel Component Based Development (CBD) komt steeds dichterbij. Hergebruik van software en productiviteitsstijging van ontwikkelaars zijn de beloften die de software-industrie de markt al jaren voorhoudt. Succesvolle toepassingen zijn echter schaars. Het beschikbaar stellen van standaardcomponenten, opleiding en dienstverlening vormen de nieuwe wapens van Compuware om CBD realiteit te laten zijn.
Compuware deed zijn aankondigingen tijdens een conferentie voor gebruikers van de ontwikkelomgeving Uniface in Parijs. Verantwoordelijke voor de productontwikkeling van Uniface is Edwin Schumacher. "Met het product Uniface kan al twee jaar software ontwikkeld worden op basis van componenten. Iedereen erkent de voordelen, hergebruik en hogere productiviteit, ervan." De aansluiting van de geavanceerde technologie moet beter aansluiten op de markt. CBD is een stap in de richting van de industrialisering van het softwareproces. De softwarebranche maakt volgens Schumacher dezelfde ontwikkeling door als bijvoorbeeld de auto-industrie, die momenteel ook op basis van een ontwerp uit componenten een assortiment aan auto’s assembleert.
Technische drempels
"Er zijn geen technische drempels meer voor CBD. De aandacht gaat nu meer uit naar het scheppen van de juiste voorwaarden." Vergeleken met klassieke ontwikkelmethoden, waarbij eenmalige en zogenoemde monolithische applicaties gebouwd worden, vereist CBD een volstrekt nieuwe denk- en werkwijze. Zo moet volgens Schumacher op een andere manier ontworpen en gemodelleerd worden: "Je moet in je ontwerp anticiperen op hergebruik." De organisatie van de ontwikkelafdeling is dus van cruciaal belang.
Vandaar dat Compuware zich naast productleverancier meer profileert als dienstenleverancier die organisaties help om met CBD uit de voeten te komen. Het bedrijf organiseert workshops over de ontwikkelingsmethodologie van Uniface en over het modelleren van softwarecomponenten. Een van de struikelblokken bij het toepassen van CBD is dat bedrijven beginnen zonder standaardcomponenten. Bij het bouwen van de eerste applicatie moeten alle componenten volgens nieuwe methodologische regels ontwikkeld worden. Dit blijkt vaak een zeer moeizame exercitie te zijn, waarbij van hergebruik en productiviteitsstijging nog geen sprake is. Om deze drempel te verlagen en de voordelen van CBD al sneller voelbaar te maken heeft Compuware een website ingericht (http://www.componentstation.com ) waar alle beschikbare standaard Uniface-softwarecomponenten op gepubliceerd zijn. Licentiehouders van Uniface hebben momenteel al toegang tot een kleine driehonderd componenten.
Ook is het Amerikaanse bedrijf, dat het Nederlandse Uniface in 1994 kocht, actief in consultancy rond CBD. Zowel ondersteuning van projectplanning als volledige verantwoordelijkheid van de ontwikkeling van applicaties neemt Compuware daarbij voor zijn rekening.
Nooit doorgebroken
Het denken in componenten volgt uit object oriëntatie (OO). Schumacher: "OO is nooit doorgebroken omdat het veel te technisch is. Het bouwen van een rendabele OO-toepassing vergt veel technische kennis." Het onderscheid tussen objecten en componenten is nogal vaag. Objecten zijn in het algemeen technisch georiënteerde stukjes software, zoals een scherm en een menu. Componenten zijn stukken software met een betekenis voor de bedrijfsvoering. ‘Klant’, ‘factuur’ en ‘order’ zijn hier goede voorbeelden van. Daarom is voor het samenstellen van componenten niet zozeer technische, maar vooral bedrijfskundige kennis nodig.
Een van de problemen met CBD is het bepalen van de omvang van een component. "Kleine componenten zijn vaak herbruikbaar. Grote componenten doen de productiviteit toenemen, maar zijn minder toepasbaar." Over het ontwerp van softwarecomponenten moet dus goed nagedacht worden, omdat het consequenties heeft voor meer dan één applicatie. Als je met mensen uit het bedrijfsleven praat, moeten de bouwstenen altijd uit begrijpbare functies bestaan. Schumacher vergelijkt het met een autospiegel. Het component ‘autospiegel’ bestaat vaak uit het spiegeltje en een omhulsel. Als één van de twee stuk is, vervangt een gebruiker het geheel.
Scheiding
Uniface-componenten zijn verder op basis van standaarden als Dcom en Corba ook vast te knopen aan software van derden. SAP bijvoorbeeld. Compuware brengt in zijn ontwikkeltraject een scheiding aan tussen de constructie, de assemblage en het ingebruiknemen van applicaties. De Uniface Deployment Engine zorgt voor onafhankelijkheid ten opzichte van de technische infrastructuur. Het is een laag die zorgt voor de interactie tussen de Uniface-applicatie en het specifieke platform waar de software op draait.
Compuware verwacht veel van Uniface en CBD-technologie in het algemeen. Volgens Gartner Group vindt in 2001 zo’n 60 procent van de nieuwbouw van applicaties plaats op basis van standaard componenten. De productontwikkeling van grote applicatieleveranciers als Baan en SAP lijken deze voorspelling te ondersteunen.