Ohar-ATAM pikaisesti. Ohjelmistoarkkitehtuurit 2009

Samankaltaiset tiedostot
Etukäteistehtävää

Ohjelmistoarkkitehtuurit kevät

Ohjelmistoarkkitehtuurit

9. Ohjelmistoarkkitehtuurien arviointi

Ohjelmistoarkkitehtuurien arviointi

Kevät Ohjelmistoarkkitehtuurit 2014

Kevät 2016 Arkkitehtuurin arviointi, ATAM. Ohjelmistoarkkitehtuurit 2016

9. Ohjelmistoarkkitehtuurien arviointi

Ohjelmistoarkkitehtuurit. Kevät

Ohjelmistoarkkitehtuurit Kevät Johannes Koskinen Esimerkki: Auton toiminnan monitorointijärjestelmä

7. Ohjelmistoarkkitehtuurien arviointi

Esimerkki: Auton toiminnan monitorointijärjestelmä

Arkkitehtuurin arviointi

Suunnitteluratkaisut ja niiden arviointi sulautetuissa järjestelmissä

Ohjelmistoarkkitehtuurit, syksy

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

1.3 Katsaus ohjelmistotuotannon kehittymiseen

Ohjelmistoarkkitehtuuri

Arkkitehtuurien tutkimus Outi Räihä. OHJ-3200 Ohjelmistoarkkitehtuurit. Darwin-projekti. Johdanto

7. Koneenohjausjärjestelmien suunnittelumallit. OhAr Veli-Pekka Eloranta

TOIMINNALLINEN MÄÄRITTELY MS

Ohjelmistoarkkitehtuurit, syksy

Osittavat arkkitehtuurityylit. Palveluihin perustuvat arkkitehtuurityylit. Erikoisarkkitehtuurityylit

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Valppaan asennus- ja käyttöohje


SAP. Lasse Metso

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri. Järjestelmäarkkitehtuuri

Index. ääniopas 163 Äänioppaan painike 139

Testidatan generointi

Ohjelmistoarkkitehtuurit. Kevät

McAfee epolicy Orchestrator Pre-Installation Auditor 2.0.0

Ohjelmistotuotantoprojekti

Kiekun arkkitehtuuri ja tekniikka. Ghita von Gerdten projektipäällikkö

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Viestinvälitysarkkitehtuurit

Ohjelmistojen suunnittelu

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta.

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Pilvi 9.0. Arkkitehtuuri. Esimerkki arkkitehtuurit

1 Johdanto. Ohjelmistoarkkitehtuurit Syksy 2010 TTY Ohjelmistotekniikka 1

Omatietovaranto. Jari Suhonen, THL Jari Suhoenn/ OPER

Viestinvälitysarkkitehtuurit Lähtökohta:

Tavallisimmat kysymykset

päiväys tekijä tarkastaja hyväksyjä Muutoshistoria Julkunen (Marja Julkunen)

Pilvilaskennan perusteet ja sanasto (ISO/IEC 17788) sekä jatkotyöstö. SFS SR-310 Pasi Mäkinen, Open Source Lead, Microsoft

Käytettävyyslaatumallin rakentaminen verkkosivustolle

FiSMA intranet käyttöohjeet, versio Mika Johansson

MOBIILIVARMENTEEN KÄYTTÖÖNOTTO

6. Arkkitehtuurityylit

Kieku-tietojärjestelmä Työasemavaatimukset

Xerox Device Agent, XDA-Lite. Pika-asennusopas

6. Arkkitehtuurityylit

PILETTI. Tekninen vaatimusmäärittely. v. 0.2

Darwin: Tutkimusprojektin esittely

Ohjelmistoarkkitehtuurit kevät

Ohjelmistoarkkitehtuurit

Ohjelmistoarkkitehtuurit Johannes Koskinen. Osittavat arkkitehtuurityylit

Office ohjelmiston asennusohje

Navistools Standard. Navistools

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Bosch-malli. Kolme vaihetta. Termistöä. Ohjelm!toarkkitehtuu"n

1 Johdanto. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2008

Yleisiä asioita. Harkat alkavat ensi viikolla Vierailuluentoa. Slackin #luennot-kanava taas käytössä. Ensi viikon perjantaina, Janne Viitala, Sandvik

FuturaPlan. Järjestelmävaatimukset

Selaimen kautta käytettävällä PaikkaOpin kartta-alustalla PaikkaOppi Mobiililla

