Een breed spectrum van objectoriëntatie

Pieter Wisse

Daphne Riksen is software specialist bij IBM Nederland, Software Groep. Zij is verantwoordelijk voor de marketing van produkten voor objectoriëntatie. Tijdens een gesprek passeerde het brede spectrum de revue waarop IBM wereldwijd actief is met objectoriëntatie.

 

 

objectgericht theezetten

Voor vele mensen blijkt het begin met objectoriëntatie moeilijk. Want de vereiste denkwijze is wezenlijk anders. Dàt is het wat het oude af- en het nieuwe aanleren zo lastig maakt. De kern van objectoriëntatie illustreert Daphne Riksen met een verhaal over een vermoeide bergbeklimmer. Hij is na een lange tocht toe aan een kop thee; daarvoor heeft hij gelukkig alles meegedragen.

Indien de dorstige toerist het complete proces van het theezetten zèlf stuurt, gaat de vergelijking met procedurele informatieverwerking op. Hij pakt een pannetje, vult het met water, plaatst een brander op de grond, steekt die aan, zet het gevulde pannetje op het vuur, pakt een kop, constateert dat het water kookt, hangt een theezakje in de pan, enzovoort totdat zijn kop met thee gevuld is.

Objectoriëntatie (OO) vertoont ander verloop van theezetten. De bergbeklimmer begint eigenlijk heel doelgericht door aan een kop om thee te vragen. Daarmee houdt zijn directe sturing van het proces vooralsnog op. Het is nu de kop die zich met (warme) thee moet vullen. Daartoe bestookt de kop zonodig andere objecten met vragen. In dit geval gaat de vraag uit naar de pan om een bepaalde hoeveelheid warme thee in de kop uit te schenken. Als die warme thee daar niet is, moet de pan maar regelen dat het zover komt. Dat betekent onder meer een vraag aan de brander. Enzovoort. Ook de bergbeklimmer kan trouwens van enig object een vraag krijgen om een bepaald resultaat te verzorgen.

Kenmerkend voor OO is dat informatieverwerking verspreid gebeurt. Elk object verzorgt een gedeelte, en omvat daarvoor ook de relevante operaties èn informatie. Zoals gezegd is dat onvergelijkbaar met de procedurele benadering. Daarom ook kost omschakeling naar OO meer tijd dan van de ene naar een andere procedurele benadering en/of van een programmeertaal van de derde naar één van de vierde generatie.

 

 

nieuwe ontwikkelbenadering

Met de objectgerichte denkwijze verandert ook de manier van ontwikkelen. Het accent komt sterker op conceptuele modellering te liggen. Omdat het feitelijke programmeren nauwelijks meer los te zien is van ontwerpactiviteiten, is ontwikkeling door verschillende (groepen) medewerkers tijdens strikt achtereenvolgende projectfasen zinloos en zelfs riskant. In plaats daarvan ontwikkelen medewerkers complete onderdelen van een informatiesysteem. Voor samenhangend resultaat moeten zij intensief communiceren. Daarom telt het optimale ontwikkelteam niet meer dan 4 à 5 mensen.

Tekenend voor het verschil in ontwikkelbenadering is verder de vraag wat in een wereld van objecten functiepunten nog betekenen.

De voordelen van OO komen trouwens niet onmiddellijk. De ervaring leert dat het eerste project dat volgens OO plaatsheeft, tenminste niet langzamer verloopt dan anders. Voor hergebruik geldt natuurlijk per definitie dat winst pas tijdens het tweede project en later mogelijk is.

 

 

accent op software

De familie van ontwikkelgereedschappen die IBM voor objectoriëtatie op de markt brengt, heet VisualAge. De programmatuur werkt uiteraard onder besturingssytemen en hardware van IBM zelf, maar ook met die van andere leveranciers. Is zulke openheid geen bedreiging voor eigen marktaandeel? Daphne Riksen reageert prompt. Het gebeurt omgekeerd toch ook dat de klant wèl apparatuur, maar geen software van IBM aanschaft? Daarmee is zij vanuit haar positie in de Software Groep natuurlijk weer niet gelukkig. Interne conflicten, nee, dat is te sterk uitgedrukt. Zulke openheid is een strategische keuze. IBM heeft immers de ambitie verlaten om altijd de enige IT-leverancier van een klant te zijn. De markt wenst 'open' oplossingen. Tegelijk voert het bedrijf juist een scala van produkten en diensten voor wie toch graag voor alle informatietechnologie op één adres terecht wil kunnen.

