Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tarkvarasüsteemi arhitektuuri kavandamisest

1,759 views

Published on

Slaidid Tehnikaülikooli aine IDK0071 loengust teemal "Tarkvarasüsteemi arhitektuuri kavandamisest. Praktiku seminar"

Published in: Education
  • Login to see the comments

Tarkvarasüsteemi arhitektuuri kavandamisest

  1. 1. Tarkvarasüsteemi arhitektuuri kavandamisest IDK0071. Praktiku seminar Andres Kütt RIA, arhitekt 02.11.2015
  2. 2. Sissejuhatus
  3. 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. 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
  5. 5. Ekskurss ajalukku
  6. 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. 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. 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. 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. 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. 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
  12. 12. Süsteemimõtlemine
  13. 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. 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. 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. 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. 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
  18. 18. Keerukus
  19. 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
  20. 20. Keerukus Elementide hulk / Aeg Võimete piir
  21. 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
  22. 22. Riigi arhitektuurist
  23. 23. Kui aega jääb, siis eraldi slaidipakk “Architecting Estonia“
  24. 24. Addendum
  25. 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.
  26. 26. Aitäh! Andres Kütt andres.kutt@ria.ee

×