TEKNINEN MÄÄRITTELY Virtuaaliyhteisöiden muodostaminen Versio 1.2

Koko: px
Aloita esitys sivulta:

Download "TEKNINEN MÄÄRITTELY Virtuaaliyhteisöiden muodostaminen Versio 1.2"

Transkriptio

1 TEKNINEN MÄÄRITTELY Versio 1.2 Edited by Checked by Approved by Harri Kauhanen Tuomo Marttila

2 i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. JOHDANTO Tarkoitus ja kattavuus Tuote ja ympäristö Määritelmät, merkintätavat ja lyhenteet Viittaukset muihin dokumentteihin Yleiskatsaus dokumenttiin 3 2. JÄRJESTELMÄN YLEISKUVAUS Sovellusalueen kuvaus Järjestelmän liittyminen ympäristöönsä Laitteistoympäristön kuvaus Ohjelmistoympäristön kuvaus 4 3. ARKKITEHTUURIN KUVAUS Yleistä Ratkaisun "filosofia" (suunnitteluperiaatteet) Tietokanta-arkkitehtuuri Ohjelmistoarkkitehtuuri, moduulit ja prosessit 6 4. MODUULI KUVAUKSET Yleistä Perustietorakenteet AMOK luokat AMOK Tietorakenteet AMOK moduuli Amok, User ja Community AMOK Wrapper-moduuli UserServicesAmok UiConverter 12

3 ii Sisällysluettelo XML luokat VYM Vym rajapinta Db luokat VymMachine luokat XML TIETORAKENTEET Yleistä DTD-määrittelyt profile.dtd service.dtd community.dtd ui.dtd 17

4 1(20) Dokumentin versiot Vers Muuttaja Pvm Muutos Tarkastanut Hyväksynyt 1.0 Tuomo Marttila Ensimmäinen luonnos. Luonnos Harri Kauhanen Kirjoitusvirheiden korjausta. Luonnos Harri Kauhanen Suunniteltujen moduuli/luokkakuvausten lisäykset ja kommentointi. Ensimmäisen luonnoksen luokkien dokumentointia poistettu, sillä varsinainen API dokumentointi generoidaan koodista automaattisesti. Luonnos Tuomo Marttila Tehty lisäyksiä. Luonnos Harri Kauhanen Liästty luku 6 (XML) Harri Kauhanen 1.2 Juha Parhankangas DTD-osion päivitykset Luonnos Tuomo Marttila Rakenne muutokset päivitetty Luonnos Tuomo Marttila Muutoksien päivittäminen Luonnos Harri Kauhanen Viittaukset korjattu ja ulkoasu korjattu. Poistettu luku 6 tarpeettomana. Tuomo Marttila

5 2(20) 1. JOHDANTO 1.1. Tarkoitus ja kattavuus Tässä dokumentissa määritetään VYM:n rakenne moduulitasolla Tuote ja ympäristö Tuotteen kuvaus on määritetty dokumentissa vaatimusmäärittely [3] kohdassa Määritelmät, merkintätavat ja lyhenteet AMOK Käyttäjäprofiili Sääntö VYM VYMK Virtuaaliyhteisö Adapterikomponentti. AMOK on järjestelmän osa, joka tarjoaa rajapinnat ulkoisille liittymille järjestelmään ja ohjaa asiakassovelluksen pyynnöt joko suoraan kantaan tai VYM:lle, riippuen pyynnön laadusta. Käyttäjäprofiili sisältää yhden käyttäjän tiedot. Profiili määritellään ensisijaisesti käyttäjän syöttämien tietojen mukaan, mutta se saattaa myös muuttua oppiessaan käyttäjän toimista. Käyttäjäprofiili on ohjelmiston kannalta ekvivalentti käyttäjän kanssa. Virtuaaliyhteisöjä muodostetaan sääntöjen avulla. Sääntöä ei tule ymmärtää välttämättä predikaattilogiikan avulla muodostettuna, vaan sääntö on mikä tahansa rajoite, jonka avulla voidaan tutkia käyttäjäprofiileja ja määrittää, kuuluuko henkilö profiilinsa perusteella ryhmään vai ei. Virtuaaliyhteisöjen muodostajakone. Keskeisin osa sovellusta, joka muodostaa virtuaaliyhteisöt käyttäjäprofiileista sääntöjen perusteella. VYM:n osa, joka laskee varsinaiset yhteisöt. Virtuaaliyhteisö muodostuu joukosta käyttäjiä (käyttäjäprofiileja), joilla on samanlaisia harrastuksia ja kiinnostuksen kohteita. Virtuaaliyhteisön jäsenten tulee voida kommunikoida keskenään. Lisäksi jokaisen yhteisön jäsenen tulee voida ottaa selville, mihin yhteisöihin hän kuuluu. Sääntöjen avulla voidaan profiileista muodostaa virtuaaliyhteisöjä. Jotta virtuaaliyhteisö voisi kommunikoida, tulee virtuaaliyhteisön määrittää media ja protokolla, joiden avulla kommunikaatio voidaan suorittaa. Lisäksi tulee määrittää tapa, jolla henkilö voi ottaa selville, mihin yhteisöihin hän kuuluu. Määritelmä, joka toteuttaa edellä mainitut ehdot, on nelikko (A,B,C,D), jossa A on osajoukko kaikista käyttäjäprofiileista. A:n alkiot toteuttavat säännöstön B, joka on määritelty kullekin virtuaaliyhteisölle erikseen. C on joukko, joka koostuu kommunikaatiotavoista. C siis toisin sanoen määrittelee, millä tavoilla yhteisön sisällä kommunikoidaan. D on toiminto, jonka avulla käyttäjä voi ottaa selville, mihin yhteisöihin hän kuuluu Viittaukset muihin dokumentteihin # Documentti Selitys 1 API dokumentaatio JavaDoc kommenteista tuotettu luokkien tarkka dokumentointi 2 Toiminnallinen määrittely Tehtävän tuotteen tarkka määrittely toiminnallisella tasolla. Tietokannan kuvaus. 3 Vaatimusmäärittely Projektille ja tehtävälle tuotteet asetetut (asiakkaan) vaatimukset.

6 3(20) 1.5. Yleiskatsaus dokumenttiin Luvussa 2 kuvataan järjestelmän eri osat hyvin yleisellä tasolla. Luvussa 3 kuvataan järjestelmän arkkitehtuuri. Tietokanta-arkkitehtuuri on kuvattu kohdassa 3.3. Luvussa 4 käsitellään eri moduulien kuvaukset. Kohdassa 4.1 on järjestelmän yleiskuva ja kohdassa 4.2 perustietorakenteet. Kohdissa 4.3, 4.4, 4.5 ja 4.7 käsitellään AMOK:ia ja kohdassa 4.8 VYM:iä. Luvussa 5 käsitellään määriteltyjä XML formaatteja.

7 4(20) 2. JÄRJESTELMÄN YLEISKUVAUS 2.1. Sovellusalueen kuvaus VYM on virtuaaliyhteisöjä muodostava kone, joka liittyy johonkin sitä tarvitsevaan palveluun Järjestelmän liittyminen ympäristöönsä VYM liittyy portaaliin AMOK:n rajapinnan kautta. Käytännössä ensivaiheessa on kyseessä Java luokkarajapinta Laitteistoympäristön kuvaus VYM on täysin palvelinsovellus ja vaatii toiminnallisessa määrittelyssä [2] kuvatun laitteiston Ohjelmistoympäristön kuvaus VYM kirjoitetaan Javalla, ja sen tulisi toimia missä tahansa käyttöjärjestelmässä, jossa on JDK 1.2.2

