Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Ohjelmistotekniikan menetelmät, kertausta

Samankaltaiset esitykset


Esitys aiheesta: "Ohjelmistotekniikan menetelmät, kertausta"— Esityksen transkriptio:

1 582101 - Ohjelmistotekniikan menetelmät, kertausta

2 Kertausluennon asiat Kysymyksiä? Kurssin keskeisin asiasisältö
Koetehtävät tehtävätyypit esimerkkitehtäviä ja -ratkaisuja … ja vielä kysymyksiä?

3 Kysymyksiä Onko jokin jäänyt epäselväksi?
epäselvyyksiä harjoitustehtävissä painovirheitä luentokalvoissa mitkä UML-kaaviot pitää osata ja kuinka tarkasti

4 Kurssin keskeisin sisältö 1/6
Tietojärjestelmä, ohjelmisto, ohjelma Ohjelmisto- vs. perinteinen teollinen tuotanto ohjelmistot laajoja, monimutkaisia, abstrakteja muutakin kuin ohjelmointia, erityisesti mallintamista perinnejärjestelmät vs. oliojärjestelmät Ohjelmiston elinkaari eri vaiheet ja niille tyypilliset näkökulmat, menetelmät, kaaviot, dokumentit työkalut ja niiden keskeiset toiminnot elinkaarimallit (prosessimallit) iterointi & inkrementaalisuus

5 Kurssin keskeisin sisältö 2/6
Mallintamisesta miksi mallinnetaan? mallinnuskielet: minkälaisia, miksi erilaisia? abstraktiotasot vs. näkökulmat vaiheittainen olioperustainen mallintaminen Strukturoitu mallinnus vs. olioperustaisuus erot ja yhtäläisyydet keskeiset kaaviotyypit ja mihin niitä käytetään

6 Kurssin keskeisin sisältö 3/6
Sidosryhmäkaavio mitä kuvaa & mihin käytetään? kaavioelementit Käyttötapaukset mitä kuvaa? mihin käytetään (elinkaaren eri vaiheissa)? tekstikuvauksen tyypilliset osat UML:n käyttötapauskaavio käyttötapausten väliset suhteet

7 Kurssin keskeisin sisältö 4/6
Sanastot erilaiset sanastot sanaston laatiminen sanaston käyttö Luokkamalli UML-luokkakaavio kaavioelementit & niiden variaatiot ja määreet luokat ja oliot (eli luokkien ilmentymät) eri abstraktiotasojen kaaviot luokkamallin laatiminen ja tarkentaminen luokkamalli vs. käyttötapaukset

8 Kurssin keskeisin sisältö 5/6
Ohjelmistoarkkitehtuuri ja sen suunnittelu arkkitehtuurin tehtävä (mitä tarkoittaa “tuettavuus”?) kerrosarkkitehtuuri järjestelmän jaottelun perusmallina jaottelun kuvaaminen UML-pakkauksilla Riippuvuudet riippuvuusmekanismit, riippuvuudet eri abstraktiotasoilla riippuvuussyklit ja niiden poistaminen tapahtumankäsittely Arkkitehtuurimallit: MVC

9 Kurssin keskeisin sisältö 6/6
Tarkan tason luokkasuunnittelu siirtyminen määrittelystä suunnitteluun operaatioiden sijoittelu luokkiin & suunnittelutason luokat suunnittelumallit Sekvenssikaavio mitä kuvaa & mihin käytetään? kaavioelementit Toteutus ja testaus UML-kaavioista Java-toteutukseen erilaista testausta prosessin eri vaiheissa, JUnit Ylläpito: aktiviteetit, työkalut