De vraag naar ondermijnend effect van aanbod van software, zoals VisualAge dat ook werkt in combinatie met componenten van andere leveranciers, was dus onevenwichtig. Er zat het vooroordeel van IBM als louter hardwareleverancier achter. Maar het bedrijf is tevens de grootste leverancier van software ter wereld. En de omzetverschuiving ten gunste van software, en daarnaast ook van dienstverlening, gaat onverminderd door.

Omdat IBM zo groot is in software, is het bedrijf alweer jaren in objectoriëntatie geïnteresseerd. De simpelste reden is commercieel. Steeds meer aspecten van geautomatiseerde informatievoorziening krijgen een objectgericht karakter. Dat is een sterk groeiende markt waarin IBM prominent wil meespelen. Aangezien programmatuur een belangrijke drager van OO is, ligt het voor de hand dat IBM daarvoor concrete produkten aanbiedt.

 

 

kennis en ervaring

Met OO volgt IBM echter niet klakkeloos een trend. Er is sprake van een bewuste strategie vanaf het hoogste managementniveau. Vanwege de kwalitatieve voordelen verwerkt IBM objectoriëntatie alweer sinds jaren in allerlei externe en interne produkten. Zo zijn onderdelen van het besturingssysteem OS/400 op OO gebaseerd. Dat geldt al completer voor allerlei andere programmatuur, zoals recentere ontwikkelgereedschappen. Voor intern gebruik door IBM werd OO bijvoorbeeld toegepast in een informatiesysteem dat produkten en diensten optimaal configureert. Voor de aanstaande Olympische Spelen in Atlanta, Verenigde Staten, ontwikkelt IBM als sponsor diverse informatiesystemen met VisualAge Smalltalk.

Met veel nieuwe technologieën werkt IBM van binnen naar buiten. Daarbij is steeds de bedoeling dat medewerkers hun kennis en ervaring uit interne projecten in een later stadium op de externe markt inzetten.

 

 

enkele voordelen van OO

Als voordeel van OO geldt bijvoorbeeld dat een informatiesysteem eenvoudiger aanpasbaar is. Daaraan is de mogelijkheid tot geleidelijke ontwikkeling nauw verwant. De ontwikkelaar kan ergens beginnen zonder daarmee toekomstige veranderingen te blokkeren. In de praktijk is dat begin vaak de grafische interface voor het (beeldscherm)gebruik. Vervolgens breidt OO zich verder uit over de clienttoepassing. Enzovoort, via implementatie van OO op de server eventueel naar een gedistribueerd stelsel van objecten op een netwerk. Kortom, de reikwijdte van OO in informatievoorziening is duidelijk schaalbaar.

 

 

sjablonengieterij

Hergebruik is veelgenoemd als voordeel van OO. Over hergebruik van losse objecten, of beter gezegd van op zichzelf staande objectklassen, bestaan echter dikwijls onrealistische verwachtingen. Daarom propageert IBM het idee van het zgn framework. Dat is een verzameling samenhangende objectklassen die voor een bepaald toepassingsgebied het sjabloon vormen voor een informatiesysteem. Een framework is dus nooit een compleet, kant-en-klaar toepassingspakket. Het bedoelt echter wel degelijk reeds een aanzienlijk deel van de gewenste functionaliteit te bieden.

Zo'n framework komt meestal voort uit een project waaraan IBM samen met één of meer klanten werkte. Zij zijn dan overeengekomen dat het resultaat beschikbaar is voor hergebruik. Het framework krijgt een plaats in IBM's foundry, ofwel letterlijk vertaald: gieterij. Vanuit de gieterij zijn sjablonen beschikbaar voor volgende projecten.

 

 

eerst dienstverlening of meteen produkten?

Grote organisaties blijken voorzichtig met objectoriëntatie om te gaan. Zij kiezen niet radicaal voor omschakeling. Allereerst heeft daar intern onderzoek plaats, verkenning van kansen èn risico's. Daarbij is vaak behoefte aan ondersteuning. Voor zulke dienstverlening heeft IBM adviseurs opgesteld. Daarnaast is de Software Groep actief bezig met voorlichting van andere dienstverleners.

Bijvoorbeeld kleinere software-ontwikkelaars hanteren OO heel anders dan grote organisaties. Zij behoeven geen aandacht aan complexe organisatieverandering te besteden en kiezen daarom al snel voor de produktiviteitswinst die zij met nieuw ontwikkelgereedschap kunnen behalen. Dat is voor de Software Groep een directe markt voor de afzet van haar produkten.

 

 

het talenpakket

