Ohjelmistotekniikka: Luento 4 Jouni Lappalainen

Koko: px
Aloita esitys sivulta:

Download "Ohjelmistotekniikka: Luento 4 Jouni Lappalainen"

Transkriptio

1 Ohjelmistotekniikka: Luento 4 Jouni Lappalainen Luku 6: Vaatimusten mallintaminen: skenaariot, analyysiluokat UML kertausta Luku 7: Vaatimusten mallintaminen: vuo, käyttäytyminen ja mallit (patterns) Vuopohjainen mallintaminen (DFD malli) Vaatimusten keräys Web-sovelluksessa 1

2 Soveltuvat lait ja pohdiskelun aiheita 1. Käytetyn mallin arvo riippuu valitusta näkökulmasta, mikään ei ole paras kaikkiin tarkoituksiin / no 4, Davis Oliomalli vähentää kommunikoinnin ongelmia analysoijien ja käyttäjien välillä / hyp_no 1, Booch 1991 Esitä Flow-of-events esitystavalla Opintojen hallintajärjestelmän (tämä luento s.13) käyttötapaus Kurssille ilmoittautuminen esitystavasta lisää: Williams L., Use Case-based Requirements 2

3 Vaatimusmallin (analyysimallin) tarkoitus 1. kuvata asiakkaan vaatimukset 2. luoda pohja ohjelmistosuunnittelulle 3. määritellä joukko vaatimuksia, joita tullaan käyttämään rakennetun ohjelmiston validoinnissa Peukalosääntöjä (Arlow & Neustadt 2002) pysy riittävän abstraktilla tasolla jokaisen mallin elementin tulee lisätä ymmärrystä jätä infrastruktuurista huolehtiminen suunnitteluvaiheeseen minimoi kytkennät järjestelmän osien välillä sidosryhmillä on useita käyttötarkoituksia mallille pidä malli niin yksinkertaisena kuin mahdollista 3

4 Sovellusalueanalyysi tai toimiala-analyysi (domain analysis) Mitä yhteistä sovellusalueella on? Mitä eri projektit voivat käyttää yhdessä? Sovellusaluetietämyksen lähteet Tekninen kirjallisuus Olemassaolevat sovellukset Asiakastutkimukset Asiantuntijoiden neuvot Nykyiset/tulevat vaatimukset Sovellusalueanalyysi Luokkataksonomiat Uudelleenkäytön standardit Toiminnalliset mallit Sov. alueen kielet Sovellusalueanalyysimalli Kuinka löydetään uudelleenkäyttöä varten mahdollisimman laajasti sovellettavat analyysiluokat ja/tai yhteiset funktiot ja ominaispiirteet? 4

5 Suunnittelumenetelmien kehittyminen Suunnittelumenetelmät ovat aikansa lapsia (kaikissa eri abstraktiotason kuvauksia) 1980 luvulla JSD (Jackson System Development), Jackson 1983 MSA (Modern Structured Analysis), Yourdon luvulla oliomenetelmät ja kuvaustavat, kuten OOA & OOD, Coad & Yourdon 1991 OMT, Rumbaugh et al UML kuvaustavan määrittely, Rumbaugh et al UML & RUP prosessi, Jacobson et al OMT++, Jaaksi et al luvulla UML & RUP valtakausi jatkuu (UML , UML ) 5

6 Käyttäjät Analyysimallin osat Prosessi Skenaariopohjaiset mallit Vuomallit Rakenne Käyttötapaukset Käyttötapauskaaviot Aktiviteettikaaviot Uimaratakaaviot Luokkamallit Luokkakaaviot Analyysipakkaukset CRC mallit Yhteistyökaaviot Ohjelmistovaatimukset Tietovuokaaviot Ohjausvuokaaviot Käsittelykertomukset Käyttäytymismallit Tilakaaviot Sekvenssikaaviot Oliojoukon vuorovaikutus 6

7 Kaavio Rakennekaavio Käyttäytymiskaavio Luokkakaavio Pakkauskaavio Tilakaavio Aktiviteettikaavio Oliokaavio Sijoittelukaavio Käyttötapauskaavio Komponenttikaavio Koostekaavio Ajoituskaavio Sekvenssikaavio Vuorovaikutuskaavio Kokoava vuorovaikutuskaavio Kommunikaatiokaavio (yhteistyökaavio) 7

8 UML kertausta Käydään läpi UML kaaviot Millerin tutoriaalin pohjalta Practical UML: A Hands-On Introduction for Developers Toinen hyvä lähde Williams L., Intro to UML UMLOverview.pdf 8

9 SafeHome valvontafunktio Käyttötapaus (sanallinen kuvaus): Valitse kamera ja näytä kuvaa Jos olen poissa kotoa, voin katsoa PC:n ja selaimen avulla SafeHome järjestelmän kameroiden kuvia. Aluksi täytyy kirjautua SafeHome palvelimelle. Sen jälkeen kaikki SafeHome järjestelmän palvelut ovat käytettävissä. Tietyn kameran kuvan saa valitsemalla ensin valvonta toiminnon ohjauspaneelin näppäimistä, sitten edelleen valitse kamera toiminto. Näytöllä esitetyn pohjapiirroksen avulla voin valita nähtäväksi joko pieniä (thumbnail) otoksia kaikista kameroista tai valitun kameran kuvaa. Jos haluan vaihtaa kameraa, saan valitse kamera toiminnolla pohjapiirroksen näkyville ja sen avulla voin vaihtaa kameraa. 9

10 SafeHome valvontafunktio Käyttötapaus (skenaario): Valitse kamera ja näytä kuvaa 1. Talon omistaja ottaa yhteyden SafeHome kotisivulle 2. Talon omistaja antaa käyttäjätunnuksen 3. Talon omistaja antaa salasanan 4. Järjestelmä näyttää kaikki toimintonäppäimet 5. Talon omistaja valitsee valvonnan toiminnon 6. Talon omistaja valitsee valitse kamera toiminnon 7. Järjestelmä näyttää pohjapiirroksen ja kameroiden paikat 8. Talon omistaja valitsee kameran pohjapiirroksesta 9. Talon omistaja valitsee näytä toiminnon 10. Järjestelmä näyttää ikkunan, jossa on valitun kameran numero 11. Järjestelmä näyttää ikkunassa kuvaa valitusta kamerasta 10

11 Käyttötapaus (laaja esitys): Valitse kamera ja näytä kuvaa Ensisijainen toimija: Talon omistaja Tavoite: Saada halutun kameran kuva näkyville Internetin kautta Esiehdot: SafeHome kotisivut on toiminnassa ja käyttäjä on aiemmin rekisteröitynyt Herätin/liipasin: Talon omistaja haluaa katsoa kameran kuvaa Skenaario:11 askelta esitelty edellisellä sivulla Poikkeukset: Käyttäjätunnus tai salasana on väärä - katso käyttötapaus: Varmista käyttäjätunnus ja salasana Valvontatoimintoa ei ole räätälöity talon omistajan talolle - katso käyttötapaus: Konfiguroi valvontatoiminto Talon omistaja valitsee Näytä pikkukuvaa (thumbnail) kuvaa kaikista kameroista katso käyttötapaus: Näytä pikkukuvaa kuvaa kaikista kameroista Prioriteetti: kohtuullisen tärkeä, toteutetaan perustoimintojen jälkeen Milloin valmis: kolmannessa vaiheessa Käyttötiheys: kohtuullisen usein Avoimet kysymykset: Onko järjestelmän turvallisuus riittävä? Onko verkon nopeus riittävä kuvan välittämiseen? 11

12 Flow-of-events esitystapa UseCaseRequirements.pdf UC4 Opiskelijatietojen ylläpito 4.1 Esiehdot: Opintosihteerillä on pääsy järjestelmään 4.2 Päälinja: Opintosihteeri valitsee opiskelijan järjestelmästä joko opiskelijanumeron tai nimen avulla [E1]. Opintosihteeri päivittää kurssin suoritustiedot [UC5]. 4.3 Tarkennetut kulut: ei ole 4.4 Vaihtoehtoiset kulut [E1] Opiskelijaa ei löydy, ilmoitetaan opintosihteerille. 12