10 Koetehtävät: tehtävätyypit
Esseekysymykset, lyhyet määrittelytehtävät, väittämät Kaavion (tai mallin) laatiminen sidosryhmäkaavio tekstikuvauksesta käyttötapaukset ja kt-kaavio tekstikuvauksesta luokkakaavio tekstikuvauksesta, sanastosta tai käyttötapausten läpiviemiseksi sekvenssikaavio koodista tai tietyn käyttötapauksen läpivientiä kuvaamaan Kaavion ymmärtäminen väitteiden yhdenmukaisuus luokkakaavion kanssa kaavion muokkaaminen, jotta sillä voidaan ilmaista tietty tilanne ilmentymätason kaavion laatiminen luokkakaavion pohjalta riippuvuuksien ja muiden arkkitehtonisten ominaisuuksien merkitseminen luokkakaavioon tai tunnistaminen luokkakaaviosta

11 Esimerkkejä: esseet ja määrittelyt 1/2
Nimeä tietojärjestelmän elinkaaren päävaiheet. Testausohjatun kehityksen seurauksena syntyy kahdenlaista koodia: testikoodia ja sovelluskoodia. Mitkä ovat kolme päätapaa sijoittaa testikoodi suhteessa sovelluskoodiin? Miten testikoodi voidaan sijoittaa JUnit-testauskehystä käytettäessä? Mikä on sidosryhmäkaavio ja mihin sitä käytetään?

12 Esimerkkejä: esseet ja määrittelyt: 2/2
Mikä on perinnejärjestelmä? Mitkä ovat perinnejärjestelmän tyypilliset piirteet? Miten järjestelmästä tulee perinnejärjestelmä? Mitä ovat käyttötapaukset ja mihin niitä käytetään? Selosta keskeisimmät käyttötapauksen tekstikuvauksen osat. Yhteys, kooste ja kompositio ovat kaikki UML-luokkamalliin liittyviä käsitteitä. Selosta, mitä ne tarkoittavat, mihin niitä käytetään ja miten ne liittyvät toisiinsa. Mitä tarkoitetaan versionhallintajärjestelmällä? Mitkä ovat versionhallintajärjestelmän tärkeimmät toiminnot?

13 Esimerkkejä: kaavion laatiminen 1/4
Olet suunnittelemassa tietokonepeliversiota eräästä itämaisesta taistelulajista. Peli koostuu otteluista, joissa taistellaan yksi pari kerrallaan. Peli sisältää joukon tietokoneen ohjaamia ottelijoita, joiden lisäksi käyttäjät voivat luoda omia nimettyjä ottelijoitaan. Ottelija osaa tiettyjä lajille ominaisia liikesarjoja, joita käytetään taisteltaessa muita ottelijoita vastaan. Ottelijan hallitsemat liikesarjat määräytyvät ottelijan keräämän pistemäärän perusteella; kunkin liikesarjan osaaminen edellyttää tiettyä määrää pisteitä. (Ottelija voi kartuttaa pistesaldoaan ottelusta ja turnauksesta toiseen.) Liikesarjat ovat joko hyökkäyksiä tai torjuntoja. Tietyn hyökkäyksen voi torjua vain tietyllä torjunnalla; sama torjunta voi kuitenkin purra useaan eri hyökkäykseen. Onnistuneesta hyökkäyksestä saa tietyn määrän pisteitä. Pelin voittaa ottelussa enemmän pisteitä kerännyt pelaaja. Tasatilanteessa voittaja arvotaan. Kunkin ottelun voittaja riistää puolet voittamansa ottelijan pisteistä itselleen.

14 Esimerkkejä: kaavion laatiminen 2/4
Kullakin ottelijalla on nimi ja tietty graafinen hahmo, jonka voi valita joukosta eri vaihtoehtoja. (Hahmoilla on yksikäsitteiset numerot.) Kuhunkin liikesarjaan liittyy nimi ja tietty joukko asentoja, jotka peräkkäin esitettynä muodostavat koko liikesarjan. (Asennoilla on yksikäsitteiset numerot.) Järjestelmässä on esitetty omana kuvanaan kukin hahmo kaikissa mahdollisissa asennoissa. (Kuvaan liittyy kuvatiedoston nimi.) Sama asento voi esiintyä useassa eri liikesarjassa ja samassa liikesarjassa useampaan kertaan. Tietyn ottelijan suorittama liikesarja animoidaan esittämällä peräkkäin ottelijan hahmoon liittyvät kuvat kyseisen liikesarjan asennoissa. Peliä pelataan turnausmuotoisesti ottelu kerrallaan. Turnaus aloitetaan valitsemalla turnauksen osallistujamäärä (jokin kahden potenssi) sekä ilmoittamalla halutut ihmispelaajien ohjaamat ottelijat turnaukseen. Jäljelle jääviin osallistujapaikkoihin arvotaan tietokoneen ohjaamia ottelijoita. Tämän jälkeen arvotaan ottelukaavio, joka koostuu joukosta kahden ottelijan välisiä otteluita. Ottelun voittaja pääsee aina turnauksessa jatkoon.