Microsoft Dynamics CRM 4.0. Jani Liukkonen

Visma Liikkuvan työn ratkaisut

NORDEAN WEB SERVICES YHTEYDEN KÄYTTÖÖNOTTO

Ohjelmistokehykset ohjelmistorunkoja uudelleenkäyttö olioperustaisista ohjelmistorunko

WINDOWS 10 -kurssi.

COTOOL dokumentaatio Riskiloki

Ohjelmistoarkkitehtuurit. Syksy 2010

Vinkkejä opettajalle

Ohjelmistoarkkitehtuurit Harjoitustyö 2014

Jouko Nielsen. Ubuntu Linux

Kansallinen ASPAtietojärjestelmä

Tiistai klo , Isokatu 25, 4.krs kauppakeskus Valkean kokoustila. Tilaisuuden avaus, rahoituspäällikkö Veli-Matti Keloneva, Oulun kaupunki

Yhteenvetodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

TOIMIJAREKISTERIN TOTEUTUKSEN JA YLLÄPIDON HANKINTA - HANKINNAN YKSI- LÖINTI HUOM!

SEPA päiväkirja. Dokumentti: SEPA_diary_EM_PV.doc Päiväys: Projekti : AgileElephant Versio: V0.9

Salusfin Mobiilisovellus Käyttöohje

Uudelleenkäytön jako kahteen

Graafisen käyttöliittymän ohjelmointi Syksy 2013

Kansalaisen asiointitilin sähköposti-integraatio. Ratkaisukuvaus

12. Kehysarkkitehtuurit

Data Sailors - COTOOL dokumentaatio Riskiloki

PlugIT / Ydin: teemat ja jaksojen 2-6 suunnitelma ( )

Harjoitustyö Ohjaaja: Outi Räihä TE213. OHJ-3100 Ohjelmien ylläpito ja evoluutio. Yleiskatsaus.

Risto Pelin Microsoft Project 2002 projekti- ja yritystason järjestelmänä

Decision-centric architecture review method (DCAR) Tarjolla tänään. Arkkitehtuuritietämys Arkkitehtuuritietämys. Arkkitehtuuripäätökset

KRYSP-rajapintojen suorituskykytestaukset. Jari Torvinen

WellWorks Oy

Kuntien yhteentoimivuusseminaari. Tietomallien laatiminen Taina Nurmela projektipäällikkö, Helsingin kaupunki

Yhteentoimivuusvälineistö: Sanastoeditorin esittelytilaisuus klo Väestörekisterikeskus, Lintulahdenkuja 4, Helsinki

1 Johdanto. Pieni motivointikalvo. 1.1 Mikä on ohjelmistoarkkitehtuuri?

90 ryhmän 1 huomautuksen f alakohdan nojalla. Näin ollen tavara luokitellaan CN-koodiin muuksi titaanista valmistetuksi tavaraksi.

Projektinhallintaa paikkatiedon avulla

Oppimistavoitteet. Suunnittelumalli Design Model. Suunnittelumalli. Suunnittelumalli. Suunnittelumalli SUUNNITTELUMALLI.

Transkriptio:

Ohar-ATAM pikaisesti Ohjelmistoarkkitehtuurit 2009

Aikataulu Tämä Ohar-ATAM esittely otsikkotasolla(~5min) Arkkitehtuurin esittely (~40min), arvioiva ryhmä esittää kysymyksiä Arkkitehtuurilähestymistavat, tärkeimpien arkkitehtuuripäätösten nimeäminen ja läpikäynti (arvioiva ryhmä kirjaa näitä ylös arkkitehtuurin esittelyn aikana) arkkitehtuuripäätösten läpikäynti, arvioijat esittelevät, arkkitehti hyväksyy + täydentää tarvittaessa Laatupuun rakentaminen, skenaarioiden löytäminen (~30min) (tärkeys+vaikeus) Skenaarioiden priorisointi (~10min) Lasketaan skenaariosta tärkeys+vaikeus yhteen (poimitaan järjestyksessä ja priorisoidaan tasatilanteessa vaikeutta) Skenaarioiden analysointi: tasapainopisteet, riskit, sanalliset arviot (2+h) Arvioinnin yhteenveto: arvioiva ryhmä esittää yhteenvedon löydöksistä, yksi kalvo. (5+5min) Skenaarioiden viimeistely tilaisuuden jälkeen yms. säätö. Dokumentin kirjoittaminen