13 (Flow of Events esitystapa): UC 1: Valitse kamera ja näytä kuvaa 1.1 Esiehdot: SafeHome kotisivut on toiminnassa ja käyttäjä on aiemmin rekisteröitynyt 1.2 Päälinja (main flow): Talon omistaja ottaa yhteyden SafeHome kotisivulle. Talon omistaja antaa käyttäjätunnuksen ja salasanan [E1]. Järjestelmä (ohjauspaneeli) näyttää kaikki toimintonäppäimet ja talon omistaja valitsee valvonta toiminnon [E2]. Tämän jälkeen talon omistaja valitsee valitse kamera toiminnon ja järjestelmä näyttää pohjapiirroksen ja kameroiden paikat. Talon omistaja valitsee kameran pohjapiirroksesta [E3]. Talon omistaja valitsee näytä toiminnon. Järjestelmä näyttää ikkunan, jossa on valitun kameran numero [E3]. Järjestelmä näyttää ikkunassa kuvaa valitusta kamerasta [E3]. 1.3 Tarkennetut kulut (subflows): ei ole 1.4 Vaihtoehtoiset kulut (alternative flows): [E1] Jos käyttäjätunnus tai salasana on väärä, siirry käyttötapaukseen [UC x] (Varmista käyttäjätunnus ja salasana) [E2] Jos valvontatoimintoa ei ole räätälöity talon omistajan talolle, siirry käyttötapaukseen [UC x] (Konfiguroi valvontatoiminto) [E3] Jos talon omistaja valitsee Näytä pikkukuvaa (thumbnail) kuvaa kaikista kameroista, siirry käyttötapaukseen [UC x] (Näytä pikkukuvaa kuvaa kaikista kameroista) 13

14 Analyysiluokkien tunnistaminen Voidaan aloittaa käyttöskenaarioita tutkimalla alleviivataan substantiivit tai substantiivilausekkeet kerätään ne tauluun tunnistetaan synonymit Tunnistetaan myös toiminnot (operaatiot) merkitään verbit kursiivilla 14

15 Tunnistetaan esim. Ulkoiset entiteetit Asiat Tapahtumat Roolit muut järjestelmät, laitteet, ihmiset raportit, näytöt, kirjeet transaktiot, hälytykset johtaja, suunnittelija, myyjä Organisaatioyksiköt Paikat osasto, ryhmä, tiimi Valmistuspaikka, tapahtumapaikka Rakenteet tunnistimet, ajoneuvot, tietokoneet 15

16 SafeHome kuvaus SafeHome turvajärjestelmä mahdollistaa talon omistajan konfiguroida turvajärjestelmä sen jälkeen kun se on asennettu, valvoa kaikkia tunnistimia, jotka on liitetty turvajärjestelmään, ja olla yhteydessä talon omistajaan rajapinnan (Internetin, PC:n tai ohjauspaneelin) välityksellä. PC:tä käytetään asennuksen aikana järjestelmän konfigurointiin. Jokaiselle tunnistimelle määritellään numero ja tyyppi, salasana määritellään järjestelmän aktivointia ja toiminnan keskeyttämistä varten. Määritellään myös puhelinnumero, johon ilmoitetaan havaituista tunnistintapahtumista. Kun tunnistintapahtuma havaitaan, ohjelmisto laukaisee äänihälytyksen. Talon omistajan määrittelemän viiveen jälkeen järjestelmä ilmoittaa hälytyksestä, tapahtumapaikasta ja hälytyksen tyypistä valvontapalvelun puhelinnumeroon. Puhelinnumeroon soitetaan 20 sek. välein, kunnes yhteys saadaan. Talon omistaja saa tietoa hälytyksestä rajapinnan kautta ja talon omistaja käyttää järjestelmää seuraavasti 16

17 Mahdollinen luokka Järjestelmä (turvaj.) Talon omistaja Tunnistin Rajapinta (ohj.pan., PC ) Asennus Numero, tyyppi Salasana Puhelinnumero Tunnistintapahtuma Äänihälytys, hälytys Viive Tapahtumapaikka Valvontapalvelu Luokittelu rakenne rooli tai ulkoinen entiteetti ulkoinen entiteetti ulkoinen entiteetti tapahtuma tunnistimen attribuutteja asia asia tapahtuma ulkoinen entiteetti järjestelmän attributti paikka ulkoinen entiteetti 17

18 Analyysiluokan tunnistaminen 1. Onko luokassa säilytettävää tietoa tarvitaan järjestelmän toimintaan 2. Onko luokassa tarvittuja palveluja muutetaanko niiden avulla luokan attribuutteja 3. Onko luokassa monia attribuutteja suunnittelun aikana yksikin attribuutti kertoo paljon, mutta toteutuksessa luokassa pitää olla useampia attribuutteja 4. Onko luokalle tavanmukaisia attribuutteja sopivatko nämä attribuutit kaikkiin luokan esiintymisiin 5. Onko luokassa tavanmukaisia toimintoja sopivatko nämä toiminnot kaikkiin luokan esiintymisiin 6. Kuvaako luokat olennaisia vaatimuksia ulkoiset entiteetit tulevat esille jo vaatimusmallissa (Ehdokasluokan tulisi täyttää (lähes) kaikki näistä 6 ominaisuudesta) 18

19 Mahdollinen luokka Järjestelmä (turvaj.) Talon omistaja Tunnistin Rajapinta (ohj.pan., PC ) Asennus Numero, tyyppi Salasana Puhelinnumero Tunnistintapahtuma Äänihälytys, hälytys Viive Tapahtumapaikka Valvontapalvelu Perustelut 6 kohdan mukaan hyv: kaikki toteutuvat ei hyv/hyv: 1, 2 ei, 6 kyllä hyv: kaikki toteutuvat hyv: kaikki toteutuvat ei hyv: ei hyv: 3 ei, tunnistimen attrib. ei hyv: 3 ei, järjestelmän attrib. ei hyv: 3 ei, järjestelmän attrib. hyv: kaikki toteutuvat hyv: 2,3,4,5,6 toteutuvat ei hyv: 3 ei, järjestelmän attrib. ei hyv/hyv: 1, 2 ei, 6 kyllä ei hyv/hyv: 1, 2 ei, 6 kyllä 19

20 Tapahtumapaikka Valvonta-palvelu 1 1 sijaitsee ilmoittaa 1 Järjestelmä 1 valvoo * 1 Tunnistin olla yhteydessä saa ilmoituksen 1 havaitsee Rajapinta laukaisee * Äänihälytys Alustava luokkakaavio * 1 * Tunnistintapahtuma 20

21 Class: Tarjoilija CRC kuvauksen kortteja Responsibility: Tarjoilee ruoan ja juoman asiakkaalle Ottaa vastaan tilauksen asiakkaalta Pyytää kokkia valmistamaan ruokaannoksen Collaborator Asiakas Kokki Class: Kokki Responsibility: Valmistaa ruoka-annoksen Collaborator Tarjoilija Class: Asiakas Responsibility: Valitsee ruoan ja juoman Collaborator Tarjoilija 21

22 Luku 7: Vaatimusten mallintaminen: vuo, käyttäytyminen ja mallit (patterns) Käsitellään vain SA (Structured Analysis) menetelmän komponentit Vaatimusten keräys Web-sovelluksessa Esimerkki: Taidevälittäjän tuki 22

23 Liittymäkaavio (terminaattorit/transformaatiot) Tapahtumalista 1. Tapahtuma 1 2. Tapahtuma 2 Tietohakemisto tieto_a = tieto_b + tieto_c tieto_x =... Hierarkkiset tietovuokaaviot ER-kaaviot Tilakaaviot SA (Structured Analysis) menetelmän komponentit Minispesifikaatiot if a < b then... 23