15 Esimerkkejä: kaavion laatiminen 3/4
”Peruspotku” Ottelu 1: Leena vs. Nina Ottelu 2: Pekka vs. Simo Ottelu3: Pirkka vs. Pirjo Ottelu 4: Otto vs. Saara Ottelu 5: Ottelun 1 voittaja vs. ottelun 2 voittaja Ottelu 6: Ottelun 3 voittaja vs. ottelun 4 voittaja Ottelu 7 (loppuottelu): Ottelun 5 voittaja vs. ottelun 6 voittaja hahmo 1 asennossa 12 hahmo 1 asennossa 13 hahmo 1 asennossa 14 hahmo1 asennossa 13 hahmo 1 asennossa 12 Laadi attribuuttitason UML-luokkakaavio kuvaamaan pelin tietosisältöä. Merkitse kaavioon yhteyksien osallistumisrajoitteet. Muista myös kooste- ja kompositioyhteyksien käyttö. Kaaviossa ei tarvitse esittää operaatioita eikä yhteyksien navigointisuuntia. Mieti tarkkaan, milloin aliluokitus on todella tarpeen. Vältä toistamasta mitään tietoa, joka on johdettavissa muista tiedoista.

16 Esimerkkejä: kaavion laatiminen 4/4
Hyökkäys Torjunta Liikesarja Asento Hahmo Turnaus pistearvo Kuva Suoritus 0..2 1 * 0..1 Ottelu {ordered} numero tiedosto nimi pistemäärä ihmispelaaja? seur. ottelu ed. ottelu voittaja ottelija kyky voitettu ottelu Ottelija

17 Esimerkkejä: kaavion ymmärtäminen 1/2
Mitkä seuraavista väitteistä ovat alla annetun elokuvia ja näyttelijöitä kuvaavan luokkakaavion mukaisia ja mitkä eivät? Perustele vastauksesi sopivilla ilmentymätason kaavioilla. (Väite on kaavion mukainen, jos se ei ole ristiriidassa kaavion kanssa tai jos väitteessä esitetty tilanne on esitettävissä kaavion mukaisella tietosisällöllä.) Marlon Brando markkinoi elokuvaa ”Kummisetä” antamalla kaksi haastattelua ja Al Pacino luennoimalla Keuruun elokuvakerhon kesäjuhlilla. Elokuvatähti Tyrkyllä ei ole roolisuoritusta missään elokuvassa. Jokaisessa elokuvassa on oltava vähintään yksi tähti. Marlon Brando markkinoi Aki Puhvelimäen elokuvaa ”Maali kuivuu”, vaikka hänellä ei ole siinä roolia. Rauli Raikas näyttelee elokuvan ”Ensirakastajan paluu” kaikki roolit.

18 Esimerkkejä: kaavion ymmärtäminen 2/2
Elokuva Rooli roolinimi: String kuvaus: String Näyttelijä nimi: String ikä: int nimi: String ohjaaja: String ensi-ilta: Date tyylilaji: String 1..* * 1 Markkinointitehtävä Elokuvatähti * 1..* 1 kuvaus: String

19 Kiitos ja onnea kokeeseen!
Kysymyksiä? Kiitos ja onnea kokeeseen!


Lataa ppt "Ohjelmistotekniikan menetelmät, kertausta"

Samankaltaiset esitykset


Iklan oleh Google