Olioiden tulevaisuus

Tuija Helokunnas,
Nokia Telecommunication Oy

Oliotekniikoita on tarkasteltu neljästä eri näkökulmasta: systeemityömenetelmät, ohjelmistojen tekovälineet ja kehittämistavat sekä tiedonhallinta. Kyselytutkimukseen vastanneissa organisaatioissa oliotekniikoiden käyttö oli vähintään selvitys- ja alkuvaiheessa. Vastaajat toivoivat oliotekniikoiden käytön etenevän nopeammin aktiivivaiheeseen, kuin mitä he ennustivat todellisuudessa tapahtuvan.

Olioajattelua on sovellettu tietojärjestelmien kehittämiseen 70-luvulta lähtien. Olio (object) käsite esiteltiin ensimmäisen kerran ohjelmointirakenteena Simula-ohjelmointikielessä (Birtwistle et al. 1973). Oliokeskeisiä ohjelmointikieliä käytettiin aluksi tietojärjestelmien kehittämisessä perinteisten toimintokeskeisten systeemityömenetelmien kanssa. Olioajatteluun perustuvien systeemityömenetelmien kehittäminen herätti laajaa kiinnostusta 80-luvun loppupuolella. 90-luvun alkuvuosina oliokeskeisten systeemityömenetelmien ja ohjelmointikielten käytöstä jalostettiin koko tietojärjestelmän elinkaaren kattavia ohjelmistotuotannon prosessikuvauksia. Viime aikoina laajinta kiinnostusta ovat herättäneet Rumbaughin ja Boochin kehittämä yhdistetty oliokeskeinen systeemityömenetelmä - Unified Method (Rumbaugh & Booch 1995) - ja olioajattelun soveltaminen liiketoimintaprosessien kuvaamisessa.

Kuva 1: Oliotekniikoiden nykytilanne

Oliotekniikoiden käytön hyötyinä on mainittu seuraavat asiat: oliolähestymistapa on luontainen ihmisen ajattelulle, oliot mallintavat hyvin reaalimaailmaa, olio-ohjelmointi on tehokasta, määrittely- ja suunnittelutyön lopputulosten sekä ohjelmistokoodin uudelleen käyttö helpottuu, ohjelmistojen tekninen laatu paranee ja ohjelmistojen ylläpito helpottuu (Coad & Yourdon 1990), (Rumbaugh, Blaha et al. 1991), (Jacobson, Christerson et al. 1992). Käytäntö on kuitenkin osoittanut, että pelkästään oliokeskeisen systeemityömenetelmän ja oliokeskeisen ohjelmointikielen käyttöön siirtyminen ei takaa, että organisaatio saavuttaa kaikki oliotekniikoiden käytön mainostetut hyödyt (Aalto 1994). Ohjelmistotuotannon tehostaminen vaatii aina ohjelmistotuotannon menetelmien ja välineiden kehittämistä ja sovittamista organisaation toimintaympäristöön.

Oliotekniikoiden herättämän kiinnostuksen vuoksi kyselytutkimuksessa tarkasteltiin oliotekniikoita neljästä näkökulmasta: systeemityömenetelmien, ohjelmistojen tekovälineiden ja kehittämistapojen sekä tiedonhallinnan kannalta. Kyselytutkimuksen vastaukset analysoitiin siten, että laskettiin kunkin olionäkökulman vastausluokkien prosenttiosuudet kaikista näkökulman vastauksista. Peräkkäisiä vastausluokkia myös yhdisteltiin ja laskettiin näiden vastausryhmien prosenttiosuudet kaikista vastauksista. Lisäksi tähän yhteenvetoon poimittiin esille joitakin näkökulmien mediaanivastauksista huomattavasti poikkeavia vastauksia.

Oliotekniikoiden käyttö on Suomessa siirtynyt tutkimuslaitoksista teolliseen ohjelmistotuotantoon. Kyselytutkimukseen vastanneiden henkilöiden edustamista organisaatioista n. 60 % oli vähintään oliokeskeisten systeemityömenetelmien, olio-ohjelmistoympäristön ja oliotiedonhallintajärjestelmien selvitys- tai alkuvaiheessa. Luokkakirjastojen käyttö oli selvitys- tai alkuvaiheessa joka toisessa organisaatiossa. Yksi vastaaja ilmoitti, että hänen organisaationsa ei ole selvittänyt tai kokeillut yhtään kysytyistä oliotekniikoista. Oliotekniikoiden nykytilanne on havainnollistettu kuvassa 1.

