07.01.2015 Views

osa 3

osa 3

osa 3

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

• Tarkvaratehnika märgatav kasutamine praktikas (1989-1990), objekt-orienteeritud<br />

tarkvaratehnika meetodite edu (1990-1992)<br />

• Uute ideede hulgaline tulek (1993-1996) – tehisintellekti meetodid tarkvaratehnikas, UML<br />

(Unified Modelling Language) koondab paljud objekt-orienteeritud meetodid ühtseks<br />

tervikuks, CORBA tekkimine ja mõju laienemine (Common Object Request Broker<br />

Architecture) hajusrakendustes ja suurtes süsteemides.<br />

Kõigele vaatamata on tarkvara loomine pidevas kriisiseisus, nii nagu see oli 1960-ndatel – 1990-<br />

ndate aastate USA-s on ligi 30% alustatud tarkvaraprojektidest täielikult ebaõnnestunud, ligi 90%<br />

lõpuni viidud projektidest on olnud tunduvalt maas ajagraafikust ja tunduvalt ületanud planeeritud<br />

maksumuse.<br />

Lisaks tarkvaratehnika meetodite suhtelisele algelisusele on sellisele seisundile kaasa aidanud<br />

kolm järgmist põhjust:<br />

• olemasolevad tarkvaratehnika meetodid ja vahendid ei ole leidnud laialdast praktilist<br />

kasutamist (ilmne põhjus on vahendite kõrge hind, vähem ilmsed on potentsiaalsete kasutajate<br />

puudulik haritus ja pakutavatest meetoditest tulenev liiga vähene kasu (s.t. turul olevates<br />

tööriistades kasutatavate meetodite triviaalsus – paljud tööriistad täidavad pliiatsi ja paberi<br />

funktsioone)<br />

• lihtsate, üldtunnustatud ja omaksvõetud standardite puudumine tarkvara tootmise protsessi ja<br />

tarkvara kui toote nõutavate omaduste kohta -- on sadu ametkondlikke ja riiklikke standardeid,<br />

kogumahuga tuhandetes lehekülgedes; üldine arvamus on, et need on praktiliseks kasutamiseks<br />

liiga abstraktsed ja keerulised<br />

• tarkvara loomise protsess on käesoleval ajal üks keerulisemaid inimtegevuse valdkondi,<br />

puuduvad korralikud formaalsed, tarkvara kvantitatiivseid omadusi kirjeldavad matemaatilised<br />

mudelid, mis võimaldaksid varakult ennustada tulevase süsteemi omadusi.<br />

Tänu tarkvara kui rakendusvaldkonna keerukusele ei saa loota kiirele edule, kuid olemasolevaid<br />

teadmisi mõistlikult kasutades on võimalik üsnagi edukalt vältida paljusid tavalisi vigu ning<br />

potentsiaalseid ohtusid.<br />

Tarkvaratehnika kursuste eesmärk on:<br />

• põhjendada õppuritele tarkvaratehnika (software engineering) kui distsipliini vajadust; see<br />

kõlab naeruväärselt, aga paljud tarkvaratehnika põhitõed tunduvad esmapilgul sedavõrd<br />

triviaalsed, et programmistid ei võta neid tõsiselt (analoogia halduse ja haldusjuhtimisega)<br />

• selgitada, et tarkvara loomine on lahutamatu <strong>osa</strong> süsteemide loomisest, ning tarkvara inseneri<br />

tegevuspiirkond ja vastutus laieneb tegelikkuses tunduvalt väljapoole tarkvara kui omaette<br />

toote piire<br />

• selgitada, miks tarkvara inseneri tegevus on lähedasem süsteemi-inseneri tegevusele kui arvutiinseneri<br />

või arvutiteadlase tegevusele<br />

• tutvustada ja õpetada kasutama lihtsaid, asjakohaseid ja praktikule arusaadavaid süsteemi ja<br />

tarkvara loomise protsessi erinevaid etappe kirjeldavaid mudeleid<br />

• firmade empiirilise kogemuse üldistamine ja edastamine mudelite, eeskujude,<br />

dokumendivormide, tabelite ja eeskirjade ning soovituste näol, koos selgitustega, miks need on<br />

head ja vajalikud<br />

51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!