8 5(20) 3. ARKKITEHTUURIN KUVAUS 3.1. Yleistä Arkkitehtuuriksi on valittu modulaarinen rakenne, jotta VYM-kone voidaan helposti vaihtaa sopivampaan mahdolliseen. Eri osat toteutetaan Java-luokkina. Seuraavat moduulit ovat välttämättömiä VYM:n toiminnalle. AMOK hoitaa järjestelmänhallinta työkalun (AdminTool), portaalin tai minkä tahansa VYM-järjestelmää käyttävän systeemin yhteydet varsinaiseen VYM:in. VYM:n logiikka ohjaa kantaa ja varsinaista VYM-konetta. Kone sisältää kaiken älykkyyden mitä tarvitaan virtuaaliyhteisöjen muodostamiseen. Tietokanta sisältää käyttäjäprofiilit, palveluprofiilit ja yhteisöprofiilit, sekä näiden väliset suhteet. Järjestelmänhallinta -sovelluksessa on käyttöliittymä jolla voidaan lisätä ja päivittää käyttäjä-, palvelu- ja yhteisöprofiileja. Demoportaali on loppukäyttäjän käyttöliittymä järjestelmään. Loppukäyttäjän palveluja on luonnollisesti rajattu siten, että käyttäjä voi muuttaa vain omia tietojaan Ratkaisun "filosofia" (suunnitteluperiaatteet) VYM tehdään oliopohjaisena. Eri komponentit ovat Java-luokkia. Vaikka AMOK ja VYMK esitetään eri osina, ne toimivat käytännössä samassa koneessa, ja keskustelevat keskenään Java-luokkarajapinnan yli. Javan käyttö on asiakkaan vaatimus ja toteutuksen kannalta on helpompaa tehdä AMOK:sta ja VYMK:sta yhtenäinen. VYM on palvelinsovellus, eikä sillä ole varsinaista käyttöliittymää. Admin-sovellus tulee palvelemaan VYM:n käyttöliittymänä ylläpidolle, ja ulkoinen portaali tarjoaa käyttöliittymän käyttäjälle. Kaikki tieto moduulien välillä välitetään parametreina. Globaaleja muuttujia ei tulla käyttämään. Myös AMOK:n ja VYMKin välillä tieto siirretään parametreina. Tietokantana on Oracle 8i relaatiokanta. Se on kuvattu toiminnallisen määrittelyn [2] luvussa 3. Tietoa VYM-järjestelmään voidaan syöttää tai lukea käyttäen suoraan AMOKrajapintaa, mutta vaihtoehtoisesti dataa voidaan välittää myös XML-kuvauksina. Tietorakenteet on esitetty luvussa 6.

9 6(20) 3.3. Tietokanta-arkkitehtuuri Tietokannan rakenne on kuvattu toiminnallisen määrittelyn [2] luvussa 3. Koska kyseessä on tutkimusprojekti emme tässä projektissa tee suojattua ja varmistettua kantaa. Tuotantoympäristössä VYM-palvelun tarjoaja määrittää muun muassa käytettävyystason. Käytännössä VYM:n tulee toimia 24h/vrk, mikä tarkoittaa kahdennettua palvelinta. Koska kanta tulee käytännössä kasvamaan melko nopeasti, on kannan tilaa tarkkailtava, ja tarpeen vaatiessa on kanta järjestettävä uudelleen, jotta kannan rakenne pysyisi tehokkaana Ohjelmistoarkkitehtuuri, moduulit ja prosessit Seuraavassa luvussa on kuvattu ohjelmiston tekninen rakenne moduuli- ja luokkatasolla. Kuvauksissa on käytetty UML kaavioita ja toimintaa on kuvailtu yleisellä tasolla. Luokkien tarkka dokumentointi ei sisälly tähän määrittelyasiakirjaan, vaan luokkien tarkka tekninen kuvaus löytyy on-line HTML versiona VYM projektin kotisivuilta osoitteesta: Tietovirrat luokkien välillä ovat niin selkeät, että niitä ei ole erikseen mallinnettu.

10 7(20) 4. MODUULI KUVAUKSET 4.1. Yleistä VYM-järjestelmä komponenttiesityksenä Kok o järjestelmän voisi jak aa periaatteessa seuraaviin k omponentteihin. Kohdat, joissa k omponenttien välinen k esk ustelu on rapapinnan (pallo) k autta, voitas periaatteessa toteuttaa jollain hajautussysteemillä. Esim. k äyttäen Corbaa. Toinen esimerkk i voisi olla VymMachine:n toteuttaminen natiivina threadina, jos Java:n tehot loppuisivatkin k esken. A mokwrapper Amok Vym VymMachine Vym VymMachin e UserService s Admin Tool VymDb UserPortal Oheisessa kuvassa on esitetty VYM järjestelmä kokonaisuudessaan moduulitasolla. Moduulien tarkempi kuvaus on esitetty seuraavissa kappaleissa. Karkeasti yksinkertaistettuna moduulien toiminta on seuraava: VymMachine: Yhteisöjen muodostamisen äly Vym: Älykkään järjestelmän rajapinta ulospäin. Yhteisöjen muodostamisen logiikka. Koneen ja kannan ohjaus VymDb: Tietokanta rajapintoineen. Amok: Muodostaa Vym:n yksinkertaisesta rajapinnasta käyttäjä-, palvelu- ja yhteisöluokat, jotka itse tietävät tilansa. Esim. käyttäjältä voidaan kysyä suoraan ne yhteisöt, joihin se kuuluu. AmokWrapper: Kokoelma luokkia, jotka laajentavat Amok moduulia. Esim. käyttäjien luonti suoraan XML kuvauksesta. AdminTool: Työkalu käyttäjien, yhteisöjen, palveluiden ja itse järjestelmän hallintaan. UserPortal: Loppukäyttäjälle suunnattu palvelu, jonka palvelut on rajattu käyttäjän itsenä muokkaamiseen.

11 8(20) 4.2. Perustietorakenteet Perustietorakenteet Näitä "perustietorak enteit a" k äytetään k aikk ialla VYM järjes telmäs sä. Myös VYM:iä k äyttävät liittymät (portaali, hallintat yök alut jne.) k äyttävät näitä samoja tietorak enteita. Luok k ak uvauk sista puuttuvat setxxx ja getxxx metodit jotk a kuitenkin oikeasti löytyvät kaikille jäsenmuuttujille. int userid String userlogin String userfirstname String userlastname UserData UserData(String login, String firstname, String lastname) UserData(String login, String firstname, String lastname, Communication communication) int communityid String communityname String description int communityhostuserid CommunityData CommunityData(String cname, String cdesc, int chost, Algortihm alg) CommunityData(String cname, String cdesc, int chost, Algortihm alg, Communication comm) -communication Communication String communicationname String communicatiovalue -communication Communication(String name, String value) Algorithm -algorithm Algorithm(int type, String data) ServiceData int serviceid String servicename String servicedescription String address SeviceData(String sname, String sdescription) SeviceData(String sname, String sdescription, String saddress) String name int number Feature Käyttäjien/palveluiden/yh teisöjen "ominaisuudet" muodostetaan tekemällä näistä ArrayList ProfileFeature(String featurename, int Number)