Oliokeskeisten systeemityömenetelmien ja oliotiedonhallintajärjestelmien käyttö oli hieman pidemmälle edennyt kuin olio-ohjelmistoympäristön ja luokkakirjastojen käyttö. Tämä saattaa kuvata enemmän vastaajien kiinnostusta systeemityöhön ja tiedonhallintaan kuin perustua siihen, että olio-ohjelmistoympäristöt olisivat todellisuudessa vähemmän käytössä kuin oliokeskeiset systeemityömenetelmät ja oliotiedonhallintajärjestelmät. Oliokeskeisen järjestelmän ylläpidosta oli kokemusta yhdellä vastaajalla.

Yksi vastaaja kertoi, että oliotiedonhallintajärjestelmien käyttöä ollaan vähentämässä ja yksi vastaaja kertoi, että oliotiedonhallintajärjestelmän käytöstä on luovuttu. Käytetyistä systeemityömenetelmistä mainittiin OMT ja Coad & Yourdon. Olio-ohjelmistoympäristöistä mainittiin C++, Dephi, VisualAge, Smalltalk, VisualWorks, Olio-Cobol ja SQLWindows.



Kuva 2: Oliotekniikoiden tulevaisuus.

Aktiivisesti oliokeskeisiä systeemityömenetelmiä, olio-ohjelmistoympäristöjä tai oliotiedonhallinta-järjestelmiä käyttävien yritysten profiili eli atk-henkilöiden lukumäärä ja toiminnan päätarkoitus, ei olennaisesti poikennut kaikkien vastanneiden yritysten keskimääräisestä profiilista. Oliokeskeisten systeemityömenetelmien käytössä vähintään alkuvaiheessa olevat yritykset käyttivät aktiivisesti myös muita systeemityömenetelmiä. Samoin oliotiedonhallintajärjestelmiä vähintään alkuvaiheessa käyttävät yritykset käyttivät myös kaikkia muita tiedonhallintajärjestelmiä.

Oliotekniikoiden käytön kehittymistä on havainnollistettu kuvassa 2. Oliokeskeisten menetelmien ja olio-ohjelmointiympäristöjen käytön ennustettiin olevan vuonna 2000 pääasiassa aktiivivaiheessa (39%), luokkakirjastojen käytön ennustettiin olevan pääasiassa selvitysvaiheessa (32%) ja oliotiedonhallintajärjestelmien käytön ennustettiin olevan pääasiassa alkuvaiheessa (44%). Vastaajat toivoivat oliotekniikoiden käytön etenevän nopeammin aktiivivaiheeseen (59%) kuin mitä he ennustivat todellisuudessa tapahtuvan (39%). Vastaajat ennustivat myös muiden systeemityömenetelmien, ohjelmistojen kehittämistapojen ja tekovälineiden sekä tiedonhallintajärjetelmien olevan aktiivikäytössä oliotekniikoiden käytön rinnalla.

Kaikki vastaajat eivät luottaneet oliotekniikoihin tulevaisuuden työmenetelmien ja työvälineiden perustana. Muutama vastaaja ennusti ja toivoi, että oliotekniikoiden käyttö on vähenemässä tai että niiden käytöstä on luovuttu 5 vuoden kuluttua. Eniten vastaajat ennustivat ja toivoivat oliotiedonhallintajärjestelmistä luopumista.

Kyselytutkimuksessa ennustettiin ja toivottiin olioille pitkää ikää ja sopuisaa rinnakkaiseloa perinteisten tekniikoiden kanssa. Kyselytutkimus ei kuitenkaan vastannut kysymykseen: Mitä oliotekniikoiden jälkeen? Mikä on seuraava ajattelutapa tietojärjestelmien kehitystyössä? Yksi vastaus tähän kysymykseen löytyy lehden viimeisestä artikkelista: visio globalista verkosta.

Aalto, A. (1994). Tiedonhallintaratkaisut oliokeskeisessä sovelluksessa. Lisensiaattityö Tampereen Teknillisessä korkeakoulussa.

Birtwistle, G, & Dahl, O. & Myhrtag, B. & Nygaard, K. (1973). Simula Begin. Philadelphia, USA.

Coad, P. & Yourdon, E. (1990). Object-Oriented Analysis. New Jersey, USA.

Jacobson, I. & Christerson, M. & Jonsson, P. & Övergaard, G. (1992). Object-Oriented Software Engineering. USA.

Rumbaugh, J. & Blaha, M. & Premerlani, W. & Frederick, E. & William, M. (1991). Object-Oriented Modeling and Design. New Jersey, USA.

Rumbaugh, J. & Booch, G. (1995). Unified Method Document Set. Internet: product_info@rational.com.