Vaiheet tarkemmin Arkkitehtuurilähestymistavat, arkkitehtuuriratkaisujen löytäminen Mitkä ovat järjestelmän tärkeimmät arkkitehtuuripäätökset, tyylit, suunnittelumallit ja yleiset ratkaisut? Miten em. ratkaisut tukevat järjestelmälle asetettuja tärkeimpiä laatuvaatimuksia? Laatupuun rakentaminen Tarkennetaan laatuvaatimukset järjestelmäkohtaisella ryhmittelyllä. Konkretisoidaan tarkennettu laatuvaatimus skenaariolla. Skenaarioiden priorisointi Skenaarioille annetaan sekä haastavuus että tärkeys, tämän jälkeen skenaariot järjestetään tärkeyden ja vaikeuden perusteella (ensisijaisesti tärkeyden, sitten haastavuuden mukaan). Skenaarioiden analysointi Otetaan tärkein analysoimaton skenaario käsittelyyn. Kysytään, mahdollistaako arkkitehtuuri tämän skenaarion? Miten ja miksi? Pyritään tunnistamaan ainakin riskit ja tasapainokohdat. (toistetaan kunnes aika loppuu/skenaariot on analysoitu)

Sanastoa: peruskäsitteet Skenaario (scenario): arkkitehtuurin testitapaus, tilanne tai tapahtumasarja, joka liittyy jonkin laatuvaatimukseen. Laatupuu (utility tree): kohdejärjestelmän laatuvaatimusten asteittainen tarkennus skenaarioiksi Herkkyyspiste (sensitivity point): Muutokset tämän arkkitehtuuripäätöksen suhteen voivat aiheuttaa merkittäviä muutoksia johonkin laatuominaisuuteen Tasapainopiste (tradeoff): Arkkitehtuuripäätös, joka vaikuttaa useampaan laatuominaisuuteen, moninkertainen herkkyyspiste. Riski (risk): Arkkitehtuuripäätös, joka saattaa aiheuttaa ongelmia tulevaisuudessa jonkun laatuattribuutin näkökulmasta. Turvallinen ratkaisu/ei-riski (no-risk): Arkkitehtuuripäätös, joka voi edesauttaa laatuominaisuuden toteutumisessa / jolla on tiedossa vain hyviä laatuseuraamuksia.

Esimerkkejä arkkitehtuuripäätöksistä MVC: mahdollistetaan käyttöliittymän päivittäminen ja mallinkäsittelyn vaihtaminen Säikeistys: erilliset säikeet sovelluksen pollausta, puhemoottoria, käyttöliittymää varten Tarkistusten karsinta: tehdään komentojen tarkastuksia vain niille osille joille tarpeellista Jonotus: yksi puhekomento kerrallaan käsittelyssä, muut jonoon Plugin-arkkitehtuuri: Ohjelmaan saadaan liitettyä helposti uusia ohjattavia sovelluksia Geneerinen ToolAPI: muiden sovellusten ohjaaminen voidaan toteuttaa eri kielillä kuin itse core Wräpätty puheentunnistus: Microsoftin kilut eristetty, mahdollistanee puheohjausmoottorin vaihtamisen Serveriluokat kontrollipisteenä: Ohjaus näiden pisteiden kautta rakenteesta selkeämpi, tapahtumien lähetys näiden kautta

Laatupuu, puumaisena laatuominaisuudet Suorituskyky tarkennukset tilausten käsittely skenaariot pystyy käsittelemään 50 pyyntöä sekunnissa (M,L) palaute nappulan painamisesta saadaan alle 0,2 sekunnissa (H,M) Laatu Muunneltavuus Saavutettavuus Vasteaika käyttöliittymän muutokset tietokannan muutokset Laitteistoviat Web-käyttöliittymään siirtyminen käyttäjien kulkuoikeuksien hallinnassa 1 kk:ssa (H,H) Tietokanta vaihdetaan MySQL-pohjaiseksi 6 kk:ssa (L,H) Ryhmäohjaimen hajoamisen jälkeen uusintakäynnistys 5 min:ssa (L,H) Tietoturvallisuus Palvelimen kaatuminen Uudelleenkäynnistys tilastointipalvelimen kaatuessa 5 min:ssa (M,M) salattu yhteys kommunikaatiossa käytetään XYZ-salausta