12 9(20) 4.3. AMOK luokat Kaikki AMOK luokat AmokTools UserServices ideana oli antaa "rajoitettu" rajapinta ulospäin (estäen esim. yhteisöjen muokkauksen). Käytännössä tämä todettiin turhaksi ja lisää turhaan yhden vaiheen käyttäjien käsittelyyn. <<Interface>> UserServices (from com.comptel.vym.amok.wrapper) UserServicesAmok (from com.comptel.vym.amok.wrapper) Amok Community <<Interface>> +vym Vym (from com.comptel.vym) +vym +vym User Service UiConverter (from com.comptel.vym.amok.wrapper) <<abstract>> UiUnit (from com.comptel.vym.amok.wrapper) XMLReader (from com.comptel.vym.amok.wrapper) XMLWriter (from com.comptel.vym.amok.wrapper) SliderUiUnit (from com.comptel.vym.amok.wrapper) RButtonUiUnit (from com.comptel.vym.amok.wrapper)

13 10(20) 4.4. AMOK Tietorakenteet AMOK ja sen tietorakenteet AMOK ja sen luok at muodostaa "fik summan" rajapinnan k oneen k äyttöön. User, S ervice ja Community luok at tarjoavat sellaista toiminnallisuutta, että järjestelmän k äytön tulisi olla helppoa. E simerk ik si User-luok alta voidaan k ysyä suoraan mihin yhteisöihin se k uuluu ja päinvastoin. Toiminta on myös läpinäkyvää - esim. käyttäjäprofiilin päivityksen jälk een ei tarvitse pyytää erillistä päivitystä, vaan uudet yhteisöt voidaan k ysyä samantien (toiminta riippuu täysin alla olevasta k onees ta). AMOK toimii myös "välimuistina" Vym k oneeseen päin jonk a ansiosta esim. käyttäjän tiedot voidaan hak ea User luokan omasta "välimuistista". Itse VYM-kone ei tarvitse näitä luokkia. Community Community(CommunityData communitydata, Vym vym) getcommunitydata() : CommunityData updatecommunitydata(communitydata communitydata) getfeatures() : ArrayList <Feature> updatefeatures(arraylist <Feature>) getusers() : ArrayList <User> getservices() : ArrayList <Service> User User(UserData userdata, Vym vym) getuserdata() : UserData updateuserdata(userdata userdata) getfeatures() : ArrayList <Feature> updatefeatures(arraylist <Feature>) getcommunities() : ArrayList <Community> Amok createuser(userdata userdata) : User removeuser(user user) finduser(string username) : User getallusers() : ArrayList <User> createcommunity(community community) : Community removecommunity(community community) findcommunity(string communityname) getallcommunitites() : ArrayList <Community> createservice(servicedata servicedata) : Service removeservice(service service) getallservices() : ArrayList <Service> +vym +vym +vym Vym (from com.comptel.vym) Service Service(ServiceData servicedata, Vym vym) getservicedata() : ServiceData updateservicedata(servicedata servicedata) getfeatures() : ArrayList <Feature> updatefeatures(arraylist <Feature>) getcommunities() : ArrayList <Community> AmokTools Apuluokk a, joka os aa mm. konvertoida listan käyttäjä ID:tä User luokiksi.

14 11(20) 4.5. AMOK moduuli AMOK ja sen tietorakenteet AMO K ja sen luok at muodostaa "fik s umm an" rajapinnan k oneen k äyttöön. Comm unity ja User luok at tarjoavat sellaista toiminnallisuutta, että järjestelm än k äytön tulisi olla helppoa. Esimerk ik si User-luok alta voidaan k ysyä suoraan mihin yhteisöihin se k uuluu ja päinvastoin. Toiminta on myös läpinäk yvää - esim. k äyttäjäprofiilin päivityk sen jälk een ei tarvitse pyytää erillistä päivitystä, vaan uudet yhteisöt voidaan k ysyä samantien (toiminta riippuu täys in alla olevasta k oneesta). Itse VYM-k one ei tarvitse näitä luok k ia. Community Data (from com.comptel.vym) Feature (from com.comptel.vym) UserData (from com.comptel.vym) Community User Community(CommunityData communitydata, Vym vym) getcommunitydata() : CommunityData updatecommunitydata(communitydata communitydata) getfeatures() : ArrayList <Feature> updatefeatures(arraylist <Feature>) getusers() : ArrayList <User> User(UserData userdata, Vym vym) getuserdata() : UserData updateuserdata(userdata userdata) getfeatures() : ArrayList <Feature> updatefeatures(arraylist <Feature>) getcommunities() : ArrayList <Community> Amok createuser(userdata userdata) : User removeuser(user user) finduser(string u sernam e) : User getallusers() : ArrayList <User> createcommunity(community community) : Community removecommunity(community community) findcommunity(string communityname) getallcomm unitites() : ArrayList <Community> +vym +vym +vym Vym (from com.comptel.vym) Vym luokat UserData jne. ei kuulu suoraan User luokkaan, vaan tiedot saadaam Vym-rajapinnasta. Sama idea Communicaty-luokkaa Amok, User ja Community Nämä kolme luokkaa paketoivat VYM-rajapinnan sisäänsä niin, että esim. käyttäjältä voidaan suoraan kysyä mihin yhteisöihin ne kuuluvat. Toisaalta käyttäjän tietojen päivittäminen ohjataan myös suoraan VYM:in (ja sitä kautta kantaan ja varsinaiselle koneelle).

15 12(20) 4.6. AMOK Wrapper-moduuli UserPortal ja AMOK luokat Hoitaa mm. tietoturvaa: käyttäjän salasanan tarkistukset, piilottaa ominaisuuksia jne. Interface:n perintä saattaa olla turhaa, mutta näin se ainakin "simuloi" esim. Corba rajapintatoteutusta. Tästä olisi periaatteessa helppo tehdä oikea Corba rajapinta muuttamalla Java Interface IDL kuvaukseksi. UserPortal luok alle tarjotaan vielä oma rajapintansa. Periaatteessa UserPortal voisi k äyttää suoraan Amok :ia ja UiConverteria. Turvallisempaa olisi kuitenk in tarjota jok u UserServices:n tapainen rajapinta päätelaiteliittymien k ehittäjille. Amok itsessään ei ole mitenk ään suojattu, joten palik k a välissä on tarpeen. UserServicesAmok Amok (from com.comptel.vym.amok) UserServices createuser(userdata userdata) loginuser(string username, string password) getuserdata() : UserData updateuserdata(userdata userdata) getuserprofile() : ArrayList <UiUnit> updateuserprofile(arraylist <UiUnit>) getusercommunities() : ArrayList <CommunityData> UiConverter convertfeaturestoui(arraylist <Feature> profile) : ArrayList <UiUnit> convertuitofeatures(arraylist <UiUnit> uiprofile) : A rraylist <Feature> Us erportal (from com.c omptel.vym.userportal) Xm lui Osaa konvertoida erilaisia profiileja "käyttöliittymänä esitettävään muotoon" ja päinvastoin UserServicesAmok Tarjoaa rajapinnan portaalille ja välittää tiedot itse AMOK:iin UiConverter Hoitaa tietokonversion esim. käyttäjän profiilista käyttöliittymäksi ja toisinpäin. VYMkoneen profiilit ei sisällä tietoa siitä, miten tietoja tulisi kysyä esim. loppukäyttäjältä. Tämän luokka siis osaa muuttaa yksinkertaisen profiilin sellaiseksi, että mahdolliset arvoalueet on rajattu ja tiedot voidaan esittää käyttöliittymän komponentteina (esim. radiobuttonit, sliderit jne.)

