ER-kaaviot. Tilakaaviot. UML-kaaviot (luokkakaavio) Tietohakemisto. Analysointitekniikoita ja -menetelmiä. UML-kaaviot (sekvenssikaavio) Kirjasto

Samankaltaiset tiedostot
ER-kaaviot. Ohjelmien analysointi. Tilakaaviot. UML-kaaviot (luokkakaavio) Tietohakemisto. UML-kaaviot (sekvenssikaavio) Kirjasto

Ohjelmien analysointi. ER-kaaviot

4. Datan käsittely lyhyt katsaus. Havaitsevan tähtitieteen peruskurssi I, luento Thomas Hackman

Jaetut resurssit. Tosiaikajärjestelmät Luento 5: Resurssien hallinta ja prioriteetit. Mitä voi mennä pieleen? Resurssikilpailu ja estyminen

Mat Lineaarinen ohjelmointi

3. Datan käsittely lyhyt katsaus

Johdatus tekoälyn taustalla olevaan matematiikkaan

5. Datan käsittely lyhyt katsaus. Havaitsevan tähtitieteen peruskurssi I, luento Thomas Hackman

Luento 6 Luotettavuus Koherentit järjestelmät

Yrityksen teoria ja sopimukset

Jaksolliset ja toistuvat suoritukset

Paperikoneiden tuotannonohjauksen optimointi ja tuotefokusointi

Tchebycheff-menetelmä ja STEM

6. Stokastiset prosessit (2)

COULOMBIN VOIMA JA SÄHKÖKENTTÄ, PISTEVARAUKSET, JATKUVAT VARAUSJAKAUMAT

ABTEKNILLINEN KORKEAKOULU

Kuluttajahintojen muutokset

Taustaa KOMPLEKSILUVUT, VÄRÄHTELIJÄT JA RADIOSIGNAALIT. Jukka Talvitie, Toni Levanen & Mikko Valkama TTY / Tietoliikennetekniikka

Markov-prosessit (Jatkuva-aikaiset Markov-ketjut)

Painotetun metriikan ja NBI menetelmä

3 Tilayhtälöiden numeerinen integrointi

Turingin kone on kuin äärellinen automaatti, jolla on käytössään

BL20A0600 Sähkönsiirtotekniikka

Epälineaaristen pienimmän neliösumman tehtävien ratkaiseminen numeerisilla optimointimenetelmillä (valmiin työn esittely)

FYSA220/2 (FYS222/2) VALON POLARISAATIO

811120P Diskreetit rakenteet

Asennus- ja käyttöohjeet. Videoterminaali

SOTEMAKU esiselvitysraportti

r i m i v i = L i = vakio, (2)

Mekaniikan jatkokurssi Fys102

5. Datan käsittely lyhyt katsaus

Luento 5. Timo Savola. 28. huhtikuuta 2006

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

4. A priori menetelmät

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

Esitä koherentin QAM-ilmaisimen lohkokaavio, ja osoita matemaattisesti, että ilmaisimen lähdöstä saadaan kantataajuiset I- ja Q-signaalit ulos.

Uuden eläkelaitoslain vaikutus allokaatiovalintaan

Puupintaisen sandwichkattoelementin. lujuuslaskelmat. Sisältö:

AquaPro Bedienungsanleitung Operating instructions Gebruiksaanwijzing Käyttöohje FIN Rev.0607

Työn tavoitteita. 1 Johdanto. 2 Ideaalikaasukäsite ja siihen liittyvät yhtälöt

Sisällysluettelo Laitteen asennus Toiminnot Tekniset tiedot Asetukset Viestikoodit Huolto Takuu Turvallisuusohjeet Toiminnot

HR Lyhyt kuvaus. 1. Toimituksen laajuus

Painokerroin-, epsilon-rajoitusehtoja hybridimenetelmät

Sähköstaattinen energia

Reaaliarvoinen funktio f : on differentioituva pisteessä x, jos f:lle on siinä voimassa kehitelmä. h h. eli. Silloin

Eloisuusanalyysi. TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 16. marraskuuta 2009 TIETOTEKNIIKAN LAITOS. Eloisuusanalyysi.

811120P Diskreetit rakenteet

Geneettiset algoritmit ja luonnossa tapahtuva mikroevoluutio

Kokonaislukutehtävien formulointeja ( ) 1.4) Mirko Ruokokoski S ysteemianalyysin. Laboratorio. Mirko Ruokokoski

10.5 Jaksolliset suoritukset

Epätäydelliset sopimukset

