Tilburg University
Informatiesystemen en het gebruik van 4e generatie talen
Oonincx, J.A.M.
Publication date:
1987
Document Version
Publisher's PDF, also known as Version of record
Link to publication in Tilburg University Research Portal
Citation for published version (APA):
Oonincx, J. A. M. (1987). Informatiesystemen en het gebruik van 4e generatie talen. (blz. 1-10). (Ter Discussie
FEW). Faculteit der Economische Wetenschappen.
General rights
Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain
• You may freely distribute the URL identifying the publication in the public portal Take down policy
If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim.
INFORMATIESYSTEMEN EN HET GEBRUIK VAN 4e GENERATIE TALEN
Prof. Drs. J.A.M. Oonincx
~9~
No. 8~.10
j,Q7
R ~~
Kenmerk: 320.87.006
Informatiesystemen en het gebruik van 4e generatie talen "
" Bewerking van een lezing op het Cognos~Power Team
Software Seminar op 8 april 1987 te Eindhoven.
Prof. Drs. J.A.M. Oonincx.
Inleidina.
In 1982 publiceerde ik het boekje "waarom falen
informatiesystemen nog steeds (Samsom Uitgeverij).
Een aantal daarin genoemde falingsoorzaken komt men ook nu
nog teqen in literatuur over 4e generatietalen. Toepassing
van de Qe generatietalen maakt het volgens de voorstanders
van toepassing van deze talen mogelijk diverse van de
problemen weg te nemen.
In mijn lezing heb ik de volgende onderwerpen aan de orde
gesteld:
- Een schets van het probleemveld met betrekking tot het
ontwerpen van informatiesystemen.
- De toepassing van de 4e generatietalen in de praktijk. - Rarakteristieken van de 4e generatietalen.
- Prototyping
- Adviezen ten behoeve van de leiding in verband met
aanschaffen van en stimuleren van vierde generatietalen. Hieronder vindt u per onderwerp een min of ineer puntsgewijze aanduiding en~of uitwerking van het besprokene.
Probleemaanduidina.
1. Software crisis is een crisis rond informatiesystemen
2. Problematiek niet pessimistisch benaderen, maar
optimistisch, zonder overigens de realiteit uit hPt ong re
verliezen.
3. Aplication backlog.
Achterstand in onderhoud van bestaande systemen, maar ook in
de ontwikkeling en realisatie van nieuwe en gewenste
systemen ( soms van jaren).
2
veroorzaakte wijziginqen in systeemspecificaties die
moeilijk te realiseren zijn door te statische en te weiniq
flexibele opzet van ínformatiesystemen. 5. Maintenanceprobleem
Het beheersen van de verandering van specificaties en
proqrammatuur kost veel tijd en inspanninq.
Dit qaat ten koste van nieuwbouw en renovatie in de
informatiesysteemontwikkeling.
6. Ontwikkelafdelingen kunnen vraag naar meer efficiënte en
meer effectieve informatiesystemen niet aan vanwege: - het qenoemde onderhoudsprobleem.
- de te lange ontwikkelingsprocessen en de te lange
doorlooptijd van projecten.
- de tussentijdse wijzigingen in het bedrijfsgebeuren :net
veranderde functionele eisen en systeemspecificaties.
- de kwalitatieve en kwantitatieve onderbezettinq van de
afdeling. - onvoldoende gebruikersinbreng, omdat gebruikers
qeen tijd of qeen zin hebben en vinden dat ontwikkelaars te
moeilijk en te abstract beziq zijn onder hantering van een
onbegrijpelijk vakjargon. 7. Eisen aan programma
- robuustheid; correct en voorspelbaar werken.
- betrouwbaar; voldoende geprogrammeerde controles. - uitbreidbaar.
- onderhoudbaar. - flexibel.
- gebruikersvriendelijk. 8. Beleidsmatige benadering.
Meer aandacht nodig voor informatie- en
automatiseringsbeleid, inclusief betrouwbaarheids- en
beveiligingsaspecten.
9. Automatisering van de automatiserinq ontbreekt nog op
3
DE TOEPASSIP7G VAN DE 4E GEIJERATIETALEN IS HET ANTWOORD OP
VERSCHILLENDE VAP7 DEZE PROBLEMEN.
ToeDassina van de 4e Qeneratiesoftware in de vraktiik.
Uit een onderzoek van Craenen (zie Computable van 6 maart
1987) blijkt dat 4e qeneratiesoftware al bij méér dan de
helft van de Nederlandse bedrijven in qebruik is.
De groei in de toepassing ervan is sinds 1980 bijzonder snel
qeqaan, waarbij de doorbraak kwam in 1985 (vooral door het
NGI-conqres over dat onderwerp). Bij onderneminqen met meer
dan 5000 personen is de qebruikersqraad 82~5, bij
onderneminqen met minder dan 10 personen is dat 21~c.
Het leerproces in de toepassinq neemt al qauw 3 á 4 jaar in
beslag (waarbij het qebruik van de taal als zodanig
overigens bijzonder snel is te leren).
Bij de toepassinq van 4e qeneratietalen worden als voordelen qenoemd:
- de verbeterinq van de productiviteit.
- de Toqelijkheid prototyping toe te passen.
- de verbetering van de participatie door gebruikers. - de verkortinq van de proqrammaduur.
De productiviteitsverbeterinq is het gevolq van verkortinq
van de ontwikkelinqstijd van programma's met een factor van
4 tot 10. De door leveranciers qeschapen zeer hoge
verwachtinqen worden overiqens niet altijd waarqemaakt.
In het alqemeen wordt, qelet op de besparingen in de
personele kosten, de niet onaanzienlijke investerinq snel
teruqverdiend.
Overiqens, los hiervan, wie niet mee doet is de verliezer
van de toekost. Het manaqement zal de voorwaarden moeten
scheppen voor de nieuwe aanpak met behulp van vierde
4
de qrote invloed van de interne en externe ontwikkelinqen
met als gevolq voordurend optredende veranderingen in de
functionele specificaties worden verwerkt. Dit betekent
permanente automatiserinq. De economische levensduur van
computerproqramma's wordt steeds korter; de realisatieti~d
van een computerproqramma wordt daarenteqen lanqer (door
inteqratie, complexiteit, hoqere niveau's in de
orqanisatie). Dit kan neqatieve invloed hebben op de
actualiteit van de operationele proqramma's.
Iiet beleid moet derhalve gericht zijn op de toepassinq van
vierde qeneratietalen die:
- een korte ontwerp- en realisatietijd moqelijk maken.
- een hoqere productiviteit in de ontwerpprocessen toestaan.
- een voortdurende aanpassinq moqelijk maken, waardoor de
onderhoudsproblematiek wordt beperkt.
- door participatie van qebruikers en de toepassinq van
prototyping het ontwerpen van realistische proefprogramma's
versnellen.
Een noq te vermelden voordeel is dat vierde generatietalen
in principe in elke omgevinq kunnen draaien zonder dat
bestaande programma's (bijvoorbeeld in Fortran of Cobol)
hierdoor worden qehinderd. Dit betekent dat er een soepele
overganq mogelijk is: "oude" systemen zonodiq of desqewenst
handhaven en nieuwe systemen ontwikkelen en laten "draaien"
met behulp van een vierde qeneratietaal.
De toepassinq van vierde generatietalen heeft uiteraard niet alleen voordelen. Men hoort noqal eens de opmerkinq plaatsen
dat de toepassinq van vierde qeneratietalen nadeliqe
gevolqen heeft voor de "performance" en het qeheuqenbeslag.
riet kari niét woïden ontkend dat voor realisatie var~
toepassinqen op deze manier veel qeheuqen nodiq is. Gelet op de huidiqe en toekomstiqe prijzen van de apparatuur behoeft
5
Rarakteristieken van vierde aeneratietalen. 1) Non-~roceduraliteit.
Een van de belanqrijkste kenmerken van vierde qeneratietalen is dat deze de zorq van de proqrammeur met betrekkinq tot de
procedurele aspecten weqnemen. Deze talen hebben een veel
hoqere mate van "non-proceduraliteit"; ze zijn veel meer
probleemqeóriënteerd dus non-procedureel. Er wordt veel
qebruik qemaakt van "defaults".
Bij de eerste drie qeneratietalen (machine-code, assembler,
hoqer niveau talen) diende nauwkeuriq en uitvoeriq te worden
aanqegeven op welke wijze tot het gewenste resultaat moest
worden gekomen. De ontwikkelaar die vierde qeneratietalen
hanteert qeeft en beschrijft het qewenste resultaat. Het
proces zelf, in casu de acties die tot dat resultaat leiden
behoeven niet te worden beschreven. Dat laatste is de taak
van de compiler of interpreter. Deze neemt veel van de
handmatiqe (en daardoor foutqevoeliqe) werkzaamheden van de
programmeur over. Dit is bevorderlijk voor de
betrouwbaarheid van de toepassinqen die met behulp van
vierde generatietalen tot stand komen.
Vierde qeneratietalen zullen in toenemende mate deel
uitmaken van een qeïnteqreerde ontwikkelingsomgevinq.
(Screen painters, rapport qeneratoren, queryprocessors, een
d d s, een d b m s, procedurele en non-procedurele talen).
De ontwikkelinqsqereedschappen communiceren daarin met
elkaar via de data dictionary. De efficiency, de
effectiviteit de productiviteit, en de betrouwbaarheid van
ontwikkelingsprocessen wordt hierdoor verder verbeterd.
2) Gebruikersvriendeli~kheid.
Bekend is de hoge qebruikersvriendelijkheid van vierde
generatietalen ten opzichte van de derde qeneratie. Doordat de talen non-procedureel zijn is het aantal
statements beperkt en is de proqrammatuur beknopt (in
6
De qebruiker wordt stapsqewijze door het ontwikkelingsproces geleid. Er wordt veel gebruik qemaakt van menu's, het
invullen van schermen, het qeven van voorbeelden aan de
computer, foutsiqnalerinq, compilers en interpreters. Als
qebruiker~ontwikkelaar~automatiseerder dan ook noq alle
ontwikkelfaciliteíten in één omgeving heeft dan werkt dat
zeer stimulerend; ook op relatief onervaren
automatiseerders.
3) Beverkt toeDassinosQebied per taal.
Inmiddels zijn er meer dan honderd vierde generatietalen op
de markt, die sterke verschillen tonen in kzacht, capaciteit
en aard van gebruik. Dit betekent dat de orqanisatie de
keuze van de taal moet afstemmen op het op te lossen
probleem of het gewenste systeem. Waar de ene taal meer
geschikt is voor het ontwikkelen van transactieverwerkende
systemen met een zeer hoge belastingsgraad, is een andere
taal meer aanqewezen voor het bouwen van
beslissíngsonder-steunende systemen. Daarnaast zijn er talen die uitsluitend
geschikt zijn voor specifieke toepassingsgebieden. Andere
zijn meer geschikt voor eindgebruikers die eenvoudiqe
toepasingen willen ontwikkelen. Weer andere zijn specifiek
bedoeld voor gebruik door professionele ontwikkelaars van
informatiesystemen. De meest voorkomende indeling van talen
vindt plaats op basis van complexiteit van toepassinqen en
gebruikerscategorie. 4) Verdere kenmerken.
Eindqebruikers (voorlopig overiqens noq dikwijls samen met
systeemanalisten of systeemontwerpers) kunnen gemakkelijk
hun eigen informatiesystemen ontwikkelen. Het ontwerpen van
informatiesystemen met behulp van vierde qeneratietalen is
een iteratief proces in plaats van een lineair proces zoals
PrototvpinQ.
Prototyping wordt gebruikt bij het systeemontwerp. Het doel
ervan is de betrokkenheid van gebruikers bij het
ontwikkelproces van ínformatiesystemen te bevorderen en
daardoor de kwaliteit te verhogen.
Bij prototyping gaat het om het keizen van deelproblemen,
waarvan snel een model wordt gemaakt. Er kan dan ook snel
worden vastqesteld of het "prototype" van het model ook een
goede oplossinq biedt. Prototypes zijn zowel bruikbaar voor
een model van een bestaande situatie als voor een
voorspelling. Het prototype moet de gebruiker helpen een
goede probleemstelling te maken om daarna te beoordelen of
de oplossing juist is. Prototypinq is bruikbaar bij het
bepalen van de informatiebehoeften en bij het
systeemontwerp, zeker wanneer een informatiesysteem geheel
nieuw wordt ontworpen. Overigens wordt geadviseerd eerst te
onderzoeken of er al prototypen beschikbaar zijn in de vorm
van standaardpakketten of programmageneratoren. Prototyping
kan gezien worden als een speciale vorm van simulatie
waarbij de computer kan worden toegepast. Via prototyping
kan dus interactief een informatiesysteem worden ontworpen.
Het ontwerpproces gaat door tot de ontwerp-gebruiker
tevreden is over de wijze, waarop het systeem aan zijn
functionele eisen en wensen tegemoet komt.
Een goede probleemstelling en een goede validatie van het
prototype zijn voorwaarden voor succesvolle toepassing.
Het manaaement heeft hierbij een belangrijke taak. Het moet
prototyping als ontwerpmethodiek propaqeren en de
gebrui-kers-ontwerpers er, zonodig, van overtuigen dat de tijd en
kosten besteed aan een eerdere versie van het "weg te
gooien" prototype inherent zijn aan deze benadering.
Daarnaast moeten de managers oog hebben voor de noodzaak van
leer-effecten. De verwachtingen kunnen ook te hooq gesteld
zijn. Zn kennisopbouw moet worden qeïnvesteerd. Er moet
ruimte zijn voor een aanleerperiode (afscheid nemen van het
8 Waaro~ verder te letten?
De komst en toepassinq van 4e qeneratietalen betekent niet
dat alles verandert. Zo blijft de noodzaak aanweziq voor
projectmanaqement.
Daarin zal vooral de samenwerkinq tussen eindqebruikers en
automatiserinqsdeskundigen de aandacht opeisen.
Ook bij vierde qeneratietalen dient men kernproblemen te
blijven vasthouden, waarvoor een goed plan van aanpak nodiq
is. Dit dient te passen in het uitqezette qebied met
betrekkinq tot de ontwikkelinq van informatiesystemen. Voor
de uitwerkinq van de systeemconceptie is het vereist de
beschikbare methoden en technieken af te stemmen op de
vierde qeneratietalen.
Het is nodig de qebruikers intensief bij de
ontwikkelprocessen te betrekken (de aloude
veranderinqsprocessen blijven actueel!). Gebruikers kunnen
zonodiq via opleidinqen worden qemotiveerd tot toepassinq
van zo'n nieuwe taal. Zij zullen tijd moeten vrij maken voor
het opdoen van ervarinq. Tenslotte blijft het nodiq bij de
uitvoerinq van de eiqen ontwikkelactiviteiten de nodige
discipline in acht te nemen.
De toepassing van vierde generatietalen zal wel
consequenties hebben voor automatiseerders.
Materie-deskundiqheid en ervarinq in diverse applicatieqebieden
wordt steeds meer vereist. De technische bagage van een
systeemontwikkelaar zal steeds beperkter behoeven te zijn
naarmate de talen zich verder ontwikkelen en de
materie-deskundiqheid toeneemt. Enkele consequenties zijn dan ook:
- er ontstaat steeds meer behoefte aan "alpha"-mensen bij de systeemontwikkelinq.
- de traditioneie anaiisteniproqrammeurs die niet kunnen
overschakelen worden de toekomstige werklozen binnen de
automatiserinq.
- het zonodiq overwinnen van barrières, voordat tot aanschaf
9
aanschaffen van een vierde generatietaal nog wel eens als
een bedreiging. Dat zelfde geldt voor
beslissingsondersteu-nende systemen en voor expertsystemen.
De keuze van de vierde generatietaal stoelt op de volgende
overwegingen:
- de taal dient de bruikbaarheid in de praktijk te hebben
bewezen.
- de taal dient te passen bij de apparatuur.
- de functionaliteit: automatiseringsdeskundigen en
eindgebruikers moeten hun functionele eisen voldaan zien.
- de kosten van aanschaf, opleiding, onderhoud, invoer en
onderhoud
- de taal :noet passen in de "totaaloplossing" van de
leverancier.
- de continuiteit van leverancier en pakket. - de resultaten van de test met proefprojecten.
Toepassing van geautomatiseerde gereedschappen en vierde
generatietalen zal zeker bijdragen aan het verminderen van
de problematiek, waarmee de automatiseringswereld wordt
geconfronteerd. Eindconclusie.
Er zijn overigens talloze argumenten te bedenken om nog niet te beginnen met vierde generatietalen. De bedrijven die deze houding aannemen zijn echter de verliezers in de toeko~:,st. Literatuur.
- Vierde generatie software
Praktijkervaringen: de gebruiker aan het woord.
Uitgave Stichting Informatica Congressen Antwerpen 1985.
- G. Craenen: Vierde generatie software in praktijk
10
- J.A.M. Oonincx: Waarom falen informatiesystemen nog
steeds?
Samsom, Alphen aan den Rhijn, 1982.
- J.A.M. Oonincx en A.J. van 't Rlooster:
i
IN 1986 REEDS VERSCHENEN
O1 F. van der Ploeg
Monopoly Unions, Investment and Employment: Benefits of Contingent Wage Contracts
02 J. van Mier
Gewone differentievergelijkingen met niet-constante coëfficiënten en partiële differentievergelijkingen (vervolg R.T.D. no. 84.32)
03 J.J.A. Moors
Het Bayesieanse Cox-Snell-model by accountantscontroles
04 G.J. van den Berg
Nonstationarity in job search theory
05 G.J. van den Berg
Small-sample properties of estimators of the autocorrelation coeffi-cient
06 P. Kooreman
Huishoudproduktie en de analyse van tijdsbesteding
07 R.J. Casimir
DSS, Information systems and Management Games
08 A.J. van Reeken
De ontwikkeling van de informatiesysteemontwikkeling
09 E. Berns
Filosofie, economie en macht
10 Anna HaraAczyk
The Comparative Analysis of the Social Development of Cracow,
Bratis-lava, and Leipzig, in the period 1960-1985
11 A.J. van Reeken
Over de relatie tussen de begrippen: offer, resultaat, efficiëntie, effectiviteit, produktiviteit, rendement en kwaliteit
12 A.J. van Reeken
Groeiende Index van Informatiesysteemontwikkelmethoden
13 A.J. van Reeken
A note on Types of Information Systems
14 A.J. van Reeken
Het probleem van de Componentenanalyse in ISAC 15 A. Kapteyn, P. Kooreman, R.J.M. Willemse
Some methodological issues in the implementation of subjective pover-ty definitions
16 I. Woittiez
ii
17 A.J. van Reeken
A new concept for allocation of joint costs: Stepwise reduction of costs proportional to joint savings
18 A.J. van Reeken
Naar een andere asnpak in de systemering
19 J.G. de Boer, N.J.W. Greveling
Informatieplanning met behulp van referentie-informatiemodellen 1. Totstandkoming bedrijfsinformatiemodellen
20 J.G. de Bcer, N.J.W. Greveling
Informatieplanning met behulp van referentie-informatiemodellen 2. Een methode voor informatieplanning
21 W. Reijnders
Direct Marketing: "Van tactiek near strategie"
22 H. Gremmen
iii
IN 198~ REEDS vBRSCt~tEtv
O1 J.J.A. Moors
Analytical Properties of Bayesian Cox-Snell Bounds in Auditing 02 H.P.A. Mulders, A.J. van Reeken
DATAAL - een hulpmiddel voor onderhoud van gegevensverzamelingen
03 Drs. A.J. van Reeken
Informatisering en de beloning van arbeid 04 J. Kriens, P.C. van Batenburg
Bayesian Discovery Sampling: a simple model of Bayesian Inference in
Auditing.
05 Prof.Dr. J.P.C. Kleijnen
Simulatie
06 Rommert J. Casimir
Characteristics and implementation of decision support systems
0~ Rommert J. Casimir
Infogame, the model
08 J.J.A. Moors
A Quantile Alternative for Kurtosis
09 Rommert J. Casimir