Laatupuu vähemmän puisena Skenaarioissa [Haastavuus, Tärkeys] Suorituskyky Responsiivisuus käyttäjälle [L,H]Käyttäjä puhuu järjestelmälle, vuoden 2004 pöytäkoneelle, järjestelmä reagoi alle 1s. [M,H] Konteksti vaihtuu sovellutuksessa, tähän reagoidaan alle 1s ja uusi sanasto on käytettävissä. Resurssien käyttö [L,M] 500:n luokan malli ladattuna on toimintakykyinen alle 50MB muistilla Muokattavuus Vaihdettavuus [L,H ]Microsoftin puheentunnistusohjelmisto vaihdetaan uudempaan versioon yhdessä työpäivässä. [H,M] ]Microsoftin puheentunnistusohjelmisto OSS Sphinxiin 2 viikkoa. Laajennettavuus [H,M] Lisätään toinen puheentunnistusmoottori rinnalle ja äänestys, implementointi 1kk. [M,L] Puhemakrojen ja äänityksen implementointi kuukaudessa. Joustavuus Yhteensopivuus [M,M] Useamman samankaltaisen sovellutuksen yhteiskäyttö ja copy&paste sovellusten välillä. [H,H] Pitää pystyä ohjaamaan kahta sovellusta joista toista pollataan ja toinen lähettää eventtejä. Tarkkuus Puheohjaus [M,M] Käytetään ilman kouluttamista puhemoottoria, tarkkuus >90%. [H,L] Auki kolme sovellusta, useampi aktiivisena, kontekstin perusteella osaa etsiä oikean kohteen 99,9%. Ylläpidettävyys Uudet työkaluversiot [H,M] Eri koneita ja eri versioita RSM:stä, sama mallilaturi toimii kaikissa ympäristöissä. Siirrettävyys [H,L] Vaihdetaan XP Vista, järjestelmä saadaan käännettyä kun tehdään muutoksia vain yhteen komponenttiin. Jäljitettävyys

Skenaariot Skenaario konkretisoi laatuvaatimuksen esimerkillä. Tapahtumasarja, joka liittyy jonkin laatuvaatimukseen. Skenaarion on oltava riittävän on täsmällinen (jotta arkkitehtuuria voidaan arvioida sitä vasten) Kirjaa skenaarioista ainakin tasapainopisteet ja riskit sekä anna koko skenaarion tarkempi selitys. Voit käyttää myös tarkempaa arkkitehtuuripäätöskohtaista kuvausta ja huomioida turvalliset ratkaisut ja herkkyyspisteet. Erilaisia skenaariotyyppejä: Käyttötapausskenaariot: käyttäjä on vuorovaikutuksessa järjestelmän kanssa Järjestelmän käyttäjä pyytää käyttöasteraportin tietokannasta samalla kun järjestelmässä on käyttöhuippu. Kasvuskenaariot: ennakoituja/odotettavissa olevia muutoksia ja tarpeita tutkivaskenaario : odottamattomat muutokset järjestelmässä/järjestelmään, odottamattomat tilanteen järjestelmän käytön aikana

Esimerkki arvioidusta skenaariosta Skenaario #: 3 Skenaario: Microsoftin puheentunnistusmoottori halutaan vaihtaa Open Source sovellukseen (Sphinx) Laatuominaisuus: Muokattavuus Ympäristö: Normaali toiminta Ärsyke: Open source villitys iskee Vaste: onnistuu kahdessa viikossa Arkkitehtuuripäätös: kapselointi wräpätty puheentunnistus Sanaston generointitapa MVC Säikeistys Tasapainopiste T3 T4 Riski R4 R5 R6 Koko skenaarion selitys: Kapseloinnin ansiosta puheentunnistusmoottori on omien rajapintojensa takana ja muualla sovelluksessa käytetään vain sovelluksen omia puheentunnistukseen liittyviä tietotyyppejä. Uuden moottorin käyttöä varten pitää luoda wräppäys/konversiot Vokottimen ja puhemoottorin tietotyyppien välille. Jos Sphinxin tunnistusmoottori ja sen antamat ilmoitukset poikkeavat paljon MS:n vastaavista, säikeistykseen saattaa tulla muutoksia. Sanasto generoidaan valmiiksi ja valmista sanastoa aktivoidaan ja deaktivoidaan tarpeen mukaan. Tämä tarkoittaa sitä, että uudelle puhemoottorille joutunee tekemään oman sanastongenerointimokkulansa. Kahden viikon aikataulu on erittäin optimistinen, vaikka vaihtaminen on huomioitu arkkitehtuurissa on työmäärä suuri.