Ohjelmistotekniikan menetelmät, kertausta

Slides:



Advertisements
Samankaltaiset esitykset
– Ohjelmistojen mallintaminen, mallintaminen ja UML.
Advertisements

– Ohjelmistojen mallintaminen, kertausta
KOKEESEEN KERTAAMINEN. ENNEN LUKEMISTA  Herätä kiinnostuksesi:  Mieti, mikä sinua kiinnostaa luettavassa  Mihin tarvitset tietoa, jota olet ryhtymässä.
YouTube Rules and we want too… OKKY:n KOTISIVUJEN SUUNNITTELUKILPAILU.
FILOSOFIAN KOE YLIOPPILASKIRJOITUKSISSA. Kokeen sisältö -Koetehtävät perustuvat kursseihin FI1-FI tehtävään riittävät 1. kurssin tiedot -Myös oppiainerajat.
Vuokaaviot. 2.2 Sisällys Kaavioiden rakenne. Kaavioiden piirto symboleita yhdistelemällä. Kaavion osan toistaminen silmukalla. Esimerkkejä: − algoritmi.
Palvelukuvaustyö Pekka Linna, CSC Synergiaryhmä
Vaiheistettu ryhmätyö 3. tunti
Kaikki yhden puolesta ja yksi kaikkien puolesta!
Kuvaruutuvideot Tommi Saksa, 2008, HAMK.
Arviointi Arviointiasteikko ja -merkinnät Tutkinnon osan arviointi
Tuotteen dokumentointi
VARDA-tietovirrat: Varhaiskasvatuksen tietojen siirtyminen tiedon tuottajilta tiedon hyödyntäjille.
3D-MALLINNUS Jouni Karsikas D-MALLINNUS Jouni Karsikas 2016.
Tietokanta (database) on kokoelma tietoja, jotka liittyvät tavalla tai toisella toisiinsa (esim. henkilö -> auto -> katsastus aika -> …) Tietokannan (relaatiomalli)
Jani Kiviharju Helsingin normaalilyseo Syksy 2016
Kansallisen palveluväylän viitearkkitehtuurin päivitys
Ohjelmistotekniikan menetelmät, luokkamallin laatiminen
Yleistajuisemman artikkelin kirjoittaminen
13. Pakkaukset.
8. Näppäimistöltä lukeminen
Ohjelma Kahvit, avaus Lisenssin tuotteistaminen, Chess Events, muut liiton ajankohtaiset (Juha Sundelin) Palvelut seuroille (Aleksi.
DMPTuulin ohje ylläpitokäyttäjille
TAIDOT EDELLÄ © Petteri Elo OPS-koulutus 2016
Terveystiedon ainereaali
– Ohjelmistojen mallintaminen, kesä 2010
8. Näppäimistöltä lukeminen
Äidinkielen yo-koetyyppi keväästä 2007 alkaen: oma tekstilajinsa
Laadullisten tutkimusmenetelmien seminaari
Kehityshankkeet Tietoallas toteutus
Kielitietoisuus.
Kokeeseen vastaaminen
KE6 – Kemian kertauskurssi
Koodaamista Ohkolan koululla
Valtakunnallisen ELO-ryhmän puheenjohtajat ja sihteerit kokous Verkko-Ohjaus Marko Kilpeläinen.
Vardan tietomalli ja raportointi
TILASTOKUVIO kuvio on voimakkain tapa esittää tietoa
Avainresurssit ja kyvykkyydet
Kaksi erää Tässä ppt:ssä ohjeet pelin johtajalle Opus-työryhmä 2014
Yhteentoimivuusmenetelmän soveltaminen rekistereissä
ASA ASA rekisteri Laki 716/2000 Vna työhön liittyvän syöpävaaran torjunnasta Laki 717/2001 Syöpäsairauden aineille ammatissaan altistuvien rekisteristä.
7. Hyvä ohjelmointitapa..
PDPP-työpaja Mitä tehdään?.
Mallintamisen metamalli ja notaatiot
Muutokset matematiikan opetuksessa
Eija Käyhkö Siun sote Kuvantamiskeskus
– Ohjelmistojen mallintaminen, kertausta
Polut hoitoon ja kuntoutukseen – projekti OTE7
Tilaustoimitusprosessin kuvaus
Koulutus- ja opetusyhteistyö Opintohallintoon ja kirjauksiin liittyviä kysymyksiä Taustamateriaali kokoukseen (OKM, Ristiinopiskeluhankkeet,
Syksyn 2016 vanhempainiltoihin
Asiointipalveluiden laatu - Asiakasarvioinnit
Vapaaohjelman arvostelulomakkeen täyttäminen
SePPO-osahanke Keudassa Lahti
LAPE-PÄHKINÄT vol Keino osallistua Pirkanmaan vanhemmuuden ja parisuhteen tuen palveluiden kehittämistyöhön - Tekstidia Dian voi valita.
Opettajan pedagoginen ajattelu
TIETO JA TIETOKONEOHJELMA
Vinkkejä juridiikan opiskeluun
Oma osaston käyttöön! Esityksen tavoitteena:
”Projektin nimi” -projekti
Hyvinvointi- ja terveyserot -sivusto
Komponenttikirjasto Käyttöohje.
8. Periytyminen.
Tärkeämpää kuin arvaatkaan
TYÖPOHJA KESKUSTELUN SUUNNITTELUUN
Potilas- ja kansanterveysjärjestöjen näkökulma lääkejakelun kehittämiseen Etusivuvaihtoehto 1.
Video 5: Yleisesti kysyttyjä kysymyksiä ja niihin annettuja vastauksia
Video 4: Avoimen ja yhteisen rajapinnan hallintasuunnitelma
Avoimen tuotteenhallintamalli
Tutkimushallinnon sanaston julkistus ja sanaston käyttö
Esityksen transkriptio:

582101 - Ohjelmistotekniikan menetelmät, kertausta

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

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

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

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

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

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

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

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

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

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?

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?

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.

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.

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.

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

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.

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

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