16 13(20) AMOK:n apuluokat käyttöliittymien tekoon UiUnit:sta perittyt luokat esittävä käyttöliittymäkomponentteja, joilla voi olla esim. rajattu arvoalue. Komponentit voivat olla periaatteessa minkälaisia vain ja miten ne esitetään loppuk äyttäjälle on käyttöliittymäluokan "ongelma". UiConverter osaa muuttaa listan Feature:ita listaksi k äyttöliittymäelementtejä ja päinvastoin. Apuna tässä tarvitaa ui.xml nimistä tiedostoa, joka määrittelee sen, minkälainen esitystapa ja arvoalue milläk in ominaisuudella (Feature) on. "Käyttöliittymä" tehdään muodostamalla näistä ArrayList UiConverter convertfeaturestoui(arraylist <Feature> profile) : ArrayList <UiUnit> convertuitofeatures(arraylist <UiUnit> uiprofile) : ArrayList <Feature> getemptyfeatures() : ArrayList <Feature> getemptyui() : ArrayList <UiUnit> <<abstract>> Ui Unit getname() : String getexplanation() : String setname(string name) setexplanation(string expl) <<abstract>> getvalue() : float <<abstract>> isnumerable() : boolean RBut tonuiuni t getnumofoptions() : int getoptionname(int index) : String getoptionvalue(int index) : int setselected(int index, String optionname) getchecked() : int setchecked(int index) setvalue(float value) setoptionname(string name) setoptionvalue(float value) SliderUiUnit SliderProfileUnit() getmintext() : String getmaxtext() : String getminvalue) : float() getmaxvalue() : float setvalue(float value) setmintext(string mintext) setmaxtextstring maxtext)() setminvalue(float minvalue) setmaxvalue(float maxvalue)

17 14(20) XML luokat AMOK:n apuluokat XML käsittelyyn XMLReader ja XMLWriter luok kien avulla VYM järjestelmään voidaan tuoda käyttäjiä/palveluita/yhteisöjä muista järjestelmistä. Sama onnistuu siis myös toisinpäin, eli VYM järjestelmän tiedot voidaan muuttaa XML esitykseksi. Myös AMOK:n UiConverter tarvitsee XMLReaderin palveluita käyttöliittymäelementtien muodostamiseen. XMLReader XMLReader(InputStream sourcesteram) initreader(inputstream sourcesteram) isreadok() : boolean geterrormessage() : String readuserprofile() : boolean getuserdata() : UserData readservice() : boolean getservicedata() : ServiceData readvirtualcommunity() : boolean getcommunitydata() : CommunityData getfeatureslist() : ArrayList <Feature> readuiunit() : boolean getuiunit() : UiUnit getcurrentuiclassname() : String XMLWriter XMLWriter(OutputStream os) init(outputstream os) writeuserprofile(userdata u, ArrayList <Feature> featurelist) : boolean writeservice(servicedata s, ArrayList <Feature> featurelist) : boolean writecirtualcommunity(communitydata d, ArrayList <Feature> featurelist) : boolean writeui(uiunit ui) : boolean finalizewriting(string style) : boolean 4.7. VYM VYM luokat (VYM kone ja tietokantayhteys) <<Interface>> Vym StubVym EssentialVym DatabaseHandler (from com.comptel.vym.db) VymEngine ExpandedVym CommunityHandler (from co m.comptel.vym.d b) UserHandler (from com.comptel.vym.db) ServiceHandler (from com.comptel.vym.db) Vym rajapinta Rajapinta tarjoaa palvelut käyttäjien, palveluiden ja luokkien hallintaan. Rajapinnan toteuttavat luokat saavat käsitellä annettuja käyttäjä-, palvelu- tai yhteisötietoja

18 15(20) haluamallaan tavalla, mutta tyypillisesti Vym-luokka ohjaa suoraan kantaa ja kun esim. uusi käyttäjä luodaan tai käyttäjäprofiili muuttuu, niin kutsutaan varsinaisesti VYMkonetta (VymMachine). VYM rajapinta Vym createuser(userdata userdata) removeuser(int userid) getuserdata(int userid) : UserData getuserdata(string login) : UserData updateuserdata(userdata userdata) getuserfeatures(int userid) : ArrayList <Feature> updateuserfeatures(int userid, ArrayList <ProfileFeature>) getusercommunities(int userid) : int[] createservice(servicedata servicedata) removeservice(int serviceid) getservicedata(int serviceid) : ServiceData updateservicedata(servicedata servicedata) getservicefeatures(int serviceid) : ArrayList <Feature> updateservicefeatures(int serviceid, ArrayList <Feature>) getservicecommunities(int serviceid) createcommunity(communitydata communitydata) removecommunity(string communityname) getcommunitydata(string communityname) : CommunityData updatecommunitydata(string communityname, CommunityData) getcommunityrules(string communityname) : ArrayList <Rule> updatecommunityrules(string communityname, ArrayList <Rule>) getcommunityusers(string communityname) : ArrayList <String> getallusers() : int[] getallservices() : int[] getallcommunities() : int[] Vym luok at ovat k ok o yhteisön muodostuksen äly ja logiik ka. Itse Vym tarjoaa rajapinnan käyttäjien, palveluiden ja yhteisöjen muokkaamiseen. Muutosten vaikutuksesta yhteisöjen rakenne voi muuttuua. Kaikki tämä tapahtuu läpinäkyvästi eli Vym-rajapinnan käyttäjän ei tarvitse käsk eä tekemään yhteisöjen päivitystä, vaan profiilin muutos riittää (tämä riippuu loppujen lopuksi toteutettavasta koneesta - kone voi reagoida mihin tahansa käyttäjän operaatioon haluamallaan tavalla). Ei tee mitään järkevää, mutta voidaan käyttää esim. käyttöliittymän apuna, kun Vym kone tai kanta ei vielä oikeasti toimi StubVym EssentialVym Db luokat DbHandler ja siitä perityt luokat hoitavat yhteyden tietokantaan. UserHandler hoitaa käyttäjiin liittyvät, ServiceHandler palveluihin liittyvät ja CommunityHandler yhteisöihin liittyvät toimenpiteet VymMachine luokat VymMachine luokat ovat erilaisia koneita, jotka osaavat liittää käyttäjiä / palveluja yhteisöihin.

