Árbók VFÍ/TFÍ - 01.06.2001, Blaðsíða 319
Ritrýndar vísindagreinar 317
í hana fara. Á vegum Evrópubandalagsins er nú unnið að ýmsum rannsóknum sem varða
íhlutbundna hugbúnaðargerð. Undirritaður tengist nú einu þcirra sem kallast OOSPICE1 .
Ýmsar aðstæður ýta undir íhlutaþróunina. Má þar t.d. nefna:
1. Auknar kröfúr um hraða og hagkvæma kerfísgerð.
2. Hugbúnaðarafurðir eiga að vera nútímalegar og jafnframt áreiðanlegar.
3. Sívaxandi þörf fyrirtækja á netvæðingu og rafviðskiptum kallar á stóraukinn hugbúnað.
4. K.erfí eiga að hafa nýtískulegt notendaviðmót en byggja jafnframt á eldri hugbúnaði.
Szyperski 1999 skilgreinir íhlut svona:
„A software componcnt is a unit of composition with contractually specifíed interfaces
and explicit context dependencies only. A software component can be deployed indepen-
dently and is subject to composition by third parties."
Nánar tiltekið: íhlutur er í fyrsta lagi eining með vel skilgreind skil sem afmarka þjón-
ustuna sem hann veitir. í öðru lagi vinur hann í gefnu tækniumhverfí og getur byggt á
tilteknum stuðningi frá umhverfínu. í þriðja lagi má bcita íhluti sjálfstætt og í ijórða lagi er
hann framleiddur af þriðja aðila, það er að scgja af öðrum en þeim sem er að setja viðkorn-
andi kerfí saman fyrir tiltekinn viðskiptavin. Aðilinn, sem framleiðir íhlut (þriðji aðilinn),
getur verið utan eða innan fýrirtækis þróunaraðila kerfis. Ætlast er til að vönduðum þróun-
araðferðum sé beitt við íhlutagerð svo að íhlutirnir séu vel skilgreindir, traustir í notkun og
þjálir í viðhaldi.
Hugmyndin um forritseiningar, sem auðvelt er að endurnýta í ýmsum forritum, er
jafngömul og þriðju-kynslóðar forritunarmálin. Til dæmis var undirforritastrúktúrinn í
Fortran hluti af fyrsta staðli þess sem gefínn var út 1966. Segja rná að víðtæk notkun
hefðbundinna mála, svo sem Fortrans, Cobols, C, C++ og Ada byggist á að í þeim er hægt
að sérþýða einingar og geyma í söfnurn og virkja þær svo í köllunarforriti. Yfírgripsmikil
forritasöfn sem fúllnægja ýmsum algengum þörfurn hafa verið þróuð. Forritasöfn eru í
sumum tilvikum að mestu óháð viðkomandi tækniumhverfi (tölvuarkitektúr, stýrikerfi og
þýðanda) og þá lítið verk að flytja vinnslu á milli tækniumhverfa. En í öðrum tilvikum eru
þau nánast soðin föst við umhverfi sitt og nær óflytjanleg.
Hlutbundin forritun hófst almennt á síðasta áratug með tilkomu fonitunarmálanna C++
og síðar Java. Áður höfðu hlutbundnu málin Simula og Smalltalk náð allnokkurri útbreiðslu.
Staðall fyrir hlutbundna greiningu og hönnun Unifíed Modcling Language (UML) þróaðist
jafnframt á áratugnum [Krutchen, 2000; Henderson-Sellers, 2000] og cru nú til grafísk
hönnunartól frá ýmsum aðilum sem útfæra UML staðalinn. 1 hlutbundinni forritun er
auðvelt að skilgreina endurnýtanlegar einingar. Hlutur er forritseining sent getur veitt rnarg-
brotna þjónustu og varðveitt eigin gögn. í keyrslu geta mörg tilvik af hlut af gefnu tagi verið
í gangi samtímis og hefúr hver hlutur sér tengsl við aðra hluti og eigin stöðubreytur sem
endurspegla sérstöðu hans.
t. Á vefsíðu verkefnisins OOSPICE (http://oospice.com) segir svo:
Software process improvement and capability determination for object oricnted/component based
software development - OOSPICE - is a project based on thc principles of empirical software engi-
neering. It focuses on the processes, technology and quality of software systems produced using com-
ponent-bascd development (CBD) which is achieving substantial software rc-use. Among its main
objectives are a unified CBD process metamodel, a CBD assessment methodology, component-
provider capability profiles, a CBD methodology and extensions to the ISO 155504 process assess-
menl standard.