T Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli
|
|
- Jere Nurmi
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 T Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey Rusanovich arusanov@cc.hut.fi
2 1 Johdanto Analyysimallissa hahmotetaan ongelmakentän käsitteitä luokkakaaviossa, jossa luokat kuvaavat todellisia reaalimaailman olioita. Mallin tarkoituksena on selventää ja havainnollistaa ongelmakenttää sekä antaa viitettä itse toteutuksessa tarvittavista entiteettiluokista. Analyysimallissa luokiin sijoitetaan niiden sisältämää tietoa vastaavat muuttujat, joiden tyyppimääritteitä ei kuitenkaan tarvitse välttämättä tarkasti kuvata. Luokkien välisiä suhteita kuvataan erilaisilla assosiaatioilla, joihin liittyy myös kerrannaisuudet. 2 Sanasto Alle on koottu termejä, jotka voivat olla luonnollisen kielen epätäydellisyydestä johtuen moniselitteisiä tai epäselviä. Näille termeille on annettu tässä yhteydessä seuraavat merkitykset: Kurssi Kurssikerta Kurssivastaava Kurssihenkilö Tentti Tenttisuoritus Vuodesta toiseen säilyvä kokonaisuus, joka sisältää mm. sisällön kuvauksen. Kurssin instanssi. Instanssi on kerran järjestettävä kurssin toteutus, sisältäen henkilökunnan, tilat ja opiskelijat. Kurssista vastaava henkilö. Toimii usein luennoitsijana. Kurssin henkilökunnan jäsen: esim. assistentti tai kurssivastaava. Kokonaisuus, johon kuuluvat tenttitilaisuus, sekä tenttipaperin malli sisältäen tehtävät. Yksittäisen opiskelijan vastaukset. Koostuu tehtäväsuorituksista. 3 Analyysitason luokat Analyysitason luokkia löydettiin ongelmakuvauksesta pääosin tutkimalla siinä esiintyviä substanttiivejä. Lisäksi hieman käytännön toteutusta lähempänä olevia luokkia nousi esiin ongelmakuvauksesta johdetuista käyttötapauskuvauksista ja niiden toimijoista. Kurssi on kuvaus kurssista. Kurssi voisi olla esimerkiksi Tietokanta-algoritmit. Kurssi sisältää siis koodin, nimen, siihen liittyvän opintoviikkomäärän ja sisällön kuvauksen. Kukaan opiskelija ei ole kurssilla vaan siihen liittyvällä kurssikerralla. Kurssikerta on ikään kuin kurssin instanssi. Kurssikerta voisi olla esimerkiksi Olio-ohjelmointi kevät Kurssikertaan liittyy henkilöitä erilaisissa rooleissa, kuten opiskelijana tai kurssihenkilönä. Kurssikertaan liittyy myös tenttejä, jotka on koostettu sillä suoritettavaksi. Tentti on kokonaisuus, joka sisältää niin itse tenttipaperiin liittyvät kysymykset kuin myös tentti- ja valitustilaisuudet. Lisäksi tentti sisältää arvosanarajat. Arvosanarajat sisältävät arvosanat ja niihin vaadittava minimipisteet.
3 Tenttisuoritukset liittyvät tiettyyn tenttiin ja niitä syntyy, kun opiskelijoita ilmoittautuu tenttiin. Myöhemmin niihin täydennetään vastaus, saavutettu pistemäärä ja arvosana sekä tiedot mahdollisesta ilmoittautumisesta valitustilaisuuteen. Tehtävä liittyy tiettyyn kurssiin ja se sisältää tehtävänannon sekä arvosteluohjeet. Tehtäviä voi olla erilaisia, kuten monivalinta- tai tekstitehtäviä. Arvosteluohjeet sisältävät tehtävän mallivastauksen sekä pisteytysohjeet. Tilaisuus on tapahtuma, jolla on aika ja paikka. Tilaisuuksia tässä ympäristössä ovat tenttitilaisuus ja valitustilaisuus. Henkilö on järjestelmän käyttäjä, josta tallennetaan jotain henkilötietoja. Henkilö voi olla myös opiskelija, jolloin hänellä on opiskelijanumero ja hän voi suorittaa tenttejä. 4 Analyysimallit Tässä esitettävä analyysimalli on jaettu helpommin käsiteltäviin ja käsitettäviin osakokonaisuuksiin. Kuva 1 Kurssi ja kurssikerta
4 Kuva 2 Tenttisuoritus Kuva 3 Henkilö ja roolit
5 Kuva 4 Tentti ja tehtävät
6 T Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Käyttötapaukset Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey Rusanovich arusanov@cc.hut.fi
7 1. Johdanto Toimijat ovat erilaisia järjestelmän käyttäjien rooleja. Käyttötapauksissa kuvataan näiden roolien interaktiota järjestelmän käyttäjärajapinnan kanssa. Nämä interaktiot, eli käyttötapaukset on kerätty ryhmässä pohdiskelemalla ongelmakuvauksen perusteella. Kuvauksen ulkopuolisia käyttötapauksia ei yritetty soveltaa sen enempää kuin sen perusteella keksittyjen tapausten järkevä suorittaminen vaati. 2. Toimijat Järjestelmälle löydettiin seuraavia toimijoita: kurssivastaava, kurssihenkilö, opiskelija, ylläpitäjä ja käyttäjä. Kurssivastaava liittyy kurssiin tietyllä aikavälillä ja kurssiin saa yhtä aikaa liittyä vain yksi kurssivastaava. Kurssihenkilöt ovat kurssihenkilökunnan jäseniä. Näihin kuuluvat assistentit ja kurssivastaava. Opiskelijat käyttävät järjestelmää tentteihin ilmoittautumiseen, valitustilaisuuteen ilmoittautumiseen ja verkkotenttien suorittamiseen. Ylläpitäjää tarvitaan lisäämään järjestelmään uusia kursseja ja kurssikertoja. Tämän lisäksi ylläpitäjällä on vastuu hallinnoida käyttäjätunnuksia ja - oikeuksia. Käyttäjä sitoo alleen kaikki edelliset. Huomata kannattaa myös että sama henkilö voi toimia eri toimijana eri tilanteissa. Tämä tarkoittaa siis esimerkiksi sitä, että erään kurssin assistentti voi olla eri kurssilla opiskelijana. 3. Käyttötapaukset 3.1. Käyttötapaus: Kirjaudu sisään Toimija: Kuka tahansa PERUSTAPAUS 1. Käyttäjä tunnistautuu järjestelmälle 2. Järjestelmä tunnistaa käyttäjän ja laskee sisään järjestelmään. Käyttötapaus päättyy. 2a. Järjestelmä ei tunnista käyttäjää, palataan tunnistautumisen alkuun. Käyttötapaus päättyy Käyttötapaus: Luo kurssi Toimija: Ylläpitäjä Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa luoda kurssin 2. Järjestelmä menee tilaan, jossa tietojen syöttö on mahdollista 3. Käyttäjä asettaa kurssikoodin ja kurssivastaavan. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 3-4a. Käyttäjä peruuttaa toiminnon. 1. Järjestelmä poistuu muokkaustilasta. Käyttötapaus päättyy. 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy.
8 3.3. Käyttötapaus: Muokkaa kurssia Toimija: Ylläpitäjä, Kurssivastaava Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa muokata tietyn kurssin tietoja 2. Järjestelmä menee tilaan, jossa tietojen muokkaus on mahdollista 3. Käyttäjä muokkaa haluamiaan tietoja. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 3-4a. Käyttäjä peruuttaa toiminnon. 1. Järjestelmä poistuu muokkaustilasta. Käyttötapaus päättyy. 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Luo tai muokkaa kurssikertaa Toimija: Ylläpitäjä, Kurssivastaava Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa lisätä tietyn kurssin kurssikerran 2. Järjestelmä menee tilaan, jossa tietojen syöttäminen on mahdollista 3. Käyttäjä syöttää lukukauden 4. Käyttäjä lisää kurssihenkilöstön kurssille 5. Käyttäjä valitsee tietojen tallennuksen. 6. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 1a. Kurssikerta on jo olemassa. 1. Järjestelmä hakee kurssikerran tiedot. Siirrytään kohtaan a. Käyttäjä peruuttaa toiminnon. 1. Järjestelmä poistuu muokkaustilasta. Käyttötapaus päättyy. 6a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Luo tai muokkaa tehtävää Toimija: Kurssivastaava, Professori Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa lisätä tietyn kurssin tehtävän 2. Järjestelmä menee tilaan, jossa tietojen syöttäminen on mahdollista 3. Käyttäjä muokkaa tehtäväosaa ja/tai mallivastausta. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 1a. Tehtävä on jo olemassa. 1. Järjestelmä hakee tehtävän tiedot. Siirrytään kohtaan a. Käyttäjä peruuttaa toiminnon. 1. Järjestelmä poistuu muokkaustilasta. Käyttötapaus päättyy.
9 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Luo tentti Toimija: Kurssivastaava Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa lisätä tietyn kurssikerran tentin 2. Järjestelmä menee tilaan, jossa lisääminen on mahdollista 3. Käyttäjä syöttää tentin päivämäärän, ilmoittautumisajan ja tenttitilan. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 1a. Tentti on jo olemassa. 1. Järjestelmä hakee tehtävän tiedot. Siirrytään kohtaan 2. 3a. Jotkut tiedot voidaan jättää tyhjiksi. 3-4a. Käyttäjä peruuttaa toiminnon. 1. Järjestelmä poistuu muokkaustilasta. Käyttötapaus päättyy. 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Ilmoittaudu tenttiin Toimija: Opiskelija Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa ilmoittautua tiettyyn tenttiin. 2. Järjestelmä kirjaa ilmoittautumisen. Käyttötapaus päättyy. 2a. Ilmoittautuminen ei ole mahdollista. 1. Järjestelmä ilmoittaa syyn. Käyttötapaus päättyy Käyttötapaus: Lisää tenttiin tehtävät Toimija: Kurssivastaava Esiehdot: On kirjauduttu sisään PERUSTAPAUS 1. Käyttäjä valitsee haluavansa lisätä vastaamaansa kurssin kurssikertaan liittyvään tenttiin tehtävät. 2. Käyttäjä valitsee tehtävän kurssin tehtävistä ja lisää sen tentin tehtäviin. 3. Järjestelmä näyttää tähän mennessä koostetun tentin. Käyttäjä toistaa kohdat 2 ja 3 haluamansa määrän kertoja. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Suorita tentti Toimija: Opiskelija Esiehdot: On kirjauduttu sisään. Opiskelija on ilmoittautunut kyseiseen tenttiin.
10 PERUSTAPAUS 1. Käyttäjä valitsee haluavansa suorittaa tentin. 2. Järjestelmä näyttää tentin tehtävät ja mahdollistaa vastausten antamisen. 3. Käyttäjä vastaa haluamiinsa tehtäviin. 4. Käyttäjä valitsee tietojen tallennuksen. 5. Järjestelmä ilmoittaa tallennuksen onnistumisesta. Käyttötapaus päättyy. 5a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. 1. Järjestelmä ehdottaa erityistoimenpiteitä. Käyttötapaus päättyy Käyttötapaus: Pisteytä tehtäviä Toimija: Kurssivastaava, assistentti Esiehdot: On kirjauduttu sisään. Käyttäjä kuuluu tenttiin liittyvän kurssikerran henkilökuntaan. Pisteytystä ei ole lukittu. PERUSTAPAUS 1. Käyttäjä valitsee haluavansa pisteyttää tehtäviä. 2. Käyttäjä valitsee pisteytettävät tehtäväsuoritukset 3. Järjestelmä tulostaa suorituksen ja mahdollisen mallivastauksen. 4. Käyttäjä valitsee pistearvon ja kirjoittaa mahdollisen kommentin. 5. Käyttäjä tallentaa pisteytyksen. 6. Järjestelmä kirjaa pisteytyksen ja ilmoittaa tallennuksen onnistumisesta. Jos tehtäviä jäljellä, siirrytään kohtaan 3 7. Käyttäjä valitsee pisteyttämisen lopettamisen. Käyttötapaus päättyy. *a. Milloin tahansa: 1. Käyttäjä valitsee pisteyttämisen lopettamisen. Käyttötapaus päättyy. 6a. Järjestelmä ilmoittaa tallennuksen epäonnistumisesta. 1. Palataan kohtaan 3 näyttäen tallentamattomat tiedot Käyttötapaus: Hyväksy arvostelu Toimija: Kurssivastaava Esiehdot: On kirjauduttu sisään. Käyttäjä on tenttiin liittyvän kurssin vastaava. Kaikki tenttiin liittyvät suoritukset on pisteytetty. PERUSTAPAUS 1. Käyttäjä valitsee haluavansa hyväksyä tietyn tentin arvostelun. 2. Järjestelmä antaa mahdollisuuden valita ja tarkastella yksittäisiä tenttisuorituksia pisteytyksineen. 3. Käyttäjä tarkastaa haluamansa tenttisuoritukset. 4. Käyttäjä lukitsee pisteytyksen. 5. Järjestelmä tulostaa tilastotietoa pisteytyksestä ja antaa mahdollisuuden säätää arvosanarajat. 6. Käyttäjä säätää halutessaan arvosanarajoja. 7. Käyttäjä hyväksyy ja lukitsee tentin arvostelun kokonaisuudessaan. 8. Käyttäjä lopettaa arvostelun hyväksynnän. Käyttötapaus päättyy. *a. Milloin tahansa:
11 1. Käyttäjä valitsee hyväksynnän lopettamisen. Käyttötapaus päättyy. 2a. Pisteytys on jo lukittu. Siirrytään suoraan kohtaan 5. 4a. Järjestelmä ilmoittaa lukitsemisen epäonnistumisesta. Käyttötapaus päättyy. 7a. Järjestelmä ilmoittaa lukitsemisen epäonnistumisesta. Käyttötapaus päättyy. 8a. Käyttäjä valitsee haluavansa julkaista arvostelun. 1. Julkaise tulokset Käyttötapaus: Julkaise tulokset Toimija: Kurssivastaava, assistentti Esiehdot: On kirjauduttu sisään. Käyttäjä kuuluu tenttiin liittyvän kurssikerran henkilökuntaan. Arvostelu on hyväksytty. PERUSTAPAUS 1. Käyttäjä valitsee haluavansa julkaista tietyn tentin arvostelun. 2. Järjestelmä antaa mahdollisuuden valita julkaisutavan. 3. Käyttäjä valitsee julkaisutavan ja julkaisee tulokset. 4. Järjestelmä ilmoittaa julkaisun onnistumisesta. Käyttötapaus päättyy. *a. Milloin tahansa: 1. Käyttäjä valitsee julkaisun lopettamisen. Käyttötapaus päättyy. 4a. Järjestelmä ilmoittaa julkaisun epäonnistumisesta. Käyttötapaus päättyy Käyttötapaus: Rekisteröidy valitustilaisuuteen Toimija: Opiskelija Esiehdot: On kirjauduttu sisään. Käyttäjä on suorittanut kyseisen tentin. Tentin tulokset ovat julkaistu. PERUSTAPAUS 1. Käyttäjä valitsee haluavansa ilmoittautua tietyn tentin valitustilaisuuteen. 2. Järjestelmä kirjaa ilmoittautumisen ja ilmoittaa sen onnistumisesta. Käyttötapaus päättyy. *a. Milloin tahansa: 1. Käyttäjä valitsee ilmoittautumisen lopettamisen. Käyttötapaus päättyy. 2a. Järjestelmä ilmoittaa ilmoittautumisen epäonnistumisesta. Käyttötapaus päättyy. Käyttötapaus: Aseta valitustilaisuus Toimija: Kurssivastaava Esiehdot: On kirjauduttu sisään. PERUSTAPAUS 1. Käyttäjä valitsee haluavansa asettaa tietyn tentin valitustilaisuuden. 2. Käyttäjä syöttää valitustilaisuuden tiedot, kuten päivämäärä ja paikka. 3. Järjestelmä ilmoittaa asetuksen onnistumisesta. Käyttötapaus päättyy. *a. Milloin tahansa: 1. Käyttäjä valitsee asetuksen lopettamisen. Käyttötapaus päättyy. 3a. Järjestelmä ilmoittaa asetuksen epäonnistumisesta. Käyttötapaus päättyy.
12 3.14. Ylläpidä käyttäjätilejä ja käyttöoikeuksia Ylläpidon käyttötapaukset ohitetaan vain maininnalla. Päädyimme tähän, koska emme halunneet turhaan kasvattaa työmäärää järjestelmän päätoimintoihin liittymättömillä lisäosilla. 4. Käyttötapauskaaviot Käyttötapauskaavioissa kuvataan visuaalisesti toimijoiden ja käyttötapausten keskinäiset suhteet. Kuva 1 Käyttäjien suhteet
13 Kuva 2 Opiskelija Kuva 3 Ylläpitäjä
14 Kuva 4 Kurssihenkilökunta
15 T Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Arkkitehtuuri- ja suunnittelumalli Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey Rusanovich arusanov@cc.hut.fi
16 1 Johdanto Arkkitehtuurilla pyritään määrittämään suuren mittaluokan suunnittelulinjaukset ja järjestämään koko järjestelmän loogisiin, yhtenäisiin osakokonaisuuksiin - alijärjestelmiin. Järkevällä arkkitehtuurilla saavutetaan muun muassa ylläpidettävyyttä, modulaarisuutta, sitkeyttä (robustness) ja uudelleenkäytettävyyttä alijärjestelmien ollessa mahdollisimman vähän ja/tai yksisuuntaisesti toisistaan riippuvia. Arkkitehtuuri lienee myös paras väline kommunikoimaan järjestelmää esimerkiksi projektin uusille työntekijöille. Suunnittelu tarkentaa arkkitehtuurin kuvausta ja tarjoaa toteutusehdotuksen, jolla käyttötapaukset voidaan realisoida. Analyysin kertoessa mitä, suunnittelu kertoo siis miten. Käytännössä suunnitteluun kuuluu luokkakaaviot, jotka perustetaan enemmän tai vähemmän analyysimallista poimittuihin luokkiin. Näiden lisäksi tarvitaan avuksi muita luokkia, jotka eivät useinkaan vastaa mitään tosielämän oliota. Näitä saadaan usein kiinni viestiyhteyskaavioista, joissa kuvataan olioiden välistä kommunikaatiota eri käyttötapauksissa. Suunnittelussa kaikkiin luokkiin lisätään lisäksi operaatiot ja näkyvyydet, joilla määrätään niiden käyttäytyminen. 2 Arkkitehtuuri 2.1 Järjestelmän arkkitehtuuri Järjestelmämme voidaan jakaa perinteisen mallin mukaan kolmeen päällekkäiseen kerrokseen, josta ylin käsittelee käyttäjärajapinnat, keskimmäinen business-logiikan ja alin persistenssin. Tehtävänannon mukaisesti jätämme käyttäjärajapinnan ja persistenssin pitkältä huomioimatta ja keskitymme business-logiikkaan. 2.2 Horizontal layering Business-logiikka on jaettu sekin kolmeen alijärjestelmään, jotka voidaan nähdä olevan loogisesti rinnakkain käyttäjärajapinnan alla, niin että käyttäjärajapinnalla on näkyvyys kaikkiin näihin järjestelmiin. Alijärjestelmät ovat Kurssit, Tentit ja Henkilöt, joilla kaikilla on nimensä mukainen pääpainopiste. Alijärjestelmät voidaan myös järjestää niin, että ylempi riippuu aina vain alemmista. Tällöin Kurssit on ylin, Tentit sen alla ja Henkilöt alimmaisena. Useimmat luokat oli helppo sijoittaa keksittyihin alijärjestelmiin, mutta toiset, kuten Tehtävä (Tentit -järjestelmään Kurssit -järjestelmän sijaan) ja Rooli (Kurssit -järjestelmään Henkilöt -järjestelmän sijaan) olivat hieman epäselvempiä. Saavutimme kuitenkin lopulta mielestämme tarkoituksenmukaisen alijärjestelmäjaon joka pitää kytkeytymisen alhaisena ja yhtenäisyyden korkeana, ja jolla vältetään pakkausten väliset kehäriippuvuudet. Myös käyttöliittymätaso on jaettu kahteen erilliseen osakokonaisuuteen, toinen järjestelmän käyttäjiä ja toinen ylläpitoa varten. Nämä ovat selvästikin eri toimintoryhmät eivätkä missään vaiheessa mene päällekkäin, ja siksi pidimme näiden erottamista eri osajärjestelmiksi järkevänä. 2.3 Sijoittelu Järjestelmä voidaan sijoittaa eri koneille fyysisesti kolmitasomallia myötäillen. Tällöin solmuiksi muodostuvat tietokantapalvelin, http-palvelin ja http-asiakas. Käyttäjä- ja
17 ylläpitorajapinnat sijoitetaan http-palvelimelle. Sovelluslogiikka voidaan sijoittaa samaan solmuun http-palvelimen kanssa, joka tällöin käyttäisi sitä suoraan. Tämä tilanne kuvataan kuvan 2 sijoituskaaviossa. Tämä ei suinkaan ole ainoa sallittu vaihtoehto, vaan vaihtoehtoisesti sovelluslogiikka voidaan erottaa http-palvelimesta omaksi solmukseen, tai toisaalta koko järjestelmä asiakasta lukuun ottamatta voidaan sijoittaa samaan solmuun. Jaettaessa järjestelmä kolmeen solmuun palvelinpäässä koneet ovat yhdistetty esim. yksityisellä lähiverkolla. Yksi palvelintietokone toimii tietokantapalvelimena ja kuormasta riippuen yhdestä muutamaan palvelinta toimii WWW-palvelimina palvelinrypäässä. Käyttöliittymät ovat selainkäyttöisiä. Asiakaspääksi käy mikä tahansa tietokone, jolla on pääsy Internetiin ja johon on asennettu WWW-selain. 2.4 Arkkitehtuurikaaviot Kuva 1 Järjestelmän arkkitehtuuri Kuva 2 Kolmijakoinen sijoittelu
18 3 Suunnittelu 3.1 Realisoidut käyttötapaukset Suunnittelutason mallissa ja viestiyhteyskaavioissa toteutettaviksi käyttötapauksiksi valittiin tenttiin ilmoittautuminen, tehtävien pisteytys ja arvostelun hyväksyminen. Näiden ajateltiin olevan järjestelmän kannalta olennaisimpia toimintoja ja tulevan tiheimmin käytetyiksi. Edellä mainittujen lisäksi piirrettiin kaavio kirjautumisesta järjestelmää, koska se on esiehtona kaikille muille operaatioille. Kuva 3 Kirjaudu sisään
19 Kuva 4 Ilmoittaudu tenttiin
20 Kuva 5 Pisteytä tehtäviä
21 Kuva 6 Hyväksy arvostelu
22 3.2 Domain-mallin kehitys suunnittelumalliksi Jokaiseen pakkaukseen lisättiin julkisivuluokka XxxController, joka edelleen käyttää alijärjestelmän sisäisiä rajapintoja ja samalla agregoi siihen pakkaukseen kuuluvat oliot (kurssi / tentti / henkilö). Operaatioita luokkiin lisättiin pääosin tiedon välittämiseksi ja turhan kytkeytymisen välttämiseksi. Luokkien attribuuttien näkyvyydet muutettiin private:ksi ja tarvittaessa pääsy niihin luokan ulkopuolelta tapahtuu getter- ja setter-metodien kautta. Yksinkertaisuuden vuoksi monet suunnittelumallit on jätetty pakkauskohtaisista luokkakaavioista pois, mutta näiden käyttöä selitetään omassa kappaleessa. Business-logiikka alijärjestelmän sisällä ei käytetä rajapintoja vaan luokat kommunikoivat suoraan keskenään. Tämä johtuu siitä, että järjestelmän domain-malli on kohtuu staattinen eikä siihen ole odotettavissa merkittäviä muutoksia järjestelmän elinkaaren aikana. Tällöin myös business-logiikan toteutus pysyy samana. Käyttöliittymien ja erityisesti persistenssialijärjestelmän toteutuksien sen sijaan mukautuvan ajan myötä uusiin tekniikoihin, ja eristäviä rajapintoja tarvitaankin näiden ja business-logiikan väliin. Nämä on kuitenkin jätetty pois tästä osittaisesta suunnittelumallista. 3.3 Osittainen suunnittelumalli Ohessa ovat pakkauskohtaiset luokkakaaviot, joissa esitetään oleellisimmat luokat. Kaaviot pyrittiin pitämään kompakteina ja helppolukuisina, ja tästä syystä suunnittelumalleja ja apuluokkia on jätetty pois. Esimerkiksi kurssi-, tentti- ja henkilöinstanssien aggregaatio todennäköisesti toteutetaan HashMap tyyppisellä ratkaisulla, mitä ei kuitenkaan ole merkitty kaavioihin vaan XxxControllerista on suora aggragaatiosuhde vastaavaan luokkaan. Sama koskee myös muita vastaavia ratkaisuja joihin tässä dokumentissa ei oteta kantaa. Tämän sijasta keskitytään sovelluksen business-logiikan kannalta oleellisiin osiin. Kuva 7 Henkilöt -alijärjestelmä
23 Kuva 8 Kurssit -alijärjestelmä
24 Kuva 9 Tentit -alijärjestelmä 3.4 Suunnittelussa käytetyt (tai harkitut) suunnittelumallit Facade Kuten edellä oli jo mainittu, XxxController luokat toimivat julkisivuina pakkauksilleen tarjoten yksinkertaisen rajapinnan yleisimmille pakkaukseen kohdistuville toiminnoille, esimerkiksi kurssin ja siihen liittyvien tenttien/tehtävien haulle. Singleton + Factory Method XxxControllerit ovat luonteeltaan ainokaiset, sillä pakkauksen Controller aggregoi muiden pakkaukseen kuuluvien luokkien kaikkia ilmentymiä. Ainokainen on toteutettu private static attribuuttina, jolloin suorat viittaukset siihen luokan ulkopuolelta ovat kielletyt. Sen sijaan pääsy siihen tapahtuu getinstance() -metodin kautta, joka palauttaa viittauksen olemassa olevaan ainokaiseen tai luo ja alustaa sen jos kyseessä on
25 ensimmäinen metodin kutsu (vaihtoehtoisesti luonti ja alustus voidaan yhdistää järjestelmän käynnistykseen). Composite Kuva 10 Singeton + Factory method Kuten tiedetään tehtävä voi olla yksittäinen esseekysymys, tai koostua useammasta pienemmästä kysymyksestä, ja teoriassa mikään ei estä alijakoa seuraavillekin tasolle. Tämä tosiasia voidaan mallintaa suunnittelutason mallissamme rekursiokoosteena: abstraktista tehtäväluokasta periytyy muutama eri tehtävävaihtoehto ja lisäksi tehtäväkooste. Strategy Kuva 11 Tehtävä rekursiokooste Tehtävä(nanto) voidaan haluta näyttää ja käyttää erilaisissa muodoissa. Tällaisia voisi olla esimerkiksi http-sivu selainkäyttöliittymää varten, postscript/pdf tulostusta varten tai txt/doc lisämuokkausta varten. Tästä syystä on hyödyllistä tallentaa tehtävät geneeriseen muotoon (esim. xml) ja käyttää instanssia, joka toteuttaa konkreettisen toimintamallirajapinnan tehtävän muokkaamiseen haluttuun tiedostomuotoon.
26 Prototype Kuva 12 Tulostusstrategia Voidaan olettaa, että useat tentit ja/tai tehtävät sisältävät paljon samaa. Vähintäänkin kurssikoodi ja nimi toistuvat pitkälti samanlaisina. Lisäksi tehtävien määrä ja pisteet ovat nekin usein samat. Näin ollen uusien tenttien luontia voidaan helpottaa käyttämällä valmiita tenttipohjia. Nämä pohjat voidaan toteuttaa Tentti-luokan prototyyppiilmentyminä. Pohja voidaan alustaa vain kertaalleen ja kutsua tarvittaessa sen clone() - metodia sen sijaan, että joka kerta luotaisiin uusi alustamaton ilmentymä ja asetettaisiin samat muutokset sen setter-metodeita käyttäen. Tässäkin voidaan käyttää singleton ja factory method -suunnittelumalleja määrittelemällä esimerkiksi staattinen gettemplate(string key) -metodi, joka palauttaa avainta vastaavan templaten staattisesta Hashtable:sta. Template Method Vaatimuksissa oli maininta automaattisesti tarkistettavista tehtävistä, ja vaikka tätä toiminnallisuutta ei edellytetä vielä järjestelmän ensimmäiseltä versiolta, päätimme ottaa sen huomioon suunnittelussa. Tehtävä-kantaluokkaan voidaan määritellä pisteytä() - metodi, joka korvataan esim. Not Supported poikkeuksen heittävällä toteutuksella käsin tarkastettavien tehtävien tapauksessa. Automaattisesti tarkistettavat tehtävän aliluokat sen sijaan suorittavat tehtävän pisteytyksen ja palauttavat tuloksen.
27 Bridge Kuten edellä olikin mainittu järjestelmämme business-logiikan ei odoteta vaativaan muutoksia, ja tästä syystä luokkien välissä ei käytetä rajapintoja. Käyttöliittymä ja persistenssitoteutukset voivat sen sijaan muuttua. Näiden alijärjestelmien ja businesslogiikan välille tarvitaankin rajapinnat, jotta business-logiikka olisi riippumaton näiden toteutuksista, eikä vaatisi näin muutoksia koodiin alijärjestelmien muuttuessa. Observer Observer-mallia harkittiin muun muassa Tenttisuoritus- ja Tehtäväsuoritus -luokkien välille, jotta tentin kokonaispistemäärä päivittyisi tehtäviä arvosteltaessa. Käytölle ei kuitenkaan ollut tarpeeksi edellytyksiä, sillä Tenttisuoritus-olio tietää muutenkin kaikista tehtäväsuorituksistaan ja voi johtaa kokonaispistemäärän aina tarvittaessa. Lisäksi pistemäärälle on tarvetta vain arvostelun lukitus/hyväksymisvaiheessa. Sen sijaan, jos tietoa voitaisiin haluta mielivaltaisella hetkellä ja useita kertoja ennen arvostelun lukitusta, olisi ehkä kannattavaa pyytää suorituksia laskemaan pistemääränsä vain tehtäväpisteiden muuttuessa ja palauttaa tämä valmiiksi laskettu arvo vastauksena kyselyihin.
T Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Käyttötapaukset
T-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Käyttötapaukset Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey
LisätiedotT-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Arkkitehtuuri- ja suunnittelumalli
T-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Arkkitehtuuri- ja suunnittelumalli Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi
LisätiedotT Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli
T-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Harjoitustyöraportti TNT - Tarkistetaan Ne Tentit Analyysimalli Lasse Lindqvist Lasse Lopperi llindqvi@cc.hut.fi lmlopper@cc.hut.fi Andrey Rusanovich
LisätiedotAnalyysi, 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ätiedotAnalyysi, 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ätiedot812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton
2015 syksy 2. vsk IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton Sisältö 1. Johdanto luontimalleihin 2. Proxy 3. Factory Method 4. Prototype 5. Singleton Suunnittelumallit Proxy et.
LisätiedotTUNI EXAM Sähköinen tentti. Opettajan pikaopas
TUNI EXAM Sähköinen tentti Opettajan pikaopas Mikä on EXAM? exam.tuni.fi Sähköinen näyttö tarkoittaa tietokoneella suoritettavaa näyttöä (tentti, kypsyysnäyte, viikkokoe, välikoe yms.) Suoritetaan valvotussa
LisätiedotVaatimusmää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ätiedotOhjelmistotekniikan 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ätiedotMoodle Kysymyspankki / Tenttiaktiviteetti / Arviointi. Jukka Kurttila
Moodle Kysymyspankki / Tenttiaktiviteetti / Arviointi Jukka Kurttila Tenttiä voi käyttää esim. Harjaannuttaa oppilaita sähköiseen vastaamiseen rajatussa aikataulussa Verkkotenttejä / kokeita Tenttejä /
LisätiedotKompassi-digikokeen suoritusten arviointi ja tulosten julkaisu
Kompassi-digikokeen suoritusten arviointi ja tulosten julkaisu Kokeen suoritusten arvioinnin voi aloittaa heti, kun ensimmäinen oppilas on lähettänyt vastauksensa ja siten päättänyt kokeensa suorittamisen.
LisätiedotOhjelmistojen 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ätiedotLomalista-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ätiedotkä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ätiedotKypsyysnäytteen laatiminen ja arvioiminen Examissa
Kypsyysnäytteen laatiminen ja arvioiminen Examissa Käytä EXAM:issa Firefox tai Chrome selainta. Järjestelmän www-osoite opettajille ja opiskelijoille on https://exam.utu.fi Kypsyysnäytteen voit osoittaa
LisätiedotOhje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE. Kirjautuminen Moodleen ja työtilan valitseminen
Ohje 1 (12) Maarit Hynninen-Ojala MOODLE PIKAOHJE Kirjautuminen Moodleen ja työtilan valitseminen 1. Verkko-osoite: http://moodle.metropolia.fi 2. Kirjautuminen: omat verkkotunnukset 3. Oma Moodlessa näkyvät
LisätiedotKompassi Suoritusten tarkistaminen ja tulosten julkaisu
Kompassi Suoritusten tarkistaminen ja tulosten julkaisu Tässä ohjeessa kerrotaan, kuinka tarkistat kokeen ja julkaiset tulokset oppilaille. Suoritusten tarkistamisen voi aloittaa heti, kun ensimmäinen
LisätiedotOpintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat
Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat Rajapinnat Java-kieli ei tue luokkien moniperintää. Jokaisella luokalla voi olla vain yksi välitön yliluokka. Toisinaan olisi
LisätiedotKypsyysnäytteen laatiminen ja arvioiminen Examissa
Kypsyysnäytteen laatiminen ja arvioiminen Examissa Sähköisen tentin järjestelmän EXAMin käyttöön suositellaan Firefox selainta. Järjestelmän www-osoite opettajille ja opiskelijoille on https://exam.utu.fi
LisätiedotAjankohtaista tietoa LähiTapiolan verkkopalvelun pääkäyttäjille
Ajankohtaista tietoa LähiTapiolan verkkopalvelun pääkäyttäjille Hyvä verkkopalvelumme pääkäyttäjä, Kerromme tässä tiedotteessa ajankohtaisia ja tärkeitä asioita LähiTapiolan yritysten verkkopalveluun kirjautumisesta,
LisätiedotAutomaattinen arviointi ja pika-arviointi EXAM-tenteissä. Marjut Anderson
Automaattinen arviointi ja pika-arviointi EXAM-tenteissä Marjut Anderson Yleistä automaattisesta arvioinnista Opettaja voi valita tentilleen automaattisen arvioinnin, jos tentti sisältää vain automaattisesti
Lisätiedot812341A Olio-ohjelmointi Peruskäsitteet jatkoa
812341A Olio-ohjelmointi 2106 Peruskäsitteet jatkoa Luokkakohtaiset piirteet n Yhteisiä kaikille saman luokan olioille n Liittyvät luokkaan, eivät yksittäiseen olioon n Kaikki ko. luokan oliot voivat käyttää
LisätiedotT harjoitustyö, kevät 2012
T-110.4100 harjoitustyö, kevät 2012 Kurssiassistentit T-110.4100@tkk.fi Tietotekniikan laitos Perustieteiden korkeakoulu Aalto-yliopisto 31.1.2012 Yleistä Kurssin osasuoritteita ovat kaksi osatenttiä,
LisätiedotILMOITTAUTUMINEN OPINNOILLE
1 (5) ILMOITTAUTUMINEN OPINNOILLE Opintojen toteutuksille tulee ilmoittautua SoleOPSissa niiden ilmoittautumisaikana joko HOPSilta tai toteutussuunnitelmalta. Ilmoittautumisajat - syksyn opinnoille 15.4.
LisätiedotOhjelmoinnin jatkokurssi, kurssikoe 28.4.2014
Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014 Kirjoita jokaiseen palauttamaasi konseptiin kurssin nimi, kokeen päivämäärä, oma nimi ja opiskelijanumero. Vastaa kaikkiin tehtäviin omille konsepteilleen.
LisätiedotEXAM opiskelijan ohjeet
1 EXAM opiskelijan ohjeet Sisältö Ilmoittautuminen tenttiin ja tenttitilan varaaminen... 1 Ajankohdan vaihtaminen... 5 Tentti-ilmoittautumisen peruminen... 5 Tenttitilat... 5 Tenttiin tulo... 5 Tenttiminen...
LisätiedotOpettajan ohje 1/2. Tentin luominen. Tenttiakvaarion tukisivut: 1. Aloitus
Opettajan ohje 1/2 Tentin luominen 1. Aloitus Kirjoita selaimen osoitekenttään: https://tenttiakvaario.it.helsinki.fi/hallinta/ Kirjautuminen tenttijärjestelmään tapahtuu syöttämällä yliopiston käyttäjätunnuksesi
LisätiedotSähköpostitilin käyttöönotto
Sähköpostitilin käyttöönotto Versio 1.0 Jarno Parkkinen jarno@atflow.fi Sivu 1 / 16 1 Johdanto... 2 2 Thunderbird ohjelman lataus ja asennus... 3 3 Sähköpostitilin lisääminen ja käyttöönotto... 4 3.2 Tietojen
LisätiedotILMOITTAUTUMINEN OPINNOILLE
1 (8) ILMOITTAUTUMINEN OPINNOILLE Opintojen toteutuksille tulee ilmoittautua SoleOPSissa niiden ilmoittautumisaikana joko HOPSilta tai toteutussuunnitelmalta. Ilmoittautumisajat - syksyn opinnoille 15.4.
LisätiedotStudentaPlus - opiskelijaliittymä
StudentaPlus - opiskelijaliittymä Käyttöohje www.solenovo.fi SISÄLLYSLUETTELO 1 Yleistä... 3 2 Järjestelmän sijainti... 3 3 Etusivu... 4 4 Lukujärjestys... 4 5 Perustiedot... 6 5.1 Osoitettu ja hankittu
LisätiedotUML: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ätiedotTentissä 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ätiedotTarjousten vertailu ja hankintapäätös
Tarjousten vertailu ja hankintapäätös Asiantuntija Laura Heinonen 12.11.2014 Järjestelmän hyödyntäminen myös kilpailutusprosessin lopussa Järjestelmällä voi hoitaa koko kilpailutusprosessin alusta loppuun
LisätiedotOhjelmistotekniikan 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ätiedotTä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ätiedotEXAM Kypsyysnäytteen toteuttaminen ja arvioiminen
EXAM Kypsyysnäytteen toteuttaminen ja arvioiminen Tarkista onko asennettu Korkeakoulu voi itse päättää, asennetaanko heidän EXAM-järjestelmään kypsyysnäyte-toiminto vai ei. Osassa kouluja kypsyysnäytteet
LisätiedotTentissä 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ätiedotEXAM Kypsyysnäytteen laatiminen ja arviointi
EXAM Kypsyysnäytteen laatiminen ja arviointi Tarkista onko asennettu Korkeakoulu voi itse päättää, asennetaanko heidän EXAM-järjestelmään kypsyysnäyte vai ei. Opettajan ohje kypsyysnäytteen toteuttamiseen
LisätiedotGroupDesk Toiminnallinen määrittely
GroupDesk Toiminnallinen määrittely Tilanne: Paikallinen oppilaitos, kuvitteellinen WAMK, tarvitsee ryhmätyöhön soveltuvan sähköisen asioiden hallintajärjestelmän ja ryhmätyöohjelmiston, jonka ajatuksena
LisätiedotPauliina Munter/Suvi Junes Tampereen yliopisto / Tietohallinto Valitse muokkaustila päälle kurssialueen etusivun oikean yläkulman painikkeesta.
Sanasto Sanasto -työkalulla voi laatia sanakirjan tapaisen sanaston, jonka hakusanoja (käsitteitä ja niiden määritelmiä) voidaan selata ja opettajan niin halutessa myös kommentoida. Sekä opettaja että
LisätiedotArkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2
Lisätiedot<e.g. must, essential, conditional>
Käyttötapaukset Kurssin malli käyttötapauksille: Tila < List of users and the other systems that interacts directly with a system>
LisätiedotAJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML
AJAX-konsepti AJAX Asynchronous JavaScript And XML Viimeisin muoti-ilmiö web-ohjelmoinissa, termi Ajax tuli käyttöön vuoden 2005 aikana Joukko teknologioita, joiden avulla voidaan toteuttaa uudenlaisen
LisätiedotT SEPA - päiväkirja: Design Patterns. ETL työkalu
T-76.115 SEPA - päiväkirja: Design Patterns ETL työkalu Versio Päivämäärä Tekijä Kuvaus 1.0 25.10.2004 Jani Honkanen PP-vaiheen jälkeinen versio 1,1 26.11.2004 Mika Suvanto I1- vaiheen kokemuksia lisätty
LisätiedotOhjelmistojen 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ätiedotMoodle-oppimisympäristö
k5kcaptivate Moodle-oppimisympäristö Opiskelijan opas Sisältö 1. Mikä on Moodle? 2. Mistä löydän Moodlen? 3. Kuinka muokkaan käyttäjätietojani? 4. Kuinka ilmoittaudun kurssille? 5. Kuinka käytän Moodlen
LisätiedotSATAKUNNAN AMMATTIKORKEAKOULU
SAMK SoleOps uusintatenttijärjestelmä 1(8) Opettajan rooli Tässä ohjeessa on selostettu SoleOPSin uusintatenttijärjestelmässä opettajan tehtäviin kuuluvat toiminnot. Näitä ovat: 1. uusintatenttipäivämäärien
LisätiedotTenttiWilho 2.0 UUSINTA- JA KOROTUSTENTTIJÄRJESTELMÄ OPISKELIJAN OHJE
TenttiWilho 2.0 UUSINTA- JA KOROTUSTENTTIJÄRJESTELMÄ OPISKELIJAN OHJE Virve Peltoniemi TAMK, 17.02.2012, Versio 2.0 (muokattu ohjeesta: Laurea-ammattikorkeakoulu/Jori Komulainen) 1 Yleistä 1.1 Uusintatenttikelpoisuus
LisätiedotInteraktiivisten 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ätiedotHenkilökohtaisen tentin laatiminen ja arviointi
Henkilökohtaisen tentin laatiminen ja arviointi Henkilökohtaisen tentin voit osoittaa tietylle opiskelijalle tai opiskelijoille. Tentti EI tule näkyville Nettipsuun. Opiskelija/opiskelijat saavat sähköpostia,
LisätiedotTestaussuunnitelma Labra
Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,
Lisätiedot15. Ohjelmoinnin tekniikkaa 15.1
15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Geneerinen ohjelmointi. Lueteltu tyyppi enum. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien silmukoimiseen:
Lisätiedotejuttu ohjeet kuinka sitä käytetään.
ejuttu ohjeet kuinka sitä käytetään. 1. Artikkelin lisääminen a. Kirjaudu sisään b. Lisää sisältöä c. Artikkeli i. Lisää pääkuva 1. Pääkuvalle kuvateksti ii. Anna artikkelille otsikko iii. Ingressi-kenttään
LisätiedotVaatimusdokumentti Labra
Vaatimusdokumentti Labra Helsinki 18.6.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Henrik Naakka,
LisätiedotOpiskelijan WinhaWILLE-ohjeet (Wille)
2016 Opiskelijan WinhaWILLE-ohjeet (Wille) Tämä ohjeistus sisältää seuraavat osiot: 1. Osoitteen muutos 2. Ilmoittautuminen lukuvuodelle 3. Ilmoittautuminen toteutukselle (opinnolle) 4. HOPS / suoritusten
LisätiedotHenkilökohtaisen tentin laatiminen ja arviointi
Henkilökohtaisen tentin laatiminen ja arviointi Henkilökohtaisen tentin voit osoittaa tietylle opiskelijalle tai opiskelijoille. Tentti EI tule näkyville Nettipsuun. Opiskelija/opiskelijat saavat sähköpostia,
LisätiedotKurssin käytännön järjestelyt. Tuotantotalous 1 Joel Kauppi
Kurssin käytännön järjestelyt Tuotantotalous 1 Joel Kauppi Kurssin henkilökunta Vastuuopettaja prof. Paul Lillrank (TU-A1100 ja TU-A1200) Assistentit Joel Kauppi (Pääassistentti) Niko Pronin Elias Peterzens
LisätiedotYhteistoimintakaavio (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ätiedotKompassi-digikokeen arvostelu ja tulosten julkaisu - opettaja
Kompassi-digikokeen arvostelu ja tulosten julkaisu - opettaja Tässä ohjeessa kerrotaan, kuinka arvostelet digikokeen ja julkaiset arvosanat opiskelijoille. Suoritusten arvostelun voi aloittaa heti, kun
LisätiedotLyhyt oppimäärä sihteerin toimista Korppi-järjestelmässä
Lyhyt oppimäärä sihteerin toimista Korppi-järjestelmässä Sisältö 1 Opintokokonaisuudet 1 2 Tentit 2 3 Oppiaineet 3 4 Kurssinimikkeet ja toteutukset 3 5 Käyttäjäoikeudet 4 1 Opintokokonaisuudet Opetuksesi
LisätiedotOpettajan ohje kypsyysnäytteen toteuttamiseen ja arvioimiseen sähköisenä tenttinä
A. Kypsyysnäytteen luominen 1/12 Opettajan ohje kypsyysnäytteen toteuttamiseen ja arvioimiseen sähköisenä tenttinä A. Kypsyysnäytteen luominen Avaa Firefox- tai Chrome -selain ja kirjaudu Karelia-amk:n
LisätiedotOhjelmistojen 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ätiedotInteraktiivisten 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ätiedotTestausdokumentti. Sivu: 1 / 10. Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto. Versiohistoria
Sivu: 1 / 10 Testausdokumentti Ohjelmistotuotantoprojekti Sheeple Helsingin yliopisto Versiohistoria Versio Päivitykset 0.4 Lisätty mod_form.php -tiedostoon liittyvät testit 0.5 Lisätty johdanto 1.0 Dokumentti
LisätiedotT harjoitustehtävät, syksy 2011
T-110.4100 harjoitustehtävät, syksy 2011 Kurssiassistentit Tietotekniikan laitos Perustieteiden korkeakoulu Aalto-yliopisto T-110.4100@tkk.fi Yleistä Kurssin osasuoritteita ovat kaksi osatenttiä ja harjoitustehtävät
LisätiedotFuturaPlan. Järjestelmävaatimukset
FuturaPlan Järjestelmävaatimukset 25.1.2017 2.2 Hermiankatu 8 D tel. +358 3 359 9600 VAT FI05997751 33720 Tampere fax. +358 3 359 9660 www.dbmanager.fi i Versiot Versio Päivämäärä Tekijä Kommentit 1.0
LisätiedotKotkaliikkuu.fi. Ohjeita seuroile ja yhteisöille palvelun käytöstä
Kotkaliikkuu.fi Ohjeita seuroile ja yhteisöille palvelun käytöstä Tunnukset Tarvitset käyttäjätunnuksen ja salasanan käyttääksesi palvelua. Tunnukset ovat usein yhteisölle yhteiset. Henkilökohtaisia tunnuksia
LisätiedotOhjeet psykoterapeuteille www.vapaatajat.fi. info@vapaatajat.fi
Ohjeet psykoterapeuteille www.vapaatajat.fi info@vapaatajat.fi Vapaat Ajat palvelun ohjeet psykoterapeuteille Tästä oppaasta löydät ohjeet Vapaat Ajat palvelun käyttöön. Käymme läpi palveluun rekisteröitymisen,
LisätiedotKäyttötapauksen nimi Lukija: pääsivu Osallistujat Lukija Tuloehdot Käyttäjä on avannut sivuston pääsivun Kuvaus Ruudulle tulostuvat kirjoittajat ja
Käyttötapauksen nimi Lukija: pääsivu Osallistujat Lukija Tuloehdot Käyttäjä on avannut sivuston pääsivun Kuvaus Ruudulle tulostuvat kirjoittajat ja heidän juttujensa otsikot. Poikkeukset - Lopputulos Käyttäjä
LisätiedotTentin asetukset. Tentin lisääminen. Tentin asetukset
Tentin asetukset Moodlen tentti-aktiviteetin perusasetukset käydään läpi tällä sivulla. Jos etsit ohjetta kysymysten luomiseen, katso erillinen ohjesivu kysymyspanki sta. Tentti soveltuu "perinteisen tenttimisen"
LisätiedotArkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 1.0 19.10.2007 Suanto 0.3 18.10.2007 Matti Eerola 0.2 17.10.2007
LisätiedotOliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä
Oliosuunnitteluesimerkki: Yrityksen palkanlaskentajärjestelmä Matti Luukkainen 10.12.2009 Tässä esitetty esimerkki on mukaelma ja lyhennelmä Robert Martinin kirjasta Agile and Iterative Development löytyvästä
LisätiedotRistiinopiskelun kehittäminen -hanke
Joustavia opiskelumahdollisuuksia tuetusti Exam-kevätpäivät (31.5.2018) Joustavia opiskelumahdollisuuksia tuetusti Hanke on opetus- ja kulttuuriministeriön rahoittama korkeakoulujen kehittämishanke. Tukea
LisätiedotPunomo Blogit BLOGIN LUOMINEN WORDPRESS-ALUSTALLA. Kirjaudu -palveluun osoitteessa www.punomo.npn.fi/wp-login.php tunnuksellasi.
Punomo Blogit BLOGIN LUOMINEN WORDPRESS-ALUSTALLA Kirjaudu -palveluun osoitteessa www.punomo.npn.fi/wp-login.php tunnuksellasi. Tunnuksia jakavat Punomo.fi:n ylläpitäjät. Kun olet kirjautunut, blogin OHJAUSNÄKYMÄ
LisätiedotSilvaToiminta Versio 1.0. SilvaToiminta. Pikaohje Versio Oy Silvadata Ab Pikaohje 1
SilvaToiminta Pikaohje Versio 1.0 12.12.2014 Oy Silvadata Ab 10.12.2014 Pikaohje 1 SISÄLLYS 1 SILVATOIMINTA... 3 2 OHJELMISTON KÄYTTÖTARKOITUS... 4 2.1 Osiot... 4 2.1.1 Asiakkaat... 4 2.1.2 Viestit...
LisätiedotJYVÄSKYLÄN SEUDUN. 1. Sisältö * * Tähdellä merkityt kohdat ovat pakollisia. Sivun oikeassa yläkulmasta löytyy Lisää oma tapahtumasi.
JYVÄSKYLÄN SEUDUN Sivun oikeassa yläkulmasta löytyy Lisää oma tapahtumasi. Lomakkeella voit lisätä tapahtuman tapahtumiin, harrasteisiin tai molempiin. 1. Sisältö * * Tähdellä merkityt kohdat ovat pakollisia.
Lisätiedot2. 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ätiedotGolfBox -käyttöohjeet Sarfvikin jäsenille. Versio 3.0
GolfBox -käyttöohjeet Sarfvikin jäsenille Päivitetty toukokuu 2015 Sisällysluettelo 1 JOHDANTO... 3 2 SISÄÄN- JA ULOSKIRJAUTUMINEN GOLFBOXISTA... 4 2.1 SISÄÄNKIRJAUTUMINEN GOLFBOXIIN... 4 2.2 ULOSKIRJAUTUMINEN
LisätiedotMiten hyväksyn SoleOPSissa opiskelijat omalle opintojakson toteutukselle?
Miten hyväksyn SoleOPSissa opiskelijat omalle opintojakson toteutukselle? Syksystä 2014 lähtien uusien aloittavien vuosikurssien osalta opintojakson toteutukselle ilmoittautuneiden opiskelijoiden hyväksyminen
LisätiedotOhjelmistojen 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ätiedot15. Ohjelmoinnin tekniikkaa 15.1
15. Ohjelmoinnin tekniikkaa 15.1 Sisällys For-each-rakenne. Lueteltu tyyppi enum. Override-annotaatio. Geneerinen ohjelmointi. 15.2 For-each-rakenne For-rakenteen variaatio taulukoiden ja muiden kokoelmien
LisätiedotUuden TwinSpacen yleiskatsaus
Uuden TwinSpacen yleiskatsaus (Julkaistu syyskuussa 2014 ) Nämä ohjeet on tarkoitettu opettajaylläpitäjille. Ne sisältävät kaikki tarvittavat tiedot uuden TwinSpacen käyttämiseen. Kirjautuminen Siirry
LisätiedotTenttikysymykset. + 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ätiedot812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä
2016 IX Olioiden välisistä yhteyksistä Sisältö 1. Johdanto 2. Kytkentä 3. Koheesio 4. Näkyvyydestä 2 Johdanto n Ohjelmassa syntyy kytkentöjä olioiden välille Toivottuja ja epätoivottuja n Näkyvyys vaikuttaa
LisätiedotSuvi Junes/Pauliina Munter Tietohallinto/Opetusteknologiapalvelut 2014
Tietokanta Tietokanta on työkalu, jolla opettaja ja opiskelijat voivat julkaista tiedostoja, tekstejä, kuvia ja linkkejä alueella. Opettaja määrittelee lomakkeen muotoon kentät, joiden kautta opiskelijat
LisätiedotTIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. FT Ari Viinikainen
TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op FT Ari Viinikainen Tietokoneen rakenne Keskusyksikkö, CPU Keskusmuisti Aritmeettislooginen yksikkö I/O-laitteet Kontrolliyksikkö Tyypillinen Von Neumann
LisätiedotOhjelmistotekniikan 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ätiedotWebforum. Version 14.4 uudet ominaisuudet. Viimeisin päivitys: 2014-12-6
Webforum Version 14.4 uudet ominaisuudet Viimeisin päivitys: 2014-12-6 Sisältö Tietoja tästä dokumentista... 3 Yleistä... 4 Yleistä & hallinnointi... 5 Dokumentit... 5 Perättäinen tarkistus- ja hyväksymisprosessi...
LisätiedotTyöpalvelupaikat. Xwiki Admin 2016/07/06 16:35
Työpalvelupaikat Xwiki Admin 2016/07/06 16:35 Table of Contents Uuden työpalvelupaikan lisääminen... 3 Työpalvelupaikan tietojen ylläpito... 4 Työpalvelupaikan tietojen näkyvyys järjestelmän ulkopuolelle...
LisätiedotOpintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op
Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Opintojakso TT00AA11 Ohjelmoinnin jatko (Java) Tavoite Opiskelija ymmärtää olio-ohjelmoinnin problematiikan. Opiskelija osaa määritellä ja käyttää itse
Lisätiedot27.11.09. Napsauta Kurssin viikkonäkymä- näkymässä oikeassa yläreunassa sijaitsevaa Muokkaustila päälle -painiketta.
1 (14) MOBILOGI-ET Tässä dokumentissa on ohjeita Moodlen Logi-työkalun mobiililaajennuksen (Mobilogi) käyttöön. Dokumentin pohjana on käytetty HAMK:n Teemu Tuurin kirjoittamaa ohjeistusta ja sen sisältö
LisätiedotKompassi-digikokeen julkaisu opettaja
Kompassi-digikokeen julkaisu opettaja Ennen kuin voit julkaista kokeen oppilaillesi, heidän pitää liittyä tekemääsi työtilaan avaimella ja avata Kompassi napauttamalla Kompassi-digikokeet -linkkiä. Tällöin
LisätiedotToinen harjoitustyö. ASCII-grafiikkaa
Toinen harjoitustyö ASCII-grafiikkaa Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin itse. Ideoita
LisätiedotKurssijärjestelyt. CS-1180 Verkkojulkaisemisen perusteet (5 op) Hanna Hämäläinen Informaatioverkostot / Mediatekniikan laitos
Kurssijärjestelyt CS-1180 Verkkojulkaisemisen perusteet (5 op) Hanna Hämäläinen Informaatioverkostot / Mediatekniikan laitos (Alkuperäiset luentokalvot: Markku Laine) 10. Tammikuuta 2017 Luennon sisältö
LisätiedotMuusta kuin vesisioista
Muusta kuin vesisioista Janne Käki 8.12.2006 Metodin kuormittaminen (overloading) Samannimisestä metodista on määritelty samassa luokassa (tai samassa yli- ja aliluokkien jatkumossa) useita versioita,
LisätiedotHELIA 1 (14) Outi Virkki Käyttöliittymät ja ohjlmiston suunnittelu
HELIA 1 (14) Luento 7 Käyttöliittymäolio... 2 Olioajattelun perusteet... 3 Tavoitteet... 3 Peruskäsitteet... 4 Olio / Olioinstanssi / Olion esiintymä... 4 Ominaisuudet... 4 Toiminnot... 4 Olioluokka /
Lisätiedotelearning Salpaus http://elsa.salpaus.fi Elsa-tutuksi
elearning Salpaus http://elsa.salpaus.fi Elsa-tutuksi SISÄLLYSLUETTELO 1 MIKÄ ON ELSA, ENTÄ MOODLE?... 3 1.1 MITÄ KURSSILLA VOIDAAN TEHDÄ?... 3 2 KURSSILLE KIRJAUTUMINEN... 3 3 KURSSILLE LIITTYMINEN...
LisätiedotSuoritusten kirjaaminen WinOodissa: Opintoneuvojan ohje
Helsingin yliopisto WinOodi Sivu 1/6 Suoritusten kirjaaminen WinOodissa: Opintoneuvojan ohje Opettajat voivat WebOodissa kirjata arviointeja kokonaisille opintojaksoille ja siirtää ne rekisteröitäviksi
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 15.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 15.3.2010 1 / 56 Tiedostoista: tietojen tallentaminen ohjelman suorituskertojen välillä Monissa sovelluksissa ohjelman
LisätiedotMää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