3. Andres Kütt
• Raha eest programme tegemas alates 1993
• Viimased kümmekond aastat arhitekt
• ≈MSc (UT, Statistika), MBA (EBS), MSc (MIT)
• Hetkel Riigi Infosüsteemi arhitekt
• Minevikus Skype, Hansapank, EMTA jne. +
natuke konsultatsiooni
• Palju eri loenguid ja kursusi eri koolides
• andres.kutt@ria.ee
4. Täna kavas
• Ekskurss ajalukku
• Kuidas on varem arhitektuurist mõeldud
• Moodsa süsteemiarhitektuuri mõtte juured
• Arhitektuuri olemus
• Arhitekti roll
• Mis on arhitektuur?
• Keerukus
• Mis see on
• Ja miks see oluline on
• Riigi kui sellise arhitektuur
• Riigi infosüsteem riigi kui terviku konteskstis
• Miks see oluline on
6. Miks rääkida ajaloost
• Me kõik seisame hiiglaste õlgadel
• Kust tuleb teile varasemalt räägitud jutt tarkvara arhitektuurist?
• Maja ehitades on mõistlik vundamendist hästi aru saada
• Mul ei ole palju mõtet üle korrata asju, mida teile juba räägiti ning
mille relevantsus teie karjääri jooksul pigem küsitav on
• Vaatame asju, mis on pildil juba kaua
• 2000 aastaga jääb ebaoluline kõrvale
• Inimesed on asju ehitanud juba kaua
Täna katsun räägida asjadest, mis tõenäoliselt kehtivad kaua
7. Vitruvius Pollio
…all these must be built with due
reference to durability, convenience
and beauty
Marcus Vitruvius Pollio, 80-70 eKr.- 15 pKr
8. Minge kõndige vanalinnas
Mida mõtlesid neid maju ja seda linna kavandanud arhitektid?
• Väga kasulik mõtteharjutus
• Mis kehtib jätkuvalt
• Mis enam ei kehti?
• Miks?
• Seda linna on sadu aastaid “arendatud“!
• Jällegi sama printsiip: asjad, kui miski jääb, on ta kasulikum, kui
see, mis kaob
• Riias vanalinna ei ole, sest seal oli ühel hetkel inimestel raha uusi
maju ehitada
• Kas tulemus on parem või halvem, kui meie oma?
Tallinna vanalinnas kehtiv kehtib ka tarkvarale,
ainult et palju lühemal ajaksaalal
9. Süsteemid ja nende dünaamika
Viiekümnendatel hakati mõtlema keerulistest süsteemidest
• Asjade keskmes oli MIT
• Forrester ja system dynamics
• Wiener ja küberneetika
• Peamine probleem: kuidas juhtida keerulisi süsteeme soovitud
suunas?
• Ükski mõju ei levi koheselt
• Kuidas muuta sisendit soovitud väljundi saamiseks?
• Järeldused on suhteliselt lihtsad
• Kuid viivad kiiresti keerulise matemaatikani
Keeruliste süsteemide käitumises on kindlad, universaalsed,
seaduspärasused
10. ICBM ja nende ohutus
Koos massiivse tuumaarsenaliga sündis ka vajadus neid kuidagi
ohutuna hoida
• Vastupidiselt sellele, mida räägiti omal ajal telekas
• Süsteem on väga keeruline
• Igal sammul on inimene kaasatud
• Aga inimene üksi ei tee midagi
• Globaalne haare: radarijaamad, komandopunktid, raketibaasid
• Et kõike ohutuna hoida, tuli mõelda süsteemist kui tervikust
• Masinad, inimesed, tarkvara ja nendevahelised suhted
• Sündis süsteemiohutus kui teadus
• USA tuumalaevastikus pole olnud ühtegi reaktoriga seotud
intsidenti rohkem kui 60 aasta jooksul
Süsteemides mõtlemine on praktiliselt kasulik
11. Tänapäevased keerulised süsteemid
Süsteemid lihtsamaks kohe kindlasti ei lähe
• Me mitte ei kasuta enam tarkvara vaid elame koos tarkvaraga
• Tarkvara moodustab loomuliku, lahutamatu ja sageli nähtamatu osa
meie igapäevaelust
• Teile vast loomulik, minu põlvkonnale tuleb üle rõhutada
• Järelikult tuleb tarkvarast rääkida koos inimesega
• Targa tolmu puhul ületab paigalduse hind kübeme hinna:
majanduslik mõte on osa süsteemist
• Facebooki tarkvara peegeldab ja mõjutab teie sotsiaalset
võrgustikku
• Kuidas toimus Tesla autopiloodi lansseerimine?
Süsteemides mõtlemine on tänapäeval vältimatu
13. Süsteemi definitsioon
Süsteem on hulk olemeid ja nende seoseid millede
funktsionaalsus on suurem kui üksikute olemite
funktsionaalsuse summa
Süsteemimõtlemine on viis mõelda küsimusest, olukorrast või
probleemist eksplitsiitselt kui süsteemist
[Crawley 2015]
14. Mida see tähendab
• Süsteemimõttelemine on üks viis asjadest mõelda
• nagu loovmõtlemine või loogiline arutelu
• sellisena ei ole ta formaalne teadus
• Temast võib mõelda kui süsteemidünaamika pehmest versioonist
• Süsteemidünaamika kirjeldab süsteemi osade interaktsiooni läbi
matemaatika
• Süsteemimõtlemine kirjeldab samu interaktsioone kuid verbaalselt
• Vahel ei ole modelleerimiseks piisavalt andmeid või on
kommunikatsioon täpsusest olulisem
• Süsteemi definitsiooni on sisse ehitatud emergents: uute
funktsioonide esilekerkimine
Süsteemimõtlemine on just insenerivaldkondades sobiv viis
probleemidest mõelda
15. Arhitektuur süsteemimõtlemise kontekstis
Arhitektuur on süsteemi osade ja nende omavaheliste seoste
abstraktne kirjeldus
• Nii lihtne ongi
• Veel üldisemat määratlust on keeruline leida
• Samas on ka kõik ära öeldud
• Nii võib kirjeldada kõike: organisatsiooni, inimest, tarkvara jne.
• Kuid lihtsus on petlik
• Süsteemi osad võivad olla organisatsioon, inimene, tarkvara jne.
• Seosed võivad olla nii füüsilised kui mõju avaldavad
• Kirjeldada võib neid kõiki väga mitmel viisil
16. Vorm, funktsioon ja kontseptsioon
• Süsteemi definitsioonis on juttu funktsioonist
• Arhitektuuri definitsioonis on juttu vormist
• Kuidas ühest teiseni jõuda?
• Kuidas valida funktsiooni täitmiseks sobiv vorm?
• Seda tavaliselt peetaksegi arhitekti tööks
• Appi tuleb kontseptsioon
• Hulk mõttemalle süsteemi funktsiooni vormiga sidumiseks
• Kuidas me süsteemist mõtleme?
• Põhjus, miks Brooksi arvates tarkvara on põhimõtteliselt keeruline
Vorm ja funktsioon on süsteemi omadused, kontseptsioon mõtteline
viis ühest teise jõudmiseks
17. Vormi, funktsiooni ja kontseptsiooni kokkuvõte
• Vorm on see, mis süsteem on
• Funktsioon on see, mida süsteem teeb
• Kontseptsioon on see, kuidas neist
mõelda
Funktsioon
Vorm
Kontseptsioon
Arhitekti töö seisneb töös vormi, funktsiooni ja
kontseptsiooni kui tervikuga
19. Keerukuse definitsioon
• Süsteemi elementide, nende liikide, nende omavaheliste seoste ja
seoste liikide kaudu
• Levinud, intuitiivne ja paljude variatsioonidega
• Keerukus vs. keerulisus
• Keerulisuse omadus on süsteemi omadus näida keeruline
• Dünaamiline keerukus ilmneb läbi süsteemi osade omavahelise
interaktsiooni ajas
• Keerukus kui entroopia määr
• Keerukus kui pakitavuse määr
• Keerukus kui loogiline või termodünaamiline sügavus
• Keerukus kui sisendi ja väljundi seos
• Keerukus kui fraktaaldimensioon
• Keerukus kui alamsüsteemide hulk
Keerukusest rääkides on oluline kokku leppida
parasjagu kasutatavas definitsioonis
21. Arhitekti roll
• Arhitekti üks olulisi rolle on keerukuse juhtimine
• Arhitektuur on vaadeldav rea otsustena
• Arhitekt, võttes arvesse
• kontsepsiooni,
• sisendprotsesse ja nende ebamäärasust,
• projekti kolmnurka (aeg, raha, funktsionaalsus),
• ja muid teadaolevaid piiranguid,
• teeb otsuseid, mis võimaldavad keerukuse kasvust võimalikult
palju kasu saada
Keerukuse juhtimine on väga oluline ja väga keeruline arhitekti roll
25. Kasutatud ja viidatud kirjandus
• Frederick P Brooks. No silver bullet. In The mythical man-month,
1995. Addison-Wesley Reading, MA, 1975
• Edward Crawley, Bruce Cameron, and Daniel Selva. Systems
Architecture: Strategy and Product Development for Complex
Systems. Prentice Hall, 2015
• Melanie Mitchell. Complexity: A guided tour. Oxford University
Press, 2009
• Vitruvius Pollio. Vitruvius: The Ten Books on Architecture. Harvard
university press, 1914
• Rich, Ben R., and Leo Janos. Skunk works: A personal memoir of
my years of Lockheed. Little, Brown, 2013.