24 Ohjauspaneeli käyttäjän komennot ja data näytön informaatio Ohjauspaneelin näyttö Safe Home ohjelmisto hälytyksen tyyppi Hälytys Tunnistimet tunnistimien tila numeron valinta Liittymäkaavio (context diagram) SafeHome kodin turvajärjestelmälle Puhelinyhteys 24

25 Ohjauspaneeli käyttäjän komennot ja data konfigurointipyyntö Konfiguroi järjestelmä konfigurointitiedot Vuorovaikutus käyttäjä n kanssa salasana käynnistä/ lopeta Aktivoi/ passivoi järjestelmä A/P viesti Järjestelmän konfigurointitiedot konfigurointitiedot Tunnistimet Tunnista salasana tunnistimien tila käypä salasana konfigurointitiedot Valvo tunnistimia Näytä viestit ja tila Ensimmäisen tason DFD kaavio SafeHome kodin turvajärjestelmälle näytön informaatio numeron valinta hälytyksen tyyppi numeron valinta Ohjauspaneelin näyttö Hälytys Puhelinyhteys 25

26 Vaatimusten keräys Web-sovelluksessa 1. Määrittele käyttäjäkategoriat sidosryhmien haastattelun perusteella 2. Määrittele sovellukselta odotettavat piirteet sidosryhmien haastattelun perusteella 3. Analysoi kerättyä tietoa 4. Määrittele käyttötapauksien avulla vuorovaikutusskenaariot kaikille käyttäjäluokille 26

27 1. Määrittele käyttäjäkategoriat Mikä on käyttäjän tavoite, miksi hän käyttää sovellusta? esim. SafeHomeAssured.com sivun käyttäjä etsii tietoja turvajärjestelmistä tekee hintavertailua haluaa hankkia järjestelmän hakee teknistä tukea Kuinka hyvin käyttäjä tuntee sovelluksen hyvin perehtynyt <-> aloittelija Mitä kautta käyttäjä tulee sovelluksen käyttäjäksi Mistä ominaisuuksista käyttäjä pitää/ei pidä Näiden kysymysten avulla pitää määritellä riittävä määrä käyttäjäluokkia 27

28 2. Kommunikointi sidosryhmän (sisältää loppukäyttäjät) kanssa Pyritään keräämään tietoa mahdollisimman monilta käyttäjiltä, voidaan käyttää perinteistä keskustelua tyypillisten käyttäjien kanssa, tavoitteena parempi ymmärrys vaatimuksista sähköisesti toteutettua keskustelua, voidaan helposti tallettaa, koska kommunikointi tekstimuodossa haastatteluja, kysytään käyttäjän mielipidettä sovelluksesta web sivua tai sähköpostia käyttäen skenaarioita, käyttötapausten avulla kuvataan sovelluksen käyttöä 28

29 3. Analysoidaan kerättyä tietoa Kerätty tieto luokitellaan käyttäjäluokkien ja transaktiotyyppien mukaan Tavoitteena on saada lista sisältöolioista operaatioista, jotka liittyvät olioihin tietyssä transaktiossa toiminnoista, joita sovellus tarjoaa käyttäjälle ei-toiminnallisista vaatimuksista 29

30 4. Käyttötapausten kehittäminen Käyttötapauksia tarvitaan tehokkaan analyysimallin rakentamiseen Käyttötapaukset auttavat suunnittelijaa ymmärtämään, millaisia käyttötarpeita loppukäyttäjällä on Käyttötapaukset auttavat kehitystyön jakamisessa osiin Käyttötapaukset toimivat testitapausten kehittämisen perustana 30

31 Esimerkki: Taidevälittäjän tuki (käyttötapaus, luokkakaavio, yhteistyökaavio ja sekvenssikaavio) Taidevälittäjän tukiohjelmiston tulisi laskea korkein hinta, jonka välittäjän kannattaa maksaa maalauksesta. Ohjelmiston tulisi tuottaa myös raportteja hankinnoista ja myynneistä. Välittäjällä on siten kolme liiketoimintaaktivitettia: hän ostaa maalauksia, myy maalauksia ja tuottaa raportteja. Taidevälittäjä kerää tarkkaa tietoa omista, gallerian omistamista maalauksia ja hyödyntää hinta-arvioissaan huutokaupattujen töiden hintatietoja. Maalaus voi olla mestarityö tai muu maalaus. Hyvä ja tiivis johdatus UML kaavioihin löytyy: 31

32 Mestarityön tekijä on tunnettu maalari ja sen arvo saadaan huutokauppatiedoista. Huutokauppahintaa korotetaan vuosittain 8%:lla siitä vuodesta lähtien, kun kauppa on tehty. Mestarityön arvon arvioimiseksi etsitään mahdollisimman samankaltainen myyty työ, jonka hintaa käytetään hinnoittelun perustana. Samankaltaisuuskerroin saadaan tekniikan, aiheen ja koon perusteella. Tällöin arvioidaan onko tekniikka samanlainen (1 tai 0) onko aihe samanlainen (1 tai 0) Lasketaan nämä luvut yhteen ja kerrotaan pienemmän maalauksen koolla ja jaetaan suuremman maalauksen koolla. Jos kerroin on 0, välittäjä ei luokittele työtä mestarityöksi. Muun maalauksen hinta saadaan tekijän muotikertoimen ja kankaan koon perusteella (niiden tulona). Jos muotikerrointa ei tiedetä, välittäjä ei osta työtä. 32

33 Taidevälittäjän tuki" Osta maalaus Myy maalaus Myyjä Välittäjä Tuota raportti Päivitä muotikerroin Ostaja 33

34 Maalaus GallerianTyö HuutokTyö Mestarityö MuuMaalaus MuotiKerroin käyttää 34

35 Maalaus etunimi sukunimi työnnimi valmisvuosi korkeus leveys tekniikka aihe GallerianTyö HuutokTyö Mestarityö luokittelu hankintapäivä myyjännimi maxhankintahinta todhankintahinta tavoitemyyntihinta myyntipäivä ostajannimi ostajanosoite todmyyntihinta MuuMaalaus käyttää huutopäivä huutohinta MuotiKerroin tekijänetunimi tekijänsukunimi kerroin 35

36 Luokkien stereotyyppiesitystapa Malliluokka (entity) - Model - mallintaa pitkäaikaista informaatiota, esim. Maalaus Käyttöliittymäluokka (boundary) View - mallintaa vuorovaikutusta tuotteen ja aktoreiden välillä, esim. Hankintaraportti Kontrolliluokka (control) Controller - mallintaa monimutkaista laskentaa, esim. LaskeMestarityönHinta 36

37 Kurssi Harjoitusryhmä <<read>> <<read>> Ilmoittautuminen <<maintain>> <<read>> Opiskelija Osallistuminen (Luukkainen & Laine, 2010)" 37

38 Skenaario mestarityön ostolle Välittäjä antaa kuvauksen maalauksesta Ohjelmisto selaa huutokauppatietoja löytääkseen mahdollisimman samanlaisen työn samalta tekijältä Ohjelmisto laskee hankintahinnan ylärajan lisäämällä huutokauppahintaan vuosittaisen 8%:n korotuksen. Välittäjä tekee tarjouksen, joka alittaa lasketun ylärajan myyjä hyväksyy tarjouksen Välittäjä päivittää myyntitiedot (myyjän nimi ja osoite, hankintahinta) 38

39 Myyjä antaa välittäjän pyytämän tiedon Myyjä Mestarityö Välittäjä UI LaskeMestarityön Hinta Kommunikaatiokaavio: Osta mestarityö HuutokTyö 39

40 Myyjän tieto välittäjälle Myyjä 3: Luo uusi olio 1: Anna mestarityön tiedot 2: Siirrä mestarityön tiedot 11: Pyydä päivitys :Mestarityö 4: Palauta uusi olio 9: Anna myyjän tiedot 10: Siirrä myyjän tiedot 12: Ilmoita päivityksen onnistumisesta 5: Selaa huutokauppatietoja Välittäjä 8: Näytä hinta 14: Näytä ilmoitus päivityksen onnistumisesta :UI 7: Tuota hinta 13: Ilmoita päivityksen onnistumisesta :Laske Mestarityön Hinta 6: Palauta huutokaupatun työn hinta Kommunikaatiokaavio: Osta mestarityö :HuutokTyö 40