4. MARKKINOIDEN TASAPAINOTTUMINEN 4.1. Tasapainoperiaate Yritysten ja kuluttajien välinen tasapaino

- Keskustelu symbolein. i

X310 The original laser distance meter

Kokonaistodennäköisyys ja Bayesin kaava. Kokonaistodennäköisyys ja Bayesin kaava. Kokonaistodennäköisyys ja Bayesin kaava: Esitiedot

Ohjelmoinnin peruskurssi Y1

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

PPSS. Roolikäyttäytymisanalyysi Tämän raportin on tuottanut: MLP Modular Learning Processes Oy Äyritie 8 A FIN Vantaa info@mlp.

3.5 Generoivat funktiot ja momentit

7. Keko. Tarkastellaan vielä yhtä tapaa toteuttaa sivulla 162 määritelty tietotyyppi joukko

= E(Y 2 ) 1 n. = var(y 2 ) = E(Y 4 ) (E(Y 2 )) 2. Materiaalin esimerkin b) nojalla log-uskottavuusfunktio on l(θ; y) = n(y θ)2

VERKKO-OPPIMATERIAALIN LAATUKRITEERIT

Työn tavoitteita. 1 Johdanto. 2 Ideaalikaasukäsite ja siihen liittyvät yhtälöt

MS-A0205/MS-A0206 Differentiaali- ja integraalilaskenta 2 Luento 7: Lagrangen kertojat. Pienimmän neliösumman menetelmä.

Yrityksen teoria. Lari Hämäläinen S ysteemianalyysin. Laboratorio. Teknillinen korkeakoulu

Sähkön- ja lämmöntuotannon kustannussimulointi ja herkkyysanalyysi

Mittausvirhe. Mittaustekniikan perusteet / luento 6. Mittausvirhe. Mittausepävarmuus ja siihen liittyvää terminologiaa

Kollektiivinen korvausvastuu

Johdatus f90/95 ohjelmointiin. H, R & R luvut 1-3

Nimi: Ratkaise tehtävät sivun alalaitaan. (paperi nro 1) 1. Valitse oikea toisen asteen yhtälön ratkaisukaava: (a) b ± b 4ac 2a. (b) b ± b 2 4ac 2a

1. Luvut 1, 10 on laitettu ympyrän kehälle. Osoita, että löytyy kolme vierekkäistä

Eräs Vaikutuskaavioiden ratkaisumenetelmä

Flow shop, työnvaiheketju, joustava linja, läpivirtauspaja. Kahden koneen flow shop Johnsonin algoritmi

HIFI-KOMPONENTTIJÄRJESTELMÄ

TheraPro HR Lyhyt kuvaus. 1. toimituksen laajuus

Säilörehun korjuuajan vaikutus maitotilan talouteen -lyhyen aikavälin näkökulma

TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010

Simplex-menetelm. S ysteemianalyysin. 11. luento: Duaali-simplex. 1. vaiheen duaali-simplex. Hinnoittelu. Pivot-rivin laskeminen. Degeneroituneisuus

Mat /Mat Matematiikan peruskurssi C3/KP3-I Harjoitus 2, esimerkkiratkaisut

Timo Tarvainen PUROSEDIMENTIIANALYYSIEN HAVAINNOLLISTAMINEN GEOSTATISTIIKAN KEINOIN. Outokumpu Oy Atk-osasto

Palkanlaskennan vuodenvaihdemuistio 2014

10. Painotetut graafit

KÄYTTÖTURVALLISUUSTIEDOTE

FDS-OHJELMAN UUSIA OMINAISUUKSIA

Hakemikaoen on liitettävä asiakirja. Jolla valitsijayhdistys on

NeuroHaku monikerroksisen perceptron-neuroverkon epälineaarinen optimointi

JOHDANNAISTEN KÄYTTÖ JOUKKOVELKAKIRJALAINASALKUN RISKIENHALLINNASSA: empiirinen tutkimus kotimaisista pitkän koron rahastoista vuosilta

KOKONAISRATKAISUT YHDESTÄ PAIKASTA

Rinnakkaisuus. parallel tietokoneissa rinnakkaisia laskentayksiköitä concurrent asioita tapahtuu yhtaikaa. TTY Ohjelmistotekniikka

KÄYTTÖTURVALLISUUSTIEDOTE

Ohjelmoinnin perusteet Y Python

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Yksikköoperaatiot ja teolliset prosessit

11. Vektorifunktion derivaatta. Ketjusääntö

Kokonaislukuoptimointi