Voor objectgerichte ontwikkeling is IBM leverancier van drie verschillende talen. Dat is in de eerste plaats Smalltalk. Obstakels voor acceptatie zijn het research-imago en dat de programmatuur een computer met behoorlijke verwerkingscapaciteit vergt. De taal is echter verhoudingsgewijs snel te leren. Inmiddels groeit de markt ervoor zeer snel, sneller dan van enige andere objectgerichte programmeertaal. Ten tweede levert IBM de taal C++. Dat heeft van de objectgerichte talen nog altijd het grootste marktaandeel. Dat is verklaarbaar door de afkomst, te weten afgeleid van C. Desondanks valt de taal moeilijker te leren dan Smalltalk. Een nadeel is verder dat C++ ruimte biedt om van objectoriëntatie af te wijken; de taal zèlf dwingt geen discipline af. De derde taal in het OO-aanbod is OOCobol. Daarmee is IBM zojuist op de markt verschenen. Zoals C++ aansluit op C, zal OOCobol zeker marktaandeel verwerven omdat Cobol zo wijd verspreid is. Principieel deelt OOCobol echter de nadelen van C++.

Het is afhankelijk van omstandigheden, wat de beste keuze van een objectgerichte taal is. Daarbij gaat het om antwoorden op vragen als: Wat is de ontwikkelcultuur? Moet juist die cultuur veranderen? Hoe realistisch is dat? Welke klassebibliotheek sluit op de behoeften aan?

VisualAge is voor alledrie de OO-talen het omvattende ontwikkelgereedschap. Ongeacht de taal gelden als uitgangspunten voor VisualAge dat het zich identiek aan elke ontwikkelaar presenteert, dat het ontwikkeling door teams ondersteunt en dat ontwikkelde programmatuur geschikt is voor uiteenlopende combinaties van hardware en besturingsprogrammatuur, dus ook die van belangrijke concurrenten. Verder verlangt IBM geen betaling voor zgn run-time versies. Dat is vooral aantrekkelijk voor organisaties die software ontwikkelen waarvan ze kopieën verspreiden of zelfs verkopen.

 

 

oodbms

IBM levert overigens geen objectgerichte database van eigen maaksel en is evenmin met ontwikkeling van zo'n systeem bezig. Uitbreidingen van DB2 gaan wel in de richting van OO, maar dat blijft een relationele database. IBM beperkt zich wat een echt OODBMS betreft tot marketingovereenkomsten met andere leveranciers.

 

 

coëxistentie

Voor de meeste nieuwe projecten in het vlak van informatievoorziening is OO zeer geschikt. Ondanks voordelen van OO valt echter op korte termijn geen grootschalige, totale vervanging van informatiesystemen te verwachten. IBM mikt daarom op zgn coëxistentie van OO en niet-OO. Om zulke gemengde informatievoorziening optimaal te laten functioneren gaat bijzondere aandacht uit naar koppelobjecten. Met zulke eenvoudig toepasbare oplossingen voor complexe problemen kan bijvoorbeeld een hiërarchische of relationele database als 'achterkant' van een informatiesysteem intact blijven. Tegelijk kan de 'voorkant' al volgens OO ingericht zijn; dankzij een bijbehorend koppelobject is hun samenhang in één hetzelfde informatiesysteem verzekerd.

Met koppelobjecten nemen de mogelijkheden van geleidelijke overgang naar objectoriëntatie toe. Gelet op dat strategisch belang schenkt IBM daarom bijzondere aandacht aan de ontwikkeling ervan. Het bedrijf stimuleert in het algemeen ook andere leveranciers om bijdragen aan uitbreiding van de familie van objectgerichte gereedschappen te leveren.

 

 

alleen en samen

Op allerlei manieren werkt IBM alleen of in samenwerking aan objectoriëntatie. In het vlak van standaardisatie gebeurt dat door het actief lidmaatschap van de Object Management Group. Voorts hanteert IBM OpenDoc als standaard voor koppelingen tussen objecten voor documentverwerking. Er is het Object Connection Program ter bevordering van aanbod van objectklassen voor VisualAge. En een onderdeel van het bedrijf is de Object Technology University, waar zowel eigen medewerkers als die van klanten OO-cursussen volgen. De opsomming van activiteiten is eenvoudig uitbreidbaar. Voor IBM is de toekomst van objectoriëntatie allang begonnen.

 

 

Het vraaggesprek voerde ik samen met Joop Kuijs, hoofdredacteur Informatie.

 

 

© 1993, webeditie 2002.
Sterk verkorte versie in: Informatie, jaargang 38, februari 1996.