19 16(20) 5. XML tietorakenteet 5.1. Yleistä VYM-sovellusta varten on laadittu XML kuvaukset seuraavia tietorakenteita varten: käyttäjät palvelut yhteisöt käyttöliittymä (konvertointi) Näistä kolmea ensimmäistä käytetään tilanteisiin, jolloin järjestelmään halutaan syöttää paljon dataa tai päinvastoin kun järjestelmästä halutaan siirtää dataa muihin järjestelmiin. Neljäs kuvaa sen, kuinka käyttäjien, palveluiden ja yhteisöjen profiilit esitetään käyttäjälle. Esimerkiksi profiilin elementille voidaan näin määritellä arvoalueita ja esitystapa sille, miten tieto lopulta käyttäjältä kysytään. XML kuvaukset muutetaan VYM:n sisäisiksi tietorakenteiksi ja päinvastoin tarkoitusta varten laadittavilla luokilla DTD-määrittelyt profile.dtd <?xml version="1.0"?> <!ELEMENT PROFILELIST (PROFILE*)> <!ELEMENT PROFILE (FIRSTNAME,LASTNAME,USERID,COMMUNICATION,FEATURELIST)> <!ELEMENT FIRSTNAME (#PCDATA)> <!ELEMENT LASTNAME (#PCDATA)> <!ELEMENT USERID (#PCDATA)> <!ELEMENT COMMUNICATION (NAME (NAME,VALUE)> <!ELEMENT FEATURELIST (FEATURE+) <!ELEMENT FEATURE (NAME,NUMBER)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT VALUE (#PCDATA)> <!ELEMENT NUMBER (#PCDATA)> service.dtd <?xml version="1.0"?> <!ELEMENT SERVICELIST (SERVICE*)> <!ELEMENT SERVICE (NAME,INFO,ADDRESS,FEATURELIST)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT INFO (#PCDATA)> <!ELEMENT ADDRESS (#PCDATA)> <!ELEMENT FEATURELIST (FEATURE+)> <!ELEMENT FEATURE (NAME,NUMBER)> <!ELEMENT NUMBER (#PCDATA)>

20 17(20) community.dtd <?xml version="1.0"?> <!ELEMENT COMMUNITYLIST (COMMUNITY*)> <!ELEMENT COMMUNITY (NAME,INFO,ALGORITHM,COMMUNICATION,FEATURELIST)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT INFO (#PCDATA)> <!ELEMENT COMMUNICATION (NAME (NAME,VALUE))> <!ELEMENT VALUE (#PCDATA)> <!ELEMENT ALGORITHM (TYPE, DATA)> <!ELEMENT TYPE (#PCDATA)> <!ELEMENT DATA (#PCDATA)> <!ELEMENT FEATURELIST (FEATURE+)> <!ELEMENT FEATURE (NAME,NUMBER)> <!ELEMENT NUMBER (#PCDATA)> ui.dtd <?xml version="1.0"?> <!ELEMENT UILIST (UI*)> <!ELEMENT UI (NAME,DESCRIPTION,ITEM)> <!ELEMENT NAME (#PCDATA)> <!ELEMENT ITEM (RBUTTON SLIDER TEXTFIELD)> <!ELEMENT RBUTTON ((NAME,VALUE)+)> <!ELEMENT SLIDER (INTEGER,MINTEXT,MAXTEXT,MINVALUE,MAXVALUE)> <!ELEMENT INTEGER (#PCDATA)> <!ELEMENT MINTEXT (#PCDATA)> <!ELEMENT MAXTEXT (#PCDATA)> <!ELEMENT VALUE (#PCDATA)> <!ELEMENT TEXTFIELD (#PCDATA)> <!ELEMENT DESCRIPTION (#PCDATA)> <!ELEMENT MINVALUE (#PCDATA)> <!ELEMENT MAXVALUE (#PCDATA)>

TEKNINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 2)

TEKNINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 2) TEKNINEN MÄÄRITTELY Edited by Checked by Approved by Tuomo Marttila Luonnos 1 Tekninenmäärittely i Sisällysluettelo 1. JOHDANTO 2 1.1. Tarkoitus ja kattavuus 2 1.2. Tuote ja ympäristö 2 1.3. Määritelmät,

Lisätiedot

TEKNINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.1

TEKNINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.1 TEKNINEN MÄÄRITTELY Edited by Checked by Approved by Tuomo Marttila Luonnos 1 Tekninenmäärittely i Sisällysluettelo 1. JOHDANTO 2 1.1. Tarkoitus ja kattavuus 2 1.2. Tuote ja ympäristö 2 1.3. Määritelmät,

Lisätiedot

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 4)

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 4) VAATIMUSMÄÄRITTELY Versio 1.0 (luonnos 4) Edited by Checked by Approved by Juha Parhankangas Luonnos 4 i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. JOHDANTO 2 1.1. Projektin luonne 2 1.2. Tarkoitus ja kattavuus

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Tekninen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Sisällysluettelo 1. Johdanto...4 1.1. Tarkoitus ja kattavuus...4 1.2. Tuote ja ympäristö...4 1.3. Määritelmät,

Lisätiedot

TOIMINNALLINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0

TOIMINNALLINEN MÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.0 TOIMINNALLINEN MÄÄRITTELY Versio 1.0 Edited by Checked by Approved by Tuomo Marttila Juha Parhakangas Toiminnallinenmäärittely i Sisällysluettelo 1. JOHDANTO 2 1.1. Tarkoitus ja kattavuus 2 1.2. Tuote

Lisätiedot

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.2

VAATIMUSMÄÄRITTELY Virtuaaliyhteisöjen muodostaminen Versio 1.2 VAATIMUSMÄÄRITTELY Edited by Checked by Approved by Antti Tuomaala Juha Parhankangas Niko Stenberg i Sisällysluettelo DOKUMENTIT VERSIOT 1 1. JOHDANTO 2 1.1. Projektin luonne 2 1.2. Tarkoitus ja kattavuus

Lisätiedot

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - JÄRJESTELMÄ, ADMIN i Sisällysluettelo DUMENTIN VERSIOT 1 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI

Lisätiedot

LAATUKATSELMUS LU Virtuaaliyhteisöjen muodostamien. 24.04.2001 Saved

LAATUKATSELMUS LU Virtuaaliyhteisöjen muodostamien. 24.04.2001 Saved 1(18) JAKELU Koko VYM-ryhmä Vers Muuttaja Pvm Muutos Tarkastanut Hyväksynyt 1.0 22.4.2001 Alkuperäinen versio Luonnos 1 1.0 23.4.2001 Muutama liäsys ja tarkennys Antti Tuomaala Laatukatselmus LU 1. Suunniteltu

Lisätiedot

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite

Lisätiedot

EDISTYMISRAPORTTI - T2 Virtuaaliyhteisöjen muodostaminen Versio 1.2

EDISTYMISRAPORTTI - T2 Virtuaaliyhteisöjen muodostaminen Versio 1.2 EDISTYMISRAPORTTI - T2 Edited by Checked by Approved by Antti Tuomaala Harri Kauhanen i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. PROJEKTIN TILA 2 1.1. Yleistä 2 1.2. Resurssit 2 1.3. Laatu 4 2. SUORITETUT

Lisätiedot

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - JÄRJESTELMÄ, PORTAL i Sisällysluettelo DUMENTIN VERSIOT 1 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI

Lisätiedot

EDISTYMISRAPORTTI - T4 Virtuaaliyhteisöjen muodostaminen Versio 1.0

EDISTYMISRAPORTTI - T4 Virtuaaliyhteisöjen muodostaminen Versio 1.0 EDISTYMISRAPORTTI - T4 Edited by Checked by Approved by Antti Tuomaala Harri Kauhanen i Sisällysluettelo DOKUMENTIN VERSIOT 2 1. PROJEKTIN TILA 3 2. SUORITETUT TEHTÄVÄT 5 Projektisuunnitelma 5 Testaussuunnitelma

Lisätiedot

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - VYM JA KANTA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - VYM JA KANTA Versio 1.0 i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2)

TESTIRAPORTTI - XMLREADER-LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 2) TESTIRAPORTTI - XMLREADER-LUOKKA Versio 1.0 (luonnos 2) Copyright Comptel Oyj i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin

Lisätiedot

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0 TESTIRAPORTTI - XMLREADER LUOKKA i Sisällysluettelo 1. YLEISTÄ 2 1.1. Dokumentin tarkoitus ja yleisiä toimintaohjeita 2 1.2. Viittaukset muihin dokumentteihin 2 2. SUORITETTAVA TESTI 3 2.1. Testauksen

Lisätiedot

DOKUMETTIENHALLINTASUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 1)

DOKUMETTIENHALLINTASUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 1) DOKUMETTIENHALLINTASUUNNITELMA Versio 1.0 (Luonnos 1) Edited by Checked by Approved by Harri Kauhanen i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. JOHDANTO 2 1.1. Dokumentin tarkoitus ja kattavuus 2 1.2.

Lisätiedot

Järjestelmäarkkitehtuuri (TK081702)

Järjestelmäarkkitehtuuri (TK081702) Järjestelmäarkkitehtuuri (TK081702) yleistyvät verkkopalveluissa Youtube Google... Avaavat pääsyn verkkopalvelun sisältöön. Rajapintojen tarjoamia tietolähteitä yhdistelemällä luodaan uusia palveluja,

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

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++? JAVA-OHJELMOINTI 3op A274615 JAVAN PERUSTEET LYHYT KERTAUS Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: http://java.sun.com/docs/books/tutorial/index.html Vesterholm, Kyppö: Java-ohjelmointi,

Lisätiedot

PILETTI. Tekninen vaatimusmäärittely. v. 0.2

PILETTI. Tekninen vaatimusmäärittely. v. 0.2 PILETTI Tekninen vaatimusmäärittely v. 0.2 2 Sisällysluettelo 1. Yleiskuvaus... 3 2. Taustajärjestelmä... 4 3. Palvelupisteiden sovellus... 4 4. Korttisovellus ja turvaratkaisu... 4 5. Rajapinnat... 5

Lisätiedot

TOIMINNALLINEN MÄÄRITTELY MS

TOIMINNALLINEN MÄÄRITTELY MS TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa

Lisätiedot

EDISTYMISRAPORTTI - PS Virtuaaliyhteisöjen muodostaminen Versio 1.0

EDISTYMISRAPORTTI - PS Virtuaaliyhteisöjen muodostaminen Versio 1.0 EDISTYMISRAPORTTI - PS Edited by Checked by Approved by Antti Tuomaala Harri Kauhanen i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. PROJEKTIN TILA 2 2. SUORITETUT TEHTÄVÄT 3 Projektisuunnitelma 3 Vaatimusmäärittely

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

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Teknillinen korkeakoulu 51 Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Versio Päiväys Tekijä Kuvaus 0.1 21.11.01 Oskari Pirttikoski Ensimmäinen versio 0.2 27.11.01 Oskari Pirttikoski Lisätty termit

Lisätiedot

13/20: Kierrätys kannattaa koodaamisessakin

13/20: Kierrätys kannattaa koodaamisessakin Ohjelmointi 1 / syksy 2007 13/20: Kierrätys kannattaa koodaamisessakin Paavo Nieminen nieminen@jyu.fi Tietotekniikan laitos Informaatioteknologian tiedekunta Jyväskylän yliopisto Ohjelmointi 1 / syksy

Lisätiedot

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3 Uutisjärjestelmä Vaatimusmäärittely Versio 1.3 Sisällys 1 Muutoshistoria... 4 2 Viitteet... 4 3 Sanasto... 4 3.1 Lyhenteet... 4 3.2 Määritelmät... 4 4 Johdanto...5 4.1 Järjestelmän yleiskuvaus... 5 4.2

Lisätiedot

Rajapinta (interface)

Rajapinta (interface) 1 Rajapinta (interface) Mikä rajapinta on? Rajapinta ja siitä toteutettu luokka Monimuotoisuus ja dynaaminen sidonta Rajapinta vs periytyminen 1 Mikä rajapinta on? Rajapintoja käytetään, kun halutaan määritellä

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Vaatimusmäärittely Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Versio Päiväys Tekijä Kuvaus 0.1 12.10.01 Pekka Koskinen Ensimmäinen luonnos 0.2 17.10.01 Pekka Koskinen Lisätty vaatimuksia

Lisätiedot

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1 3. Komponentit ja rajapinnat 3.1 Komponenttien idea: ohjelmistotuotannon rationalisointi 3.2 Mikä on ohjelmistokomponentti? 3.3 Komponentit ohjelmistoyksikköinä 3.4 Rajapinnat 3.6 Komponenttien räätälöinti

Lisätiedot

Ohjelmiston toteutussuunnitelma

Ohjelmiston toteutussuunnitelma Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,

Lisätiedot

TESTAUSSUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.1

TESTAUSSUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.1 TESTAUSSUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.1 2 DOKUMENTIN VERSIOT 4 Jakelu 4 1. JOHDANTO 5 1.1. Tarkoitus ja kattavuus 5 1.2. Tuote 5 1.3. Määritelmät, termit ja lyhenteet 5 1.4. Viitteet

Lisätiedot

Suunnitteluvaihe prosessissa

Suunnitteluvaihe prosessissa Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet

Lisätiedot

Ohjelmoinnin jatkokurssi, kurssikoe 28.4.2014

Ohjelmoinnin 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ätiedot

18. Abstraktit tietotyypit 18.1

18. Abstraktit tietotyypit 18.1 18. Abstraktit tietotyypit 18.1 Sisällys Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:

Lisätiedot

EDISTYMISRAPORTTI - T1 Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 1)

EDISTYMISRAPORTTI - T1 Virtuaaliyhteisöjen muodostaminen Versio 1.0 (luonnos 1) EDISTYMISRAPORTTI - T1 Edited by Checked by Approved by Antti Tuomaala i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. PROJEKTIN TILA 2 2. SUORITETUT TEHTÄVÄT 4 Projektisuunnitelma Vaatimusmäärittely Virhe.

Lisätiedot

Inspire-prosessin tilannekatsaus 01 / 2012

Inspire-prosessin tilannekatsaus 01 / 2012 Inspire-prosessin tilannekatsaus 01 / 2012 23.1.2012 Täytäntöönpano-ohjeet Ohje haku- ja katselupalvelujen palvelutasosäännösten tulkinnasta Latauspalvelujen ohjeiden laatiminen pitkällä Tiedostolatauspalvelu

Lisätiedot

Valppaan asennus- ja käyttöohje

Valppaan asennus- ja käyttöohje Versio Päiväys Muokkaaja Kuvaus 0.9 16.2.2006 Tuukka Laakso Korjattu versio 0.1 Antti Kettunen Alustava versio Sisällysluettelo 1 Johdanto...2 2 Valppaan asennus...3 2.1 Valppaan kääntäminen...3 2.2 Valmiiksi

Lisätiedot

Ylläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Ylläpitodokumentti Boa Open Access Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari

Lisätiedot

Sisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto

Sisällys. 18. Abstraktit tietotyypit. Johdanto. Johdanto Sisällys 18. bstraktit tietotyypit Johdanto abstrakteihin tietotyyppeihin. Pino ja jono. Linkitetty lista. Pino linkitetyllä listalla toteutettuna. 18.1 18.2 Johdanto Javan omat tietotyypit ovat jo tuttuja:

Lisätiedot

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta 21.12.200 7 Mikä on IT arkkitehtuuri? Liiketoimintamalli määrittelee IT arkkitehtuurin IT arkkitehtuuri ottaa kantaa sovelluksen laadullisiin vaatimuksiin

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

Johdatus rakenteisiin dokumentteihin

Johdatus rakenteisiin dokumentteihin -RKGDWXVUDNHQWHLVLLQGRNXPHQWWHLKLQ 5DNHQWHLQHQGRNXPHQWWL= rakenteellinen dokumentti dokumentti, jossa erotetaan toisistaan dokumentin 1)VLVlOW, 2) UDNHQQHja 3) XONRDVX(tai esitystapa) jotakin systemaattista

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op. Tietorakenneluokkia 2: HashMap, TreeMap

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op. Tietorakenneluokkia 2: HashMap, TreeMap Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Tietorakenneluokkia 2: HashMap, TreeMap Tietorakenneluokkia ja -rajapintoja Java tarjoaa laajan kokoelman tietorakennerajapintoja ja - luokkia. Aiemmin

Lisätiedot

CODEONLINE. Monni Oo- ja Java-harjoituksia. Version 1.0

CODEONLINE. Monni Oo- ja Java-harjoituksia. Version 1.0 CODEONLINE Monni Oo- ja Java-harjoituksia Version 1.0 Revision History Date Version Description Author 25.10.2000 1.0 Initial version Juha Johansson Inspection History Date Version Inspectors Approved

Lisätiedot

opiskelun suunnittelujärjestelmä, kurki ja ilmo käyttävät kaikki samaa tietokantaa, ja uusi järjestelmä tulee osaksi tätä.

opiskelun suunnittelujärjestelmä, kurki ja ilmo käyttävät kaikki samaa tietokantaa, ja uusi järjestelmä tulee osaksi tätä. 25.1.2010 Palaverin kysymyksien selvittelymuistio Mitä ominaisuuksia halutaan? Sopivat ajat sprinttien jälkeisiin demoihin/palavereihin. - mitkä ajat sopivat? Pekka : pe 12-16 Tommi : pe 8-16 Onko ohjelmointikielen

Lisätiedot

Lohtu-projekti. Ylläpitäjän dokumentti. Versiohistoria: Ensimmäinen versio Andreas Asuja

Lohtu-projekti. Ylläpitäjän dokumentti. Versiohistoria: Ensimmäinen versio Andreas Asuja Lohtu-projekti Ylläpitäjän dokumentti Versiohistoria: 1.0 12.5.2003 Ensimmäinen versio Andreas Asuja Helsinki 12. toukokuuta 2003 Kimmo Airamaa, Andreas Asuja, Mari Muuronen, Seppo Pastila, Virve Taivaljärvi

Lisätiedot

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy

Kehitysohje. ETL-työkalu. ExtraTerrestriaLs / Aureolis Oy Kehitysohje ETL-työkalu Versio Pvm Tekijä Kuvaus 0.1 15.1.2005 Timo Sallinen Ensimmäinen versio 0.2 26.1.2005 Timo Sallinen Täydenetty pohjaa 0.3 06.02.2005 Mika Suvanto Pieniä täydennyksiä ja oikolukua

Lisätiedot

Käyttöopas. ADAP-KOOL AK-ST 500 Oy Danfoss Ab / Kylmäosasto 1

Käyttöopas. ADAP-KOOL AK-ST 500 Oy Danfoss Ab / Kylmäosasto 1 Käyttöopas ADAP-KOOL AK-ST 500 Oy Danfoss Ab / Kylmäosasto 1 Periaate AK-NG järjestelmän AK SM720 tai 350 voidaan luoda yhteys kolmella eri tavalla (kts. kuva alla) Uusiin (laajennettaviin) säätimin voidaan

Lisätiedot

Tekninen suunnitelma - StatbeatMOBILE

Tekninen suunnitelma - StatbeatMOBILE Tekninen suunnitelma - StatbeatMOBILE Versio Päivämäärä Henkilö Kuvaus 1.0 13.12.2013 Pöyry Alustava rakenne ja sisältö 1.1 22.12.2013 Pöyry Lisätty tekstiä ilmoituksiin, turvallisuuteen ja sisäiseen API:in

Lisätiedot

ELM GROUP 04. Teemu Laakso Henrik Talarmo

ELM GROUP 04. Teemu Laakso Henrik Talarmo ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................

Lisätiedot

DOKUMENTTIENHALLINTASUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.1

DOKUMENTTIENHALLINTASUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.1 DOKUMENTTIENHALLINTASUUNNITELMA Versio 1.1 Edited by Checked by Approved by Harri Kauhanen Antti Tuomaala i Sisällysluettelo DOKUMENTIN VERSIOT 1 1. JOHDANTO 2 1.1. Dokumentin tarkoitus ja kattavuus 2

Lisätiedot

20. Javan omat luokat 20.1

20. Javan omat luokat 20.1 20. Javan omat luokat 20.1 Sisällys Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

ohjelman arkkitehtuurista.

ohjelman arkkitehtuurista. 1 Legacy-järjestelmällä tarkoitetaan (mahdollisesti) vanhaa, olemassa olevaa ja käyttökelpoista ohjelmistoa, joka on toteutettu käyttäen vanhoja menetelmiä ja/tai ohjelmointikieliä, joiden tuntemus yrityksessä

Lisätiedot

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang Sisällys 20. Javan omat luokat Application Programming Interface (API). Pakkaukset. Merkkijonoluokka String. Math-luokka. Kääreluokat. 20.1 20.2 Java API Java-kielen Application Programming Interface (API)

Lisätiedot

T Testiraportti - integraatiotestaus

T Testiraportti - integraatiotestaus T-76.115 Testiraportti - integraatiotestaus 16. huhtikuuta 2002 Confuse 1 Tila Versio: 1.1 Tila: Päivitetty Jakelu: Julkinen Luotu: 19.03.2002 Jani Myyry Muutettu viimeksi: 16.04.2002 Jani Myyry Versiohistoria

Lisätiedot

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Toiminnallinen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Versio Päiväys Tekijä Kuvaus 0.01 7.11.01 Pekka Koskinen Alustava sisällysluettelo 0.1 12.11.01 Pekka

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

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

Interfacing Product Data Management System

Interfacing Product Data Management System Interfacing Product Data Management System Tekijä: Työn valvoja: Mats Kuivalainen Timo Korhonen Esitelmän sisältö Työn suorituspaikka - Ideal Product Data Oy Käsitteitä Työn tavoitteet Työn tulokset 1/5

Lisätiedot

PROJEKTISUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 5)

PROJEKTISUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 5) PROJEKTISUUNNITELMA Edited by Checked by Approved by i Sisällysluettelo DOKUMENTIN VERSIOT 1 Jakelu 1 1. JOHDANTO DOKUMENTTIIN 2 1.1. Dokumentin tarkoitus ja kattavuus 2 1.2. Dokumentin sisältö 2 1.3.

Lisätiedot

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes) Kääreluokista Javan alkeistietotyypit ja vastaavat kääreluokat Autoboxing Integer-luokka Double-luokka Kääreluokista Alkeistietotyyppiset muuttujat (esimerkiksi

Lisätiedot

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group 1.10.2010 1(15) Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group Graanintie 7 Tel. + 358 15 338 800 FIN-50190 MIKKELI Fax + 358 15 338 810 VERSIOHISTORIA Versio Pvm Tekijä Selite 1.0

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Rajapinnat ja sisäluokat

Opintojakso 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ä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

T Projektikatselmus

T Projektikatselmus T-76.115 Projektikatselmus Projektityöryhmä GenCode I3-iteraatio 17.3.2004 Agenda Tavoitteiden toteutuminen (5 min) Resurssien käyttö (5 min) Iteraation tulokset (10 min) Riskit (5min) +Kokemuksia työskentelymenetelmistä

Lisätiedot

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito Henri Kinnunen, Seppo Tompuri, Tero Malkki, Matti Heiskanen, Tommi Rönkönharju, Tuomas Valkeapää Sisällysluettelo 1. Alkusanat.2 2. Asennusohje..2 3.

Lisätiedot

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi)

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Tietokannan hallinta-opintojakson selvitysraportti Huhtikuu 2010 Mediatekniikka ICT/Teknologia Tämän teosteoksen käyttöoikeutta koskee Creative

Lisätiedot

Action Request System

Action Request System Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet

Lisätiedot

Lohdutus - tietokantadokumentti

Lohdutus - tietokantadokumentti Lohdutus - tietokantadokumentti Ohjelmiston tietokanta on toteutettu Oracle-ympäristöön, ja sitä käytetään ohjelmassa Hibernaten kautta. Tietokannan rakenne Tietokannan taulujen merkitykset Taulu Project

Lisätiedot

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245

Android ohjelmointi. Mobiiliohjelmointi 2-3T5245 Android ohjelmointi Mobiiliohjelmointi 2-3T5245 Mikä on Android? Linux kernelin päälle rakennettu, Googlen kehittämä sovelluspino mobiilisovelluksiin Erillinen versio puhelimelle ja taulutietokoneille

Lisätiedot

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4) 2. Lisää Java-ohjelmoinnin alkeita Muuttuja ja viittausmuuttuja Vakio ja literaalivakio Sijoituslause Syötteen lukeminen ja Scanner-luokka 1 Muuttuja ja viittausmuuttuja (1/4) Edellä mainittiin, että String-tietotyyppi

Lisätiedot

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY

WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY 1 WWW-PALVELUN KÄYTTÖÖNOTTO LOUNEA OY 10.4.2015 Lounea Oy Tehdaskatu 6, 24100 Salo Puh. 029 707 00 Y-tunnus 0139471-8 www.lounea.fi Asiakaspalvelu 0800 303 00 Yrityspalvelu 0800 303 01 Myymälät 0800 303

Lisätiedot

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op

Opintojakso 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ätiedot

T Testiraportti - järjestelmätestaus

T Testiraportti - järjestelmätestaus T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria

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

L models. Tekninen määrittely. Ryhmä Rajoitteiset

L models. Tekninen määrittely. Ryhmä Rajoitteiset Teknillinen Korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Tekninen määrittely Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset

Lisätiedot

AJAX-konsepti AJAX. Asynkronisuus. Nykyisten web-ohjelmien ongelmia. Asynchronous JavaScript And XML

AJAX-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ätiedot

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi. 11. Rajapinnat 11.1 Sisällys Johdanto. Abstrakti luokka vai rajapinta? Rajapintojen hyötyjä. Kuinka rajapinnat määritellään ja otetaan käyttöön? Eläin, nisäkäs, kissa ja rajapinta. Moniperiytyminen rajapintojen

Lisätiedot

Harjoitus 5 (viikko 41)

Harjoitus 5 (viikko 41) Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Vältä liian pitkiä rivejä, käytä

Lisätiedot

16. Javan omat luokat 16.1

16. Javan omat luokat 16.1 16. Javan omat luokat 16.1 Sisällys Johdanto. Object-luokka: tostring-, equals-, clone- ja getclass-metodit. Comparable-rajapinta: compareto-metodi. Vector- ja ArrayList-luokat. 16.2 Javan omat luokat

Lisätiedot

15. Ohjelmoinnin tekniikkaa 15.1

15. 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ätiedot

15. Ohjelmoinnin tekniikkaa 15.1

15. 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ätiedot

Uudelleenkäytön jako kahteen

Uudelleenkäytön jako kahteen Uudelleenkäyttö Yleistä On pyritty pääsemään vakiokomponenttien käyttöön Kuitenkin vakiokomponentit yleistyneet vain rajallisilla osa-alueilla (esim. windows-käyttöliittymä) On arvioitu, että 60-80% ohjelmistosta

Lisätiedot

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen: Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Microsoft SQL käyttö Yleistä VisualStudiosta Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen: - sovellushallintaan -

Lisätiedot

Convergence of messaging

Convergence of messaging Convergence of messaging Testausdokumentti The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen

Lisätiedot

Modulaariset tietosisältömäärittelyt Tilannekatsaus

Modulaariset tietosisältömäärittelyt Tilannekatsaus Modulaariset tietosisältömäärittelyt Tilannekatsaus 24.4.2019, Kela, Kanta Järjestelmätoimittaja tapaaminen Heikki Virkkunen, OPER: 18.4.2019 Projektin osakokonaisuudet Modulaariset tietosisältömäärittelyt

Lisätiedot

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausraportti Orava Helsinki 5.5.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juhani Bergström Peter

Lisätiedot

Kansallinen ASPAtietojärjestelmä

Kansallinen ASPAtietojärjestelmä Kansallinen ASPAtietojärjestelmä Taustoitus Järjestäjien tarve yhteiselle asiakaspalautteen keräämisen järjestelmälle nousi esiin kevään selvityksessä Asiakaspalautetieto on myös osa kansallista sote-tietopohjaa

Lisätiedot

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari

Lisätiedot

Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ).

Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ). Tehtävä 1: Metodit, listat, alkuluvut (4p) Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ). Alkuluvut ovat lukuja, jotka ovat suurempia kuin yksi ja jotka ovat jaollisia

Lisätiedot

812341A Olio-ohjelmointi, IX Olioiden välisistä yhteyksistä

812341A 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ätiedot

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: Linux-harjoitus 6 Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä: http://www.mysql.com/, MySQL-tietokantaohjelman kotisivu. http://www.mysql.com/doc/en/index.html,

Lisätiedot

Java kahdessa tunnissa. Jyry Suvilehto

Java kahdessa tunnissa. Jyry Suvilehto Java kahdessa tunnissa Jyry Suvilehto Ohjelma Ohjelmointiasioita alkeista nippelitietoon n. 45 min Tauko 10 min Oliot, luokat ja muut kummajaiset n. 45 min Kysykää Sisältöä ei oikeasti ole 2x45 min täytteeksi,

Lisätiedot

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki Sisällys JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta Abstrakti luokka ja metodi Rajapintamäärittely (interface) Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 13.10.2000 E.

Lisätiedot

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys WWW-OHJELMOINTI 1 WWW-ohjelmoinnin kokonaisuus SGML, XML, HTML WWW-selaimen sovellusohjelmointi WWW-palvelimen sovellusohjelmointi Eero Hyvönen Tietojenkäsittelytieteen laitos Helsingin yliopisto 26.10.2000

Lisätiedot

Internet-pohjainen ryhmätyöympäristö

Internet-pohjainen ryhmätyöympäristö Menetelmäohje Internet-pohjainen ryhmätyöympäristö Riku Hurmalainen, 24.3.2002 Sisällysluettelo 1. Johdanto...3 2. Termit...4 3. Toteutus...5 3.1. Yleiskuvaus...5 3.2. Tekninen ratkaisu...5 3.3. Tietoturva...6

Lisätiedot

Yhteentoimivuutta edistävien työkalujen kehittäminen

Yhteentoimivuutta edistävien työkalujen kehittäminen Yhteentoimivuutta edistävien työkalujen kehittäminen Semantiikkaa organisaatioiden välisen tiedonvaihdon helpottamiseksi Mikael af Hällström, Verohallinto Esityksen sisältö Taustatekijöitä (OKM:n hallinnonala,

Lisätiedot

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5 Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät tekniset ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida

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

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää

Lisätiedot