KÄYTTÖTURVALLISUUSTIEDOTE

1. YLEISKATSAUS MYYNTIPAKKAUKSEN SISÄLTÖ. ZeFit USB -latausklipsi Käyttöohje. Painike

Esimerkki: Laskin (alkua) TIEA341 Funktio ohjelmointi 1 Syksy 2005

Taustaa. Sekventiaalinen vaikutuskaavio. Päätöspuista ja vaikutuskaavioista. Esimerkki: Reaktoriongelma. Johdantoa sekventiaalikaavioon

1 0 2 x 1 a. x 1 2x c b 2a c a. Alimmalta riviltä nähdään että yhtälöyhmällä on ratkaisu jos ja vain jos b 3a + c = 0.

Transkriptio:

Analsontteknkota a -menetelmä Kuvausteknkota ER-kaavot tlakaavot UML-kaavot Tetohakemsto Vuokaavot a vuoanals Ohelma-anals rppuvuusanals rstvttauslstaukset kutsuvttauskaavot Vpalont (slcng) ER-kaavot N Krasto asakas omstus M Lanaaa lanaus N N Kra Kra varataan Merktse varatuks E varauksa Merktse saapuneeks Postettu Tlakaavot Kra lanataan Merktse lanatuks Huonokuntonen Posta Lanaushllssä Palautustskllä Ota kästeltäväks On varauksa Ilmota saapumsesta Lanassa Merktse lanatuks Varattuen hllssä UML-kaavot (luokkakaavo) Kra krottaa ISBN Anesto hankntapävä hnta kopomäärä hank ( ) luettelo ( ) CD kesto Leht vuos numero Krasto : Lanaaa UML-kaavot (sekvensskaavo) hae(anesto) : Luettelo lanaa(asakas) : Anesto : Asakasrekster tarksta(asakas) Tetohakemsto Ssältö: nm tetoalkon, tetovaraston ta ulkosen olon pääasallnen nm alas kättökohta a tapa tetoalkota kättävät prosesst kättötapa (sötteenä, tulosteena, tetovarastona) ssällön kuvaus (kätett notaato) lsätetoa Nm Puhelnnumero Alas Kättökohta a -tapa AssessAganstSet-up (tuloste) DalPhone (söte) Kuvaus puhelnnumero = ( suuntanumero ) + varsnanen numero suuntanumero = * nollalla alkava --numeronen luku * varsnanen numero = * 6-8-numeronen luku * 6

Teto- a kontrollvuo Vuokaavot flow graph ltt kääntääteknkkaan kätetään esm. optmonnssa flow chart (kulkukaavo) kontrolln kulku estetään algortmn tasolla flow dagram abstraktmp ests kun edellset kätetään ohelmen suunnttelussa (takasnmallnnuksessa) Teto a kontroll vodaan esttää samassa kaavossa Kääntän lttvät vuokaavot Peruslohko (basc block) koostuu peräkkässtä ohelman lausesta Kontrollvuo e saa haarautua kesken peruslohkon Peruslohkon vo alottaa: ohelman (lauselstan). lause hpn kohteena oleva lause hppkäskn älkeen tuleva lause 7 8 Peruslohkot Algortmn esttämnen (kulkukaavo) prod := 0; := ; do begn prod := prod + a [ ] * b [ ]; := + ; end whle <= 0 Optmont t f E S S t S S S E f S; S f E then S else S do S whle E 9 0 Vuoanals (flow analss) Esmerkk abstraktsta tulknnasta Ohelman aoakasten omnasuuksen tutkmnen aamatta ohelmaa kätetään ksnkertastettua, smbolsta versota ohelman datasta Vahtoehtosa termeä: smbolnen aamnen (smbolc eecuton) abstrakt tulknta (abstract nterpretaton) Tarkotus: optmont ohelmen todstamnen nvarantten (psväsvättämen) generont ohelman luotettavuuden parantamnen Yhdeksällä aollsuus esm. onko luku 6 aollnen 9:llä? ratkasu: + + + + 6 = 8 on aollnen vodaan soveltaa tarkstuksssa * 7 + 76 =? = 6 6 7 7