41 Myyjä Välittäjä :UI :Laske MestarityönHinta :HuutokTyö 1: Anna mestarityön tiedot 2: Siirrä mestarityön tiedot 3: Luo uusi olio :Mestarityö Myyjän tieto välittäjälle 4: Palauta uusi olio 5: Selaa huutokauppatietoja 8: Näytä hinta 9: Anna myyjän tiedot 14: Näytä ilmoitus päivityksen onnistumisesta 7: Tuota hinta 10: Siirrä myyjän tiedot 13: Ilmoita päivityksen onnistumisesta Sekvenssikaavio: Osta mestarityö 6: Palauta huutokaupatun työn hinta 11: Pyydä päivitys 12: Ilmoita päivityksen onnistumisesta 41

42 Soveltuvat lait 1. Käytetyn mallin arvo riippuu valitusta näkökulmasta, mikään ei ole paras kaikkiin tarkoituksiin / no 4, Davis 1990 Davisin laadullisessa tutkimuksessa nähtiin, että eri kuvaustavoilla päästiin hyödyllisiin, vaikkakin erilaisiin tuloksiin. Kuvausmenetelmät ovat hyödyllisempiä ratkaisun kuvaamisessa kuin ongelman määrittelyssä (ongelman määrittelyssä toimialan tietämys on tärkeää) Ohjelmistosuunnittelijan tulisi käyttää useita sopivia työkaluja ja tekniikoita, kuten puusepän huonekalujen valmistamisessa. 2. Oliomalli vähentää kommunikoinnin ongelmia analysoijien ja käyttäjien välillä / hyp_no 1, Booch perustellaan sillä, että (1) voidaan helpommin mallintaa ihmisen tietämystä, (2) siirto vaatimusmäärittelyistä suunnitteluun ja toteutukseen on saumaton, (3) käsitellään dataa ja prosesseja samanaikaisesti ja (4) noudattaa hyviä ohjelmistotekniikan periaatteita. 42

43 Pohdiskelun aiheita Esitä Flow-of-events esitystavalla Opintojen hallintajärjestelmän käyttötapaus Kurssille ilmoittautuminen (esitystavasta lisää: 43

44 Harjoitustehtävät viikko 4 Tehtävänä on suunnitella keskusteluohjelmisto pienen ohjelmistotalon käyttöön. Järjestelmän tulee tukea organisaation sisäistä kommunikaatiota. Järjestelmä koostuu palvelimesta ja asiakasohjelmistosta. Palvelinta ja asiakasohjelmistoa käytetään graafisen tai konsolipohjaisen käyttöliittymän kautta. Katso tarkemmin harjoitusmateriaali sivulta https://noppa.oulu.fi/noppa/kurssi/811335a/harjoitukset 1. Tarkenna kuvausta kehittämällä vähintään 3 skenaariota, joissa eri henkilöt käyttävät keskusteluohjelmistoa. Kehitä käyttötapauskaaviot keskusteluohjelmistolle käyttäen hyväksi annettua kuvausta ja laadittuja skenaarioita. 2. Kirjoita käyttötapauskuvaukset käyttämällä joko perinteistä käyttötapauspohjaa (löytyy kurssisivulta (Noppa) kohdasta Yhteinen lisämateriaali) tai flow-of events esitystapaa (lisätietoja löytyy paperista Williams L., Use Case-based Requirements (s. 5-14) SEMaterials/UseCaseRequirements.pdf). 3. Kirjoita käyttäjävaatimukset (min. 15 kpl) (jokaisesta vaatimuksesta yksilöllinen tunniste ja kuvaus). Voit käyttää vaatimusmäärittelypohjaa, joka löytyy kurssisivulta (Noppa) kohdasta Yhteinen lisämateriaali. 44

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia

Lisätiedot

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia

Lisätiedot

Ohjelmistotekniikan menetelmät, UML

Ohjelmistotekniikan menetelmät, UML 582101 - Ohjelmistotekniikan menetelmät, UML 1 Sisältö DFD- ja sidosryhmäkaavioiden kertaus Oliomallinnus UML:än kaaviotyypit 2 Tietovuokaaviot Data flow diagrams, DFD Historiallisesti käytetyin kuvaustekniikka

Lisätiedot

Ohjelmistojen mallintaminen kertausta Harri Laine 1

Ohjelmistojen mallintaminen kertausta Harri Laine 1 kertausta 5.12.2008 Harri Laine 1 Ohjelmiston elinkaari, elinkaarimallit Yleinen puitemalli (reference model) - abstrakti kokonaiskuva ei etenemiskontrollia, ei yksityiskohtia Ohjelmistoprosessimallit

Lisätiedot

käyttötapaukset mod. testaus

käyttötapaukset mod. testaus käyttötapaukset Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Kartta hyväksyntä määrittely suunnittelu suunnittelu mod. testaus integrointi sys. testaus Ylläpito koodaus (toteutus)

Lisätiedot

Ohjelmistojen mallintaminen, kesä 2010

Ohjelmistojen mallintaminen, kesä 2010 582104 Ohjelmistojen mallintaminen, kesä 2010 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin

Lisätiedot

Ohjelmistojen mallintaminen Unified Modeling Language (UML)

Ohjelmistojen mallintaminen Unified Modeling Language (UML) 582104 Ohjelmistojen mallintaminen Unified Modeling Language (UML) 1 Olioperustaisuus Olio toimii mallinnuksen perusyksikkönä eri abstraktiotasoilla Järjestelmän rajaus, suunnittelu, ohjelmointi, suoritus..

Lisätiedot

UML- mallinnus: Tilakaavio

UML- mallinnus: Tilakaavio UML- mallinnus: Tilakaavio Karkea kuvaus UML- kaavioiden käytöstä ohjelmistonkehityksen eri vaiheissa ja tehtävissä. Mallinnus tilakaavioilla Tilakaaviolla kuvataan yhden luokan olioiden tilan muuttumista

Lisätiedot

Ohjelmistojen mallintaminen, kesä 2009

Ohjelmistojen mallintaminen, kesä 2009 582104 Ohjelmistojen mallintaminen, kesä 2009 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin

Lisätiedot

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät

Tenttikysymykset. + UML- kaavioiden mallintamistehtävät Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä

Lisätiedot

Ohjelmistotekniikan menetelmät, kesä 2008

Ohjelmistotekniikan menetelmät, kesä 2008 582101 - Ohjelmistotekniikan menetelmät, kesä 2008 1 Ohjelmistotekniikan menetelmät Methods for Software Engineering Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön

Lisätiedot

Ohjelmistojen mallintaminen, mallintaminen ja UML

Ohjelmistojen mallintaminen, mallintaminen ja UML 582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti

Lisätiedot

Yhteistoimintakaavio (Esimerkki)

Yhteistoimintakaavio (Esimerkki) Yhteistoimintakaavio (Esimerkki) Käyttötapaus: Vuokraa ajoneuvo Yleiskuvaus: Käyttäjä vuokraa ajoneuvon määräajaksi. Esiehdot: Käyttäjä on hakenut vuokrausaikana vapaat ajoneuvot näytölle. Aktori: Asiakas

Lisätiedot

UML - unified modeling language

UML - unified modeling language UML - unified modeling language Lähtökohtana: Booch, Rumbaugh, Jacobsson Tavoitteena Unified Method - syntyykö? Kehittäjänä: Rational Inc. Standardointi: Object Management Group (OMG) - vaiheessa Lähteet:

Lisätiedot

UML:n yleiskatsaus. UML:n osat:

UML:n yleiskatsaus. UML:n osat: UML:n yleiskatsaus - voidaan hyödyntää hyvin laajasti. - sopii liiketoimintamallinnukseen, ohjelmistomallinnukseen sen jokaiseen vaiheeseen tai minkä tahansa pysyviä ja muuttuvia ominaisuuksia sisältävän

Lisätiedot

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Arkkitehtuuriin vaikuttavat ympäristötekijät Jo kehittämisen alkuvaiheessa on tarpeellista hahmotella arkkitehtuurin perusratkaisu. Lähtökohdat

Lisätiedot

Ohjelmistojen mallintaminen, mallinnustekniikat käytännössä

Ohjelmistojen mallintaminen, mallinnustekniikat käytännössä 582104 Ohjelmistojen mallintaminen, mallinnustekniikat käytännössä 1 Sisältö Oliomenetelmien taustaa Kirjastojärjestelmän käyttötapaukset Kirjastojärjestelmän luokkamalli 2 Oliosuuntautunut suunnittelumenetelmä

Lisätiedot

Ohjelmistojen mallintaminen. Luento 2, pe 5.11.

Ohjelmistojen mallintaminen. Luento 2, pe 5.11. Ohjelmistojen mallintaminen Luento 2, pe 5.11. Kertausta Ohjelmistotuotantoprosessin vaiheet: Vaatimusanalyysi- ja määrittely Mitä halutaan? Suunnittelu Miten tehdään? Toteutus Ohjelmointi Testaus Varmistetaan

Lisätiedot

Luento 3 Tietokannan tietosisällön suunnittelu

Luento 3 Tietokannan tietosisällön suunnittelu HAAGA-HELIA / Heti-09 1 (17) Luento 3 Tietokannan tietosisällön suunnittelu Tietojärjestelmän suunnitteluprosessi... 2 Tietokannan suunnittelun tavoitteet... 3 Tietokannan suunnitteluprosessi... 4 Käsitteellinen

Lisätiedot

Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa Harri Laine 1

Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa Harri Laine 1 Ohjelmistotekniikan menetelmät Luokkamallit ohjelmiston mallintamisessa 14.11.2008 Harri Laine 1 Oliot ohjelmiston mallinnuksessa käyttötapaus käyttää Käyttämämme oliokeskeinen perusmalli ohjelmistojen

Lisätiedot

Tilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss , )

Tilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss , ) Tilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss. 121-133, 135 141) Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Sisältö Sekvenssikaaviot ja tilakaaviot osana UML:ia Sekvenssikaaviot

Lisätiedot

Unified Modeling Language

Unified Modeling Language Unified Modeling Language Confuse 25.11.2001 Tila Versio: 1.0 Vaihe: T1 Jakelu: Julkinen Luontipäivä: 15.11.2001 Antti Haapakoski Muutettu viimeksi: 25.11.2001 Antti Haapakoski Sisältö 1 Yleistä 1 2 Mallinnuksesta

Lisätiedot

Analyysi on tulkkaamista

Analyysi on tulkkaamista Analyysi on tulkkaamista Petri: Pitää osata menetelmiä, arkkitehtuureja, suunnittelumalleja, eli miten [ohjelmistoja] ylipäänsä kehitetään. Pitää olla viestintätaitoja. Perttu: Pitää ymmärtää miten projekti

Lisätiedot

Ohjelmistojen mallintaminen Tietovuokaaviot Harri Laine 1

Ohjelmistojen mallintaminen Tietovuokaaviot Harri Laine 1 Ohjelmistojen mallintaminen Tietovuokaaviot 3.11.2008 Harri Laine 1 t Data flow diagrams Pohjana systeemiteoreettinen järjestelmämalli Input system output Järjestelmän tehtävä on muokata lähtötiedoista

Lisätiedot

Lomalista-sovelluksen määrittely

Lomalista-sovelluksen määrittely Thomas Gustafsson, Henrik Heikkilä Lomalista-sovelluksen määrittely Metropolia Ammattikorkeakoulu Insinööri (AMK) Tietotekniikka Dokumentti 14.10.2013 Tiivistelmä Tekijä(t) Otsikko Sivumäärä Aika Thomas

Lisätiedot

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus

Ohjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright

Lisätiedot

Ohjelmistojen suunnittelu

Ohjelmistojen suunnittelu Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer

Lisätiedot

Harjoitustehtävät: Ohjelmistotekniikka syksy 2015 (harjoitustyöraportin deadline 23.12.2015) Harjoitus 1:

Harjoitustehtävät: Ohjelmistotekniikka syksy 2015 (harjoitustyöraportin deadline 23.12.2015) Harjoitus 1: 1 Harjoitustehtävät: Ohjelmistotekniikka syksy 2015 (harjoitustyöraportin deadline 23.12.2015) Harjoitus 1: 1. Lue paperit McConnell S., and Tripp L., Professional Software Engineering: Fact or Fiction,

Lisätiedot

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.

Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. MagicDraw-pikaohje Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. Alkuvalmistelut Windows (sali TC205) 1) Kirjaudu sisään TTY:n intra-tunnuksella.

Lisätiedot

UML-MALLINNUS MICROSOFT VISIOLLA JOUNI HUOTARI 11.1.2005 14.2.2010

UML-MALLINNUS MICROSOFT VISIOLLA JOUNI HUOTARI 11.1.2005 14.2.2010 UML-MALLINNUS MICROSOFT VISIOLLA JOUNI HUOTARI 11.1.2005 14.2.2010 TUTUSTUMISKIERROS VISION UML-KAAVIOIHIN Avaa ChampionzoneUML.vsd-tiedosto Tutustu malliin eli eri sivuilla oleviin kaavioihin (napsautus

Lisätiedot

Käyttötapausanalyysi ja testaus tsoft

Käyttötapausanalyysi ja testaus tsoft Käyttötapausanalyysi ja testaus tsoft 15.09.2004 http://cs.joensuu.fi/tsoft/ Johdanto Use Case analyysi (käyttötapausanalyysi) on yleisesti käytetty järjestelmälle asetettujen toiminnallisten vaatimusten

Lisätiedot

Määrittely- ja suunnittelumenetelmät

Määrittely- ja suunnittelumenetelmät Menetelmädokumentti Määrittely- ja suunnittelumenetelmät Versio Päiväys Tekijä Kuvaus 0.01 5.12.01 Pekka Koskinen Alustava sisällysluettelo 0.1 7.12.01 Pekka Koskinen Ensimmäinen luonnos 1.0 11.12.01 Pekka

Lisätiedot

Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely

Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely 582101 - Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely 1 Vaatimukset ja käyttötapaukset Vaiheittainen mallintaminen ja abstraktiotasot Järjestelmän rajaaminen sidosryhmäkaaviolla

Lisätiedot

VIP Mobile Windows Phone. Opas asennukseen ja tärkeimpien toimintojen käyttöön

VIP Mobile Windows Phone. Opas asennukseen ja tärkeimpien toimintojen käyttöön VIP Mobile Windows Phone Opas asennukseen ja tärkeimpien toimintojen käyttöön TSP-3719_1-1305 sennus Seuraavassa saat yksinkertaiset ohjeet VIP-sovelluksen asentamiseksi puhelimeesi. lla olevat vaiheet

Lisätiedot

Mallintaminen; kurssipalautejärjestelmä

Mallintaminen; kurssipalautejärjestelmä Thomas Gustafsson & Saara Salminen Mallintaminen; kurssipalautejärjestelmä Metropolia Ammattikorkeakoulu Insinööri (AMK) Tietotekniikan koulutusohjelma Mallintaminen, tehtävä 1 21.1.2012 Tiivistelmä Tekijä(t)

Lisätiedot

Ohjelmistotekniikan menetelmät, mallintaminen ja UML

Ohjelmistotekniikan menetelmät, mallintaminen ja UML 582101 - Ohjelmistotekniikan menetelmät, mallintaminen ja UML 1 Mallintaminen ja UML (Ch 2.) Ohjelmistojen mallintamisesta ja kuvaamisesta Strukturoitu mallinnus Tietovuo- ja ER-kaaviot Oliomallinnus ja

Lisätiedot

UML-mallinnus ja prosessien kuvaaminen Microsoft Visiolla (versio 2003 professional) Jouni Huotari 11.1.2005

UML-mallinnus ja prosessien kuvaaminen Microsoft Visiolla (versio 2003 professional) Jouni Huotari 11.1.2005 UML-mallinnus ja prosessien kuvaaminen Microsoft Visiolla (versio 2003 professional) Jouni Huotari 11.1.2005 Tutustumiskierros Vision UML-kaavioihin Avaa ChampionzoneUML.vsd-tiedosto Tutustu malliin eli

Lisätiedot

Ohjelmistotekniikan menetelmät, luokkamallin laatiminen

Ohjelmistotekniikan menetelmät, luokkamallin laatiminen 582101 - Ohjelmistotekniikan menetelmät, luokkamallin laatiminen 1 Lähestymistapoja Kokonaisvaltainen lähestymistapa (top-down) etsitään kerralla koko kohdealuetta kuvaavaa mallia hankalaa, jos kohdealue

Lisätiedot

Visual Case 2. Miika Kasnio (C9767) 23.4.2008

Visual Case 2. Miika Kasnio (C9767) 23.4.2008 Visual Case 2 Miika Kasnio (C9767) 23.4.2008 Työn tarkasti: Jouni Huotari 24.4.2008 1 SISÄLTÖ 1. TYÖN LÄHTÖKOHDAT... 2 2. PERUSTIEDOT... 2 3. ASENTAMINEN... 2 4. OMINAISUUDET... 3 4.1. UML-kaaviot... 4

Lisätiedot

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia tehtäviä:

Lisätiedot

Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet

Toiminnot eli käyttäytyminen. Tieto eli rakenteelliset ominaisuudet Toiminnot eli käyttäytyminen Tieto eli rakenteelliset ominaisuudet Olio (ks. määritelmä): rajattavissa ja yksilöitävissä oleva asia tai käsite, joka on merkityksellinen käsillä olevan tarkastelun kannalta

Lisätiedot

HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000

HELIA 1 (20) Outi Virkki Tiedonhallinta 4.11.2000 HELIA 1 (20) Luento 3.1 7LHWRNDQWDSRKMDLVHQVRYHOOXNVHQVXXQQLWWHOXSURVHVVL Tietokannan suunnittelun tavoitteet... 3 Abstraktiotasot tietokannan suunnittelussa... 4 3-taso -malli... 4 TIHA-standardi... 5

Lisätiedot

VIP Softphone. Opas asennukseen ja tärkeimpien toimintojen käyttöön

VIP Softphone. Opas asennukseen ja tärkeimpien toimintojen käyttöön VIP Softphone Opas asennukseen ja tärkeimpien toimintojen käyttöön TSP-3719_1-1305 sennus Seuraavassa saat yksinkertaiset ohjeet VIP Softphonen asentamiseksi tietokoneellesi. lla olevat yksinkertaiset

Lisätiedot

Tietojärjestelmän osat

Tietojärjestelmän osat Analyysi Yleistä analyysistä Mitä ohjelmiston on tehtävä? Analyysin ja suunnittelun raja on usein hämärä Ei-tekninen näkökulma asiakkaalle näkyvien pääkomponenttien tasolla Tietojärjestelmän osat Laitteisto

Lisätiedot

Kertaus: yleistys-erikoistus ja perintä

Kertaus: yleistys-erikoistus ja perintä Kertaus: yleistys-erikoistus ja perintä Nauta, Lehmä ja Kuttu ovat Kotieläimiä, Kotieläimet Eläimiä Kotieläimillä (siis myös Naudoilla, Lehmillä ja Kutuilla) on Omistaja Kuttu ja Lehmä toteuttavat rajapinnan

Lisätiedot

3. Käsiteanalyysi ja käsitekaavio

3. Käsiteanalyysi ja käsitekaavio 3. Käsiteanalyysi ja käsitekaavio lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Käsiteanalyysi Selvitetään mitä tietokantaan pitää tallentaa Lähtökohtana käyttäjien

Lisätiedot

Ohjelmistojen mallintaminen Olioperustainen ohjelmistomalli Harri Laine 1

Ohjelmistojen mallintaminen Olioperustainen ohjelmistomalli Harri Laine 1 Ohjelmistojen mallintaminen Olioperustainen ohjelmistomalli 4.11.2008 Harri Laine 1 Olioperustainen ohjelmistokehitys Olioperustaisuus (object oriented software development) järjestelmä (system) on olio

Lisätiedot

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla. Tentti Tentti Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla. Omia koneita ei saa käyttää. Sähköisessä tentissä on paperitentin tapaan osaamisen

Lisätiedot

Kuvaustekniikat. Exit

Kuvaustekniikat. Exit Kuvaustekniikat Luvussa tarkastellaan tietojärjestelmän määrittelymenetelmiä. Määrittelymenetelmä sitoo yhteen ja ohjeistaa sen, miten eri kuvausmenetelmiä käyttäen voidaan tehdä tietojärjestelmän määrittely.

Lisätiedot

Harjoitustehtävät: Ohjelmistotekniikka kevät 2015 (harjoitustyöraportin deadline 8.3.2014) (Kalenteri-)Viikko 3:

Harjoitustehtävät: Ohjelmistotekniikka kevät 2015 (harjoitustyöraportin deadline 8.3.2014) (Kalenteri-)Viikko 3: 1 Harjoitustehtävät: Ohjelmistotekniikka kevät 2015 (harjoitustyöraportin deadline 8.3.2014) (Kalenteri-)Viikko 3: 1. Lue paperit McConnell S., and Tripp L., Professional Software Engineering: Fact or

Lisätiedot

Ohjelmistotekniikka: Luento 3 Jouni Lappalainen

Ohjelmistotekniikka: Luento 3 Jouni Lappalainen Ohjelmistotekniikka: Luento 3 Jouni Lappalainen Luku 4: Käytäntöä ohjaavat periaatteet (kevyt esittely) kommunikoinnin, projektisuunnittelun, mallintamisen, rakentamisen ja toimituksen periaatteet Luku

Lisätiedot

Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun.

Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun. StorageIT 2006 varmuuskopiointiohjelman asennusohje. Hyvä asiakkaamme! Olet tehnyt hyvän valinnan hankkiessasi kotimaisen StorageIT varmuuskopiointipalvelun. Ennen asennuksen aloittamista Varmista, että

Lisätiedot

2. Olio-ohjelmoinnin perusteita 2.1

2. Olio-ohjelmoinnin perusteita 2.1 2. Olio-ohjelmoinnin perusteita 2.1 Sisällys Esitellään peruskäsitteitä yleisellä tasolla: Luokat ja oliot. Käsitteet, luokat ja oliot. Attribuutit, olion tila ja identiteetti. Metodit ja viestit. Olioperustainen

Lisätiedot

Sähköpostitilin luonti 07.06.2011

Sähköpostitilin luonti 07.06.2011 Sähköpostitilin luonti 07.06.2011 SÄHKÖPOSTITILIN LUONTI Tilin luonti pääkäyttäjän hallintaportaalissa 3 Sähköpostitilin luonti Outlook 2010 ohjelmaan 8 Tämä ohje on lyhennetty versio sähköpostilin Hallintaportaalin

Lisätiedot

VIP Mobile Android. Opas asennukseen ja tärkeimpien toimintojen käyttöön

VIP Mobile Android. Opas asennukseen ja tärkeimpien toimintojen käyttöön VIP Mobile ndroid Opas asennukseen ja tärkeimpien toimintojen käyttöön TSP-3719_1-1305 sennus Seuraavassa saat yksinkertaiset ohjeet VIP-sovelluksen asentamiseksi puhelimeesi. lla olevat vaiheet tarvitsee

Lisätiedot

Mallinnus UML-yleiskatsaus

Mallinnus UML-yleiskatsaus 2 Mallinnus UML-yleiskatsaus Tule maalle - näe mullin malli. Tämän osan sisältö Mallinnus ohjelmistoprojekteissa Mallinnuskielet UML-yleiskatsaus Oliopohjainen ajattelu UML-kaaviot rakennetta kuvaavat

Lisätiedot

Työsähköpostin sisällön siirto uuteen postijärjestelmään

Työsähköpostin sisällön siirto uuteen postijärjestelmään Työsähköpostin sisällön siirto uuteen postijärjestelmään edupori.fi/office 365 3.10.2013 Porin kaupunki ATK Tuki Sisällys Johdanto... 2 Edupori.fi sähköpostin määrittäminen Office 365:n Outlook-ohjelmaan

Lisätiedot

Ohjelmistotekniikan menetelmät, koe 2.5.2014

Ohjelmistotekniikan menetelmät, koe 2.5.2014 Ohjelmistotekniikan menetelmät, koe 2.5.2014 Vastaa tehtävään 3 erilliselle konseptille. Tehtävät 1 ja 2 saavat olla samalla konseptilla. Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen

Lisätiedot

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty

Lisätiedot

Luokka- ja oliokaaviot

Luokka- ja oliokaaviot Luokka- ja oliokaaviot - tärkeimmät mallinnuselementit : luokat, oliot ja niiden väliset suhteet - luokat ja oliot mallintavat kuvattavan järjestelmän sisältöä ja niiden väliset suhteet näyttävät, kuinka

Lisätiedot

UML-kielen formalisointi Object-Z:lla

UML-kielen formalisointi Object-Z:lla UML-kielen formalisointi Object-Z:lla Kalvot ja seminaarityö WWW:ssä: http://users.jyu.fi/~minurmin/opiskelu/form/ UML UML == Unified Modelling Language. OMG:n standardoima kieli ohjelmistojärjestelmien,

Lisätiedot

Vaatimusten keräys ja hallinta

Vaatimusten keräys ja hallinta Vaatimusten keräys ja hallinta Inka Vilpola 19.4.2006 Sisältö Vaihe ISO 13407 -prosessissa Vaatimusten lajit (teoria) Vaatimukset hyvälle vaatimukselle Vaatimusten hallinta Vaatimusten kerääminen Vaatimusten

Lisätiedot

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus: Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus

Lisätiedot

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 ER-mallin peruskäsitteet.

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 ER-mallin peruskäsitteet. Tietosisällön kuvaaminen Toteutusvälineistä riippumaton tietosisällön kuvaus Entity-Relationship malliperhe Lähtökohta: Chenin malli vuodelta 1976 Useita muunnelmia, pieniä eroja peruskäsitteissä ja erityisesti

Lisätiedot

Vaatimusmääritelystä UML:n avulla

Vaatimusmääritelystä UML:n avulla Vaatimusmääritelystä UML:n avulla Mitä käyttötapauskaaviolla voi kuvata? Mitkä ovat sen keskeiset elementit? Miten laaditaan käyttötapauskaavio? Miksi laaditaan kirjallisia kuvauksia? Miksi käyttötapaukset

Lisätiedot

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

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Malli-näkym kymä-ohjain arkkitehtuurit (Model-View View-Controller, MVC) Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Lähtökohdat: Sovelluksen

Lisätiedot

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Copyright by Haikala. Ohjelmistotuotannon osa-alueet Copyright by Haikala Ohjelmistotuotannon osa-alueet Ohjelmiston elinkaari 1. Esitutkimus, tarvekartoitus, kokonaissuunnittelu, järjestelmäsuunnittelu (feasibility study, requirement study, preliminary

Lisätiedot

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

Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Malli-näkym kymä-ohjain arkkitehtuurit (Model-View View-Controller, MVC) Interaktiivisten järjestelmien arkkitehtuuriratkaisu, jolla käyttöliittymä erotetaan sovelluslogiikasta. Lähtökohdat: Sovelluksen

Lisätiedot

T&M Autori Versio Series 60 -puhelimiin

T&M Autori Versio Series 60 -puhelimiin T&M Autori Versio 5.0.0 Series 60 -puhelimiin Asennusohje 19. huhtikuuta 2010 TIETOMEKKA T&M Autori asennusohje - 2 SISÄLLYSLUETTELO SISÄLLYSLUETTELO 2 1. YLEISTÄ 3 2. UUDEN MUISTIKORTIN ASENNUS 3 3. T&M

Lisätiedot

VH5, JOTU, MagicDraw:n käyttö

VH5, JOTU, MagicDraw:n käyttö VH5, JOTU, MagicDraw:n käyttö 1. Käynnistä MagicDraw (versio 18.2) 2. Valitse Manage Projects-kohdasta Create New Project toiminto. Oletusarvona on UML Project, saa olla. Täytä nimi (Name) ja tallennuspaikka

Lisätiedot

Lähestymistavat - toiminnallinen

Lähestymistavat - toiminnallinen Lähestymistavat - toiminnallinen Systeemiteoreettinen lähestymistapa INPUT PROCESS OUTPUT systeemi on prosessi, joka saa syötteitä ja tuottaa tuloksia systeemi voidaa jakaa osasysteemeihin tietojärjestelmissä

Lisätiedot

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0 Toukokuu 2013 1 (10) Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0 Päivitysohje Copyright Aditro 2013 Toukokuu 2013 2 (10) Sisällysluettelo 1. Tehtävät ennen versiopäivitystä... 3 1.1. Ohjelmistomuutosten

Lisätiedot

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0 Toukokuu 2014 1 (11) Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0 Päivitysohje Toukokuu 2014 2 (11) Sisällysluettelo 1. Tehtävät ennen versiopäivitystä... 3 1.1. Ohjelmistomuutosten luku...

Lisätiedot

VIDA ADMIN PIKAOPAS SISÄLTÖ

VIDA ADMIN PIKAOPAS SISÄLTÖ SISÄLTÖ 1 VIDA ADMIN... 3 1.1 Tarkastusluettelo... 3 1.2 Lisää käyttäjä... 3 1.3 Rekisteröi VIDA All-in-one... 4 1.4 Aktivoi tilaus sekä liitä käyttäjät ja tietokoneet tilaukseen... 4 1.5 Käyttäjätunnus

Lisätiedot

Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus

Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus Sonera Yrityssähköposti. Outlook 2013 lataus ja asennus Sisältö 1/14 Sonera Yrityssähköpostin käyttöönotto Outlook 2013 -sovelluksella SISÄLLYS Outlook 2013 asennuspaketin lataus... 2 Outlook 2013 asennus...

Lisätiedot

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.

Lisätiedot

UML-MALLINNUSKIELI JA SEN HYÖDYNTÄMINEN OHJELMISTOKEHITYKSESSÄ

UML-MALLINNUSKIELI JA SEN HYÖDYNTÄMINEN OHJELMISTOKEHITYKSESSÄ Juha Rautiainen UML-MALLINNUSKIELI JA SEN HYÖDYNTÄMINEN OHJELMISTOKEHITYKSESSÄ Tietotekniikan kandidaatintutkielma 20.3.2011 Jyväskylän yliopisto Tietotekniikan laitos Tekijä: Juha Rautiainen Yhteystiedot:

Lisätiedot

5. Järjestelmämallit. Mallinnus

5. Järjestelmämallit. Mallinnus 5. Järjestelmämallit Käyttäjävaatimukset pitää kirjoittaa luonnollisella kielellä. Niitä lukevat myös asiakkaat ja loppukäyttäjät. Järjestelmävaatimukset kannattaa kirjoittaa jollain rakenteisella kuvaustavalla.

Lisätiedot

Visma Nova. Visma Nova ASP käyttö ja ohjeet

Visma Nova. Visma Nova ASP käyttö ja ohjeet Visma Nova Visma Nova ASP käyttö ja ohjeet Oppaan päiväys: 2.2.2012. Helpdesk: http://www.visma.fi/asiakassivut/helpdesk/ Visma Software Oy pidättää itsellään oikeuden mahdollisiin parannuksiin ja/tai

Lisätiedot

Olioperustaisuus (object oriented)

Olioperustaisuus (object oriented) DO NOT PRINT THIS DOCUMENT Olioperustainen ohjelmistokehitys Olioperustaisuus (object oriented) järjestelmä (system) muodostuu joukosta olioita (object), jotka yhteistyössä toimien tuottavat järjestelmän

Lisätiedot

Send-It ilmoittautumisjärjestelmä (judotapahtumat Suomessa)

Send-It ilmoittautumisjärjestelmä (judotapahtumat Suomessa) Ilmoittautumis järjestelmän otsikko alue Jokaisella tapahtumalla on otsikko-osa joka on samanlainen joka puolella sovellusta. Tämä Judokilpailuissa käytetty otsikko-osa koostuu viidestä linkistä, joita

Lisätiedot

Mallinnus. 5. Järjestelmämallit. Abstraktiot. Mallinnuksen etuja. Arkkitehtuurimalli. Yhteysmallit. Ohjelmistotuotanto, järjestelmämallit Kevät 2005

Mallinnus. 5. Järjestelmämallit. Abstraktiot. Mallinnuksen etuja. Arkkitehtuurimalli. Yhteysmallit. Ohjelmistotuotanto, järjestelmämallit Kevät 2005 5. Järjestelmämallit Käyttäjävaatimukset pitää kirjoittaa luonnollisella kielellä. Niitä lukevat myös asiakkaat ja loppukäyttäjät. Järjestelmävaatimukset kannattaa kirjoittaa jollain rakenteisella kuvaustavalla.

Lisätiedot

Ohjelmistojen mallintaminen. Matti Luukkainen

Ohjelmistojen mallintaminen. Matti Luukkainen Ohjelmistojen mallintaminen Matti Luukkainen Kurssin aihepiiri: ohjelmistotuotannon alkeita [wikipedia]: Ohjelmistotuotanto on yhteisnimitys niille työnteon ja työnjohdon menetelmille, joita käytetään,

Lisätiedot

Salasanojen hallinta. Salasanojen hallintaopas RESTAURANT ENTERPRISE SOLUTION

Salasanojen hallinta. Salasanojen hallintaopas RESTAURANT ENTERPRISE SOLUTION Salasanojen hallinta Salasanojen hallintaopas RESTAURANT ENTERPRISE SOLUTION Restaurant Enterprise Solution Asiakirjan tarkoitus Tämä asiakirja kertoo tarvittavat säännöt kuinka hallinnoida RES salasanoja

Lisätiedot

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento

Lisätiedot

JOVISION IP-KAMERA Käyttöohje

JOVISION IP-KAMERA Käyttöohje JOVISION IP-KAMERA Käyttöohje 1 Yleistä... 2 2 Kameran kytkeminen verkkoon... 2 2.1 Tietokoneella... 2 2.2 Älypuhelimella / tabletilla... 5 3 Salasanan vaihtaminen... 8 3.1 Salasanan vaihtaminen Windows

Lisätiedot

Määrittelyvaihe. Projektinhallinta

Määrittelyvaihe. Projektinhallinta Määrittelyvaihe Projektinhallinta testaus määrittely suunnittelu ohjelmointi käyttöönotto, testaus tuotteenhallinta laadunvarmistus dokumentointi vaatimustenhallinta Määrittely Määrittely, eli kansanomaisesti

Lisätiedot

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio

Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia tehtäviä:

Lisätiedot

Memeo Instant Backup Pikaopas. Vaihe 1: Luo oma, ilmainen Memeo-tili. Vaihe 2: Liitä tallennusväline tietokoneeseen

Memeo Instant Backup Pikaopas. Vaihe 1: Luo oma, ilmainen Memeo-tili. Vaihe 2: Liitä tallennusväline tietokoneeseen Johdanto Memeo Instant Backup on yksinkertainen varmuuskopiointiratkaisu monimutkaiseen digitaaliseen maailmaan. Memeo Instant Backup suojaa arvokkaat tietosi varmuuskopioimalla C-aseman tiedot automaattisesti

Lisätiedot

Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita.

Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita. Moniperintä 2 Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita. Oliomallinnus TITE.2040 Hannu K. Niinimäki 1 Delegointi 1 Moniperinnän toteuttaminen

Lisätiedot

1 PALKANLASKENTA, TYVI VUOSI-ILMOITUS

1 PALKANLASKENTA, TYVI VUOSI-ILMOITUS 1 PALKANLASKENTA, TYVI VUOSI-ILMOITUS Ecom 3 ohjelmassa Tyvi Vuosi-ilmoitus on erillinen ohjelmaosio, joka löytyy Kaukosäätimestä Palkanlaskenta-valikon alta kohdasta TYVI-raportit. Ohjelman voi avata

Lisätiedot

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link TimeEdit on työjärjestys- (lukujärjestys) ja tilanvarausohjelmisto. Sisältö 1 Oikeudet... 2 2 TimeEdit Web... 2 3 Kirjautuminen...

Lisätiedot

2. Modeemi- ja ISDN-yhteyden käyttöönotto

2. Modeemi- ja ISDN-yhteyden käyttöönotto 2. Modeemi- ja ISDN-yhteyden käyttöönotto Asenna ensin tietokoneeseesi modeemi tai ISDN-sovitin valmistajan ohjeiden mukaisesti. Varmista myös, että Windowsissa on asennettu puhelinverkkoyhteydet. Seuraa

Lisätiedot

Tietokantojen suunnittelu, relaatiokantojen perusteita

Tietokantojen suunnittelu, relaatiokantojen perusteita Tietokantojen suunnittelu, relaatiokantojen perusteita A277, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin

Lisätiedot

HARJOITUS 3: Asennetaan Windows Vista koneeseen Windows 7 Professional upgrade ohjelmisto (Windows 7 käyttöjärjestelmän asennus)

HARJOITUS 3: Asennetaan Windows Vista koneeseen Windows 7 Professional upgrade ohjelmisto (Windows 7 käyttöjärjestelmän asennus) HARJOITUS 3: Asennetaan Windows Vista koneeseen Windows 7 Professional upgrade ohjelmisto (Windows 7 käyttöjärjestelmän asennus) Microsoft Windows Vista Business Microsoft Winodows 7 Professional Upgrade

Lisätiedot

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. VIII Suunnittelumallit Observer ja State

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. VIII Suunnittelumallit Observer ja State 2015 syksy 2. vsk VIII Suunnittelumallit Observer ja State Sisältö 1. Johdanto käyttäytymismalleihin 2. Observer 3. State Suunnittelumallit Observer ja State 2 VIII.1 Johdanto käyttäytymismalleihin Päätarkoitus

Lisätiedot

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikka - Luento 2 Ohjelmistotekniikka - Luento 2 Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento 2: Prosessimallit

Lisätiedot

Olioperustaisuus ohjelmistotuotannossa

Olioperustaisuus ohjelmistotuotannossa Olioperustaisuus ohjelmistotuotannossa perinteinen top-down toiminnan tarkennus karkea kuvaus tarkennuksia ohjelmakoodi Olioperustaisuus ohjelmistotuotannossa Perinteisen osituksen ongelmia komponentit

Lisätiedot

Nimettömien tietojen lähettäminen Lenovolle

Nimettömien tietojen lähettäminen Lenovolle Nimettömien tietojen lähettäminen Lenovolle Sisältö Nimettömien tietojen lähettäminen Lenovolle... 1 Harmony... 1 Lenovo Companion 3.0... 2 Lenovo Customer Engagement Service... 3 Lenovo Experience Improvement

Lisätiedot

TIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely

TIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely Lyhyt UML-opas UML -pikaesittely UML, Unified Modeling Language Standardoitu, yleiskäyttöinen mallinnuskieli, jota ylläpitää/hallitsee (Object Management Group) OMG Historiaa: 90-luvulla oli paljon kilpailevia

Lisätiedot