Esmerkkeä vuoanalssta: muutoksa koodn parantamseks Esmerkk kallden laskutomtusten välttämsestä Peräkkänen kood: lausekkeen tostuvan evaluonnn elmnont vakoden korvaamnen nden arvolla Slmukat: koodn srtämnen slmukan ulkopuolelle kallden laskutomtusten välttämnen Muta parannuksa: muuttuan korvaamnen kuolleen koodn elmnont Tehokkuus := ; whle < 00 do a := * ; = + ; od := ; t := ; whle < 00 do a := t; = + ; t := t + ; od B <- lauseke; Koodn srtämnen slmukan ulkopuolelle Vodaanko srtää? B <- lauseke; Merknnät: Abstraktt tetovuokaavot Data Muutos Data Muutos Data Muutos Data Data Olo Olo Tetovarasto Järestelmän ulkonen olo esm. söte ta tuloste Data 6 Muutos ta prosess A a B evät rpu slmukkalaskursta Tetovuo (ta tetovrta) Tetovarasto 6 Esmerkk tetovuokaavosta Lanaaa Krastokortt Kran vvakood Kra Lue kortt Asakastedot Kran tedot Merktse lanatuks Eräpävä Kutt Puheään Valttu numero Sottaa Äänaallon muuttamnen sgnaalks Näppämstön elektronkka Tetovuokaavon tarkentamnen Puheään Valttu numero Elektronnen sgnaal Taauudet Asakastetokanta Anestotetokanta Puhelnsotto Puhelun ktkentä Kuultu puhe Elektronnen sgnaal Vastaaa Sgnaaln muuttamnen äänaalloks Kuultu puhe 7 8

Tarkennuksen merknnät Ohelma-anals A A V f X f f W Y f F Z B Z f f6 Z Z f7 B Lähdekoodn a muden dokumentten tarkastelu (vrt. koodanals) Analsonta tapahtuu nelällä tasolla: toteutustaso rakenteellnen taso staattnen anals X Y f f f f f Z tomnnallnen taso sovellusalueen taso dnaamnen anals 9 0 Esmerkkeä ohelmaanalssta Staattnen anals Nätä sen alohelman runko, ota kutsutaan tetstä lauseesta. Nätä sen tpn esttel, ota kätetään tetn muuttuan esttelssä. Ets kakk muuttuat, otka ovat näkvä tetssä alohelmassa a otka ovat tettä tppä. Dnaamnen anals Ets kakk lauseet, otka suortetaan tetn muuttuan arvon tuottamseks. Ets kakk lauseet, otka kättävät tetn muuttuan arvoa. Ets kakk muuttuat, oden arvoa kätetään laskettaessa tetn muuttuan arvo. Kohdeelementt Lähdeelementt tedosto tedosto tedosto Koodelementten suhteta Suhde ssällttää ssältää määrttelee kutsuu vttaa (lukee) vttaa (krottaa) tedosto muuttua muuttua muuttua Kuvaus tedoston ssällttämnen (nclude) toseen tedostoon n määrttel tedostossa muuttuan määrttel tedostossa staattnen n kutsu muuttuan arvon lukemnen n ssällä muuttuan arvon pävttämnen n ssällä Esmerkkeä ohelmakaavosta Kutsukaavo ta kutsuvttauskaavo (call graph) Yhteenvetokaavo (program summar graph) Alohelmen välnen vuokaavo (nterprocedural flow graph) Rppuvuuskaavo (sstem dependenc graph) ( defne ( a ) ( * a a ) ) ( defne ( fun ) ( + ( ) ( ) ) )? ( fun ) = Kutsukaavo (kontrolln kulku) fun

( defne ( a ) ( * a a ) ) ( defne ( fun ) ( + ( ) ( ) ) )? ( fun ) = paluuarvo = 9 arg = arg = fun arg = arg = paluuarvo = Tetovuon lsäämnen paluuarvo = Tonen esmerkk kutsukaavosta program Sums read ( n ); := ; whle ( <= n ) sum := 0; 6 Acc ( sum, ); 7 wrte ( sum, ); 8 := + ; 9 end whle 0 end. Sums procedure Acc (, ) ref, := ; whle ( <= ) (, ); ( ); 6 end whle 7 return sum, Acc 8 procedure ( ) ref 9 (, ); 0 return procedure ( a, b ) ref a; value b a := a + b; return,, 6 Sums sum Acc a Yhteenvetokaavo todellset parametrt Sums Acc { U 6 sum { U, U, U { U 6 { U 6 Alohelmen a välnen vuokaavo sum a muodollset parametrt parametrltäntä parametren tetovuo 7 { U 6 Kättöoukot (use sets): U : sum rvllä 7 U : rvllä 7 U : rvllä 8 U : rvllä U : rvllä a U 6 : a rvllä { U, U sum { U, U, U 6 { U { U 8, U 6 Rppuvuuskaavo Acc := whle <= Vpalont Ohelmen mmärtämnen Vrheden etsntä Ohelmen rnnakkastamnen Vpaleen laskenta perustuu ohelman teto- a kontrollvuohon vpaleen lauseet evät välttämättä peräkkäsä Vpale määrät ohelmakohdan (rvn) a tarkasteltaven muuttuen perusteella Alkuperänen määrtelmä: vpale ssältää lauseet, otka vovat vakuttaa tetn muuttuan arvoon tetssä ohelmakohdassa vpaleen aamnen tuottaa tälle muuttualle samat arvot kun alkuperäsen ohelman aamnenkn seuraus Ohelmen a lläpto b a evoluuto a := a + b a b 9 0

Esmerkkohelma Esmerkk () Esmerkkohelma Esmerkk () () begn () read (, ); () total := 0.0; () sum := 0.0; () f <= then (6) sum := ; (8) read ( ); (9) total := * ; (0) end; () wrte ( total, sum ); () end; Vpale krteern <, { > perusteella: () begn () read (, ); () f <= then (8) read ( ); (0) end; () end; () begn () read (, ); () total := 0.0; () sum := 0.0; () f <= then (6) sum := ; (8) read ( ); (9) total := * ; (0) end; () wrte ( total, sum ); () end; Vpale krteern <, { > perusteella: () begn () read (, ); () end; Esmerkkohelma () begn () read (, ); () total := 0.0; () sum := 0.0; () f <= then (6) sum := ; (8) read ( ); (9) total := * ; (0) end; () wrte ( total, sum ); () end; Esmerkk () Vpale krteern <, { total > perusteella: () begn () read (, ); () total := 0.0; () f <= then (9) total := * ; (0) end; () end; Rv? Esmerkkohelma begn () read ( ); () f ( < 0 ) then () := f ( ); () := g ( ); else () f ( = 0 ) then (6) := f ( ); (7) := g ( ); else (8) := f ( ); (9) := g ( ); end f; end f; (0) wrte ( ); () wrte ( ); end; Vpalont a ohelman rppuvuuskaavo 8 9 datarppuvuudet kontrollrppuvuudet 6 7 0 Vpale krteern <0, { > perusteella Vpalonnn aottelu () Etenevä vpalont Alkuperänen el takautuva (backward) vpale ssältää sellaset lauseet, otka vakuttavat muuttuan arvoon Etenevä (forward) vpale ssältää sellaset lauseet, ohn muuttua vakuttaa (ossa vtataan muuttuaan) Esmerkkohelma () read ( n ); () := ; () c := 0; () whle <= ( n dv ) do () f ( n mod ) = 0 then (6) wrte ( ); (7) c := c + ; (8) f; (9) := + ; (0) od; () wrte ( c ); Etenevä vpale krteern <, { c > perusteella: () c := 0; (7) c := c + ; () wrte ( c ); 6 6

Vpalonnn aottelu () Dnaamnen vpalont (verrattuna staattseen) Alkuperänen el staattnen vpalont perustuu käännösakaseen ohelman tarkasteluun Dnaamnen vpalont otetaan mukaan van ne lauseet, otka tulee suortettua vpale ssältää lauseet, otka vakuttavat muuttuan arvoon tetllä ohelman suortuskerralla dnaamselle vpalonnlle on heman erlasa määrtelmä Esmerkkohelma () read ( n ); () := ; () c := 0; () whle <= ( n dv ) do () f ( n mod ) = 0 then (6) wrte ( ); (7) c := c + ; (8) f; (9) := + ; (0) od; () wrte ( c ); Staattnen vpale krteern <, { c > perusteella: kakk muut rvt pats rv 6 Dnaamnen vpale krteern <, { c > perusteella sötearvolla n = : () c := 0; () wrte ( c ); 7 8 Dnaamsen vpalonnn erlasa määrtelmä Määrtelmen ero Määrtelmä : osa-ohelma, oka laskee tarkasteltaven muuttuen arvot tetllä suortuskerralla Määrtelmä : kokoelma lauseta, otka vakuttavat tarkasteltaven muuttuen arvohn tetllä suortuskerralla e välttämättä aettava osa-ohelma Esmerkkohelma () := 0; () whle < 0 do () f = 0 then () h := 0; () := + ; (6) od; (7) wrte ( h ); Dnaamnen vpale krteern < 7, { h > perusteella:. määrtelmän mukaan: kakk rvt. määrtelmän mukaan: kakk muut rvt pats rv 9 0 7