Suunnitteludokumentti
|
|
- Leena Lattu
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Suunnitteludokumentti Kaapo - Kaavioiden piirto-ohjelma Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
2 Kurssi Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilari Heikkinen Allan Holsti Tero Kallioinen Kristian Ovaska Mikko Paltamaa Hannu-Pekka Rajaniemi Asiakas Inkeri Verkamo Johtoryhmä Juha Taina Sampo Yrjänäinen Kotisivu Versiohistoria Versio Päiväys Tehdyt muutokset Jäädytetty versio Tarkastuksen korjaukset tehty Tarkastettava versio Lisätty kaikkea Dokumentti luotu
3 Sisältö 1 Johdanto Terminologiaa Dokumentin rakenne Arkkitehtuurin kuvaus Arkkitehtuurikaavio Päätoimintojen kuvaukset Kaavion luonti, avaaminen ja tallentaminen Elementin lisääminen kaavioon Elementtien valitseminen, liikuttaminen ja poistaminen Elementin koon sekä elementtien ja yhteyksien attribuuttien arvojen muuttaminen Yhteyden lisääminen kaavioon Kaavioiden välillä liikkuminen Pääkomponenttien rajapinnat Komponentit Project Project ProjectComponent DiagramComponent Diagram DiagramWrapper Element Connection DiagramComponentWrapper ElementWrapper ConnectionWrapper ProjectManager ProjectManager Selection Project UndoManager i
4 3.3 Command UndoableEdit AbstractUndoableEdit AbstractUndoableDComponentEdit CompoundEdit UndoManager AddDComponentEdit RemoveDComponentEdit MoveDComponentEdit ModifyDComponentAttributeEdit MoveConnectionPointEdit ResizeElementEdit RemoveDiagramEdit Edit AbstractEdit SelectionEdit ChangeVisibleEdit NewDiagramEdit TypeManager TypeManager diagrams diagramcomponents FileManager FileManager ObjectSaver ObjectLoader ExportPlugin ComponentNotSupportedException Käyttöliittymäkuvaus Perustyökaluvalikot Kaaviokohtaiset työkalut Projektin elementti- ja kaaviopuu Piirtoalusta ii
5 4.5 Attribuuttipaneeli Testaussuunnitelma Testausstrategia Testauksen vaiheet Yksikkötestaus Integrointitestaus Järjestelmätestaus Testaamatta jäävä toiminnallisuus Testausympäristö Liitteet 1 Laajennetut käyttötapaukset iii
6 1 Johdanto Oops on Helsingin yliopiston tietojenkäsittelytieteen laitoksen ohjelmistotuotantoryhmä. Tämä on ryhmän toteuttaman geneerisen kaavioiden piirto-ohjelmiston, Kaapon, suunnitteludokumentti. Dokumentissa esitellään järjestelmän komponentit rajapintoineen, kuvataan käyttöliittymä sekä esitellään testaussuunnitelma. Projektiin liittyvä materiaali on saatavissa ryhmän kotisivulta osoitteesta Terminologiaa Kääre (wrapper) Kaavion ilmentymä kaaviopuussa tai elementin tai yhteyden ilmentymä kaaviossa. GUI Graphical User Interface, graafinen käyttöliittymä. Tässä dokumentissa tarkoittaa käyttöliittymän tarjoavaa pääkomponenttia. Pääkomponentti Ohjelmiston osakokonaisuus, jolla on selkeä tehtävänrajaus, mutta joka ei kuitenkaan ole täysin itsenäinen kokonaisuus (osajärjestelmä). Pääkomponentti voi jakautua komponentteihinsa tai suoraan luokkiinsa. 1.2 Dokumentin rakenne Tässä luvussa, eli luvussa 1 on lyhyt kuvaus projektista, dokumentin termistö ja dokumentin rakenne. Luvussa 2 on esitelty ohjelmiston arkkitehtuuri arkkitehtuurikaavion ja pääkomponenttien rajapintojen muodossa. Lisäksi luvussa on kerrottu päätoimintojen kuvaukset sanallisessa ja sekvenssikaavioiden muodossa. Seuraavassa luvussa, eli luvussa 3 pääkomponentit on esitelty luokkakaavioiden ja -kuvausten tasolla. Käyttöliittymä on kuvattu luvussa 4, testaussuunnitelma luvussa 5 ja siihen liittyvät laajennetut käyttötapaukset luvussa liitteessä 1. 1
7 2 Arkkitehtuurin kuvaus Tässä luvussa esitellään ohjelmiston arkkitehtuuri arkkitehtuurikaavion ja osajärjestelmien rajapintojen muodossa. Lisäksi luvussa on kuvattu päätoimintojen läpivienti sanallisesti ja sekvenssikaavioiden avulla. 2.1 Arkkitehtuurikaavio Kuva 1: Arkkitehtuurikaavio 2.2 Päätoimintojen kuvaukset Seuraavassa on kuvattu ohjelmiston päätoimintojen läpivienti arkkitehtuurin tasolla. Lisäksi liitteessä 1 on esitetty toimintoja tarkemmin kuvaavat sekvenssikaaviot Kaavion luonti, avaaminen ja tallentaminen Uutta kaaviota luotaessa käyttöliittymä tarjoaa käyttäjän valittavaksi kaaviotyypit, jotka tyyppienhallinta on selvittänyt. Kun käyttäjä on valinnut kaaviotyypin, käyttöliittymä luo sopivan Edit-olion ja välittää sen projektinhallinnalle suoritettavaksi. Lopuksi käyttöliittymä päivittää työkalupalkkinsa vastaamaan kyseisen kaaviotyypin elementti- ja yhteysvalikoimaa. Kaaviot tallennetaan ja avataan projekteittain ja näistä toiminnoista huolehtii 2
8 tiedostonhallintakomponentti jolle käyttöliittymä välittää projektiolion ja tiedostonimen ja -polun. Uuden kaavion lisääminen projektiin. GUI ProjectManager <<Edit>> NewDiagram Project executeedit(edit) execute() getproject() Project adddiagram(parent.getdiagram(), prevsibling.getdiagram()) DiagramWrapper refresh() setvisiblediagram(diagramwrapper) Kuva 2: Kaavion lisääminen projektiin Elementin lisääminen kaavioon Käyttöliittymä sisältää kyseisen projektin edustamaan kaaviotyyppiin liittyvät elementtipainikkeet työkaluriviltään. Valittaessa jokin näistä painikkeista ja klikattaessa piirtoalustalle, käyttöliittymä luo lisäyksestä sopivan UndoableEdit-olion ja välittää sen projektinhallinnalle, joka taas suorituttaa olion ja välittää sen mahdollista Undo-toimintoa varten UndoManagerille Elementtien valitseminen, liikuttaminen ja poistaminen Kun piirtoalustalle klikataan tai vedetään hiirellä, käyttöliittymä projektinhallinnan avulla selvittää, oliko klikkaus- tai vetoalueella elementtejä. Jos klikkaus tai alueen valinta osui elementtiin, luodaan projektinhallinnassa Selection-olio ja tällöin kaikki muutokset, kuten liikuttamiset ja poistamiset kohdistuvat valittuihin elementteihin. Lisäksi käyttöliittymä piirtää valittujen elementtien ympärille valintaa korostavat kehykset. Jos valittuna on vain yksi elementti, käyttöliittymä kysyy elementiltä sille ominaista attribuuttipaneelia ja esittää sen. Kun elementti on valittu, se voidaan vetää hiirellä eri kohtaan piirtoalustaa. Tässä käyttöliittymä luo sopivan UndoableEdit-olion ja välittää sen projektinhallinnalle. Projektin- 3
9 Uuden komponentin lisääminen avoinna olevaan kaavioon GUI ProjectManager <<UndoableEdit>> AddDComponentEdit Project DiagramWrapper Diagram executeedit(undoableedit) execute() getproject(), getvisiblediagram() Project, DiagramWrapper getdiagram() Diagram adddiagramcomponent(diagramcomponent) addcomponent(diagramcomponentwrapper) addedit(undoableedit) refresh() Kuva 3: Elementin lisääminen hallinta suorituttaa olion ja lisää sen UndoManagerin peruutusjonoon. UndoableEdit-olio itsessään tietää kuinka sen suoritus tapahtuu ja tekee tarvittavat kutsut projektin tietorakenteeseen. Valittu elementti voidaan myös poistaa. Tässä proseduuri on samankaltainen kuin liikuttamisessa Elementin koon sekä elementtien ja yhteyksien attribuuttien arvojen muuttaminen Kun piirtoalustalla oleva elementti on valittu, käyttöliittymä piirtää sen ympärille "kahvat", joista hiirellä vetämällä elementin kokoa voi muuttaa. Tällöin käyttöliittymä luo sopivan UndoableEdit-olion, jonka projektinhallinta suorituttaa ja lisää peruutettavien tapahtumien jonoon UndoManageriin. Kun piirtoalustalla oleva yksittäinen elementti tai yhteys on valittu, käyttöliittymä pyytää elementiltä siihen liittyvät attribuuttipaneelin. Attribuuttien arvojen muuttaminen tapahtuu paneelin tekstikenttiä muuttamalla ja kun muutos on valmis, projekti luo sopivan UndoableEdit-olio, joka suoritetaan projektinhallinnassa. 4
10 Elementin valinta GUI ProjectManager FocusEdit DiagramWrapper Diagram executeedit(edit) execute() selectelementbyclick(point) getdiagram() Diagram getdiagramcomponentwrappers() List<DiagramComponentWrappers> for each in List<DCW> check if Point in DC refresh() returns Selection Kuva 4: Elementin valitseminen Komponentin / komponenttijoukon poistaminen kaaviosta <<UndoableEdit>> GUI ProjectManager RemoveDComponentEdit DiagramWrapper Diagram Project executeedit(undoableedit) execute() getproject(), getvisiblediagram() Project, DiagramWrapper getdiagram() Diagram getdiagramcomponentwrappers() List<DiagramComponentWrappers> for each DiagramComponentWrapper in Selection removecomponent(diagramcomponentwrapper) refresh() addedit(undoableedit) containsdiagramcomponent(diagramcomponent) boolean Kuva 5: Elementin poistaminen 5
11 Kaavion elementin attribuutin muokkaaminen GUI ProjectManager ModifyDComponentAttributeEdit DiagramComponentWrapper DiagramComponent executeedit(undoableedit) execute() getselection() Selection addedit(undoableedit) getdiagramcomponent() DiagramComponent getattribute(attribute: String) original: Object setattribute(attribute: String, change: Object) refresh() Kuva 6: Attribuuttien muuttaminen Yhteyden lisääminen kaavioon Yhteyden lisääminen tapahtuu pääpiirteissään kuten elementinkin. Kun työkaluriviltä on valittu yhteys, käyttäjä valitsee klikkauksilla yhteyden jäsenet. Tällöin luodaan sopiva UndoableEdit-olio, joka suoritetaan projektinhallinnan toimesta Kaavioiden välillä liikkuminen Eri projektien välillä liikkuminen tapahtuu valitsemalla käyttöliittymän kaaviopuusta haluttu kaavio. Valinnasta luodaan Edit-olio, joka suoritetaan projektinhallinnassa ja suorituksen yhteydessä projektinhallinta päivittää näkyvän kaavion kenttänsä. Lopuksi käyttöliittymä piirtää valitun kaavion. 6
12 2.3 Pääkomponenttien rajapinnat Pääkomponentin nimi FileManager (tiedostotoiminnot) Kuvaus Sisältää tiedostojen käsittelyyn liittyvät toiminnot, joita käyttöliittymä kutsuu. Palvelut Palvelun nimi saveproject Palvelun kuvaus Avaa parametrina annetun tiedoston ja kirjoittaa projektin tiedot siihen. Sisäänotettavat parametrit file : File, project : Project Ulos annettavat tulokset - Poikkeustilanteet IOException Alkuehdot - Loppuehdot Project-olio tallennettu tiedostoon Palvelun nimi openproject Palvelun kuvaus Avaa parametrina annetun tiedoston ja lukee projektin tiedot siitä. Sisäänotettavat parametrit file : File Ulos annettavat tulokset Project Poikkeustilanteet ClassNotFoundException Alkuehdot Tiedosto on olemassa ja oikean tyyppinen Loppuehdot - Palvelun nimi exportproject Palvelun kuvaus Vie projektin tiedostoon käyttäen parametrina annettua tiedostonimeä ja laajennosta. Sisäänotettavat parametrit file : File, plugin : ExportPlugin, project : Project Ulos annettavat tulokset - Poikkeustilanteet IOException Alkuehdot - Loppuehdot Project-olio viety tiedostoon Palvelun nimi getexportplugins Palvelun kuvaus Palauttaa listan järjestelmään asennetuista vientilaajennoksista. Sisäänotettavat parametrit - Ulos annettavat tulokset List<ExportPlugin> Poikkeustilanteet - Alkuehdot - Loppuehdot - 7
13 Pääkomponentin nimi ExportPlugin (vientilaajennokset) Kuvaus Rajapinta vientilaajennoksille. Palvelut Palvelun nimi getname Palvelun kuvaus Palauttaa laajennoksen nimen. Sisäänotettavat parametrit - Ulos annettavat tulokset String Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi getfileextension Palvelun kuvaus Palauttaa laajennoksen tiedostomuodon tiedostopäätteen. Sisäänotettavat parametrit - Ulos annettavat tulokset String Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi export Palvelun kuvaus Vie projektin soveltuvat tiedot tiedostoon jossain määrätyssä esitysmuodossa. Sisäänotettavat parametrit file : File, project : Project Ulos annettavat tulokset - Poikkeustilanteet IOException Alkuehdot - Loppuehdot - Pääkomponentin nimi ProjectManager (projektin hallinta) Kuvaus Sisältää projektin muokkaamiseen liittyvät palvelut, joita käyttöliittymä kutsuu. Palvelut Palvelun nimi getproject Palvelun kuvaus Palauttaa avoinna olevan projektin esim. tallennusta varten. Sisäänotettavat parametrit - Ulos annettavat tulokset project : Project Poikkeustilanteet - Alkuehdot - Loppuehdot - 8
14 Palvelun nimi executeedit Palvelun kuvaus Suorittaa parametrina annetun editointikomennon projektille. Sisäänotettavat parametrit edit : Edit Ulos annettavat tulokset true jos käsky suoritettiin, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot Projektin tila on muuttunut Palvelun nimi executeedit Palvelun kuvaus Suorittaa parametrina annetun editointikomennon projektille, komento on myöhemmin kumottavissa. Sisäänotettavat parametrit edit : UndoableEdit Ulos annettavat tulokset true jos käsky suoritettiin, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot Projektin tila on muuttunut Palvelun nimi undo Palvelun kuvaus Palauttaa projektin historiassa edeltäneeseen tilaan, mikäli sellainen on. Sisäänotettavat parametrit - Ulos annettavat tulokset true jos edeltävään tilaan voidaan palata, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot Edellinen toiminto kumottu Palvelun nimi canundo Palvelun kuvaus Palauttaa tiedon siitä, voidaanko palata historiassa edeltäneeseen tilaan. Sisäänotettavat parametrit - Ulos annettavat tulokset true jos voidaan, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi redo Palvelun kuvaus Palauttaa projektin peruutusta edeltävään tilaan, mikäli sellainen on. Sisäänotettavat parametrit - Ulos annettavat tulokset true jos edeltävään tilaan voidaan palata, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot Edellinen peruutus kumottu 9
15 Palvelun nimi canredo Palvelun kuvaus Palauttaa tiedon siitä, voidaanko edetä historiassa seuraavaan tilaan. Sisäänotettavat parametrit - Ulos annettavat tulokset true jos voidaan, muuten false Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi setvisiblediagram Palvelun kuvaus Asettaa kaavio-olion näkyvään tilaan Sisäänotettavat parametrit diagram : DiagramWrapper Ulos annettavat tulokset - Poikkeustilanteet DiagramException: kaavio ei kuulu projektiin Alkuehdot Projektissa on vähintään yksi kaavio Loppuehdot - Palvelun nimi getvisiblediagram Palvelun kuvaus Palauttaa näkyvissä olevan kaavion Sisäänotettavat parametrit - Ulos annettavat tulokset DiagramWrapper Poikkeustilanteet - Alkuehdot Projektissa on vähintään yksi kaavio Loppuehdot - Palvelun nimi setselection Palvelun kuvaus Ottaa muistiin viimeksi valittujen elemettien listan Sisäänotettavat parametrit selection : Selection Ulos annettavat tulokset - Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi getselection Palvelun kuvaus Palauttaa valitut elementit sisältävän Selectionolion Sisäänotettavat parametrit - Ulos annettavat tulokset Selection Poikkeustilanteet - Alkuehdot - Loppuehdot - 10
16 Pääkomponentin nimi TypeManager (tyyppien hallinta) Kuvaus Sisältää kaavio-, elementti- ja yhteystyyppien hallintaan liittyvät palvelut. Palvelut Palvelun nimi getdiagrams Palvelun kuvaus Palauttaa järjestelmässä käytettävissä olevat kaaviotyyppien luokat Sisäänotettavat parametrit - Ulos annettavat tulokset List<Class> Poikkeustilanteet - Alkuehdot - Loppuehdot - Palvelun nimi getdiagramcomponents Palvelun kuvaus Palauttaa järjestelmän käytettävissä olevat elementti- ja yhteysluokat Sisäänotettavat parametrit - Ulos annettavat tulokset List<Class> Poikkeustilanteet - Alkuehdot - Loppuehdot - 11
17 3 Komponentit Luvussa esitellään ohjelman pääkomponentit. Kustakin komponentista on kuvaus, luokkakaavio ja lyhyet luokkien kuvaukset. 3.1 Project Kuva 7: Project-luokkakaavio Project on tietorakennekomponentti, joka sisältää projektin kaaviot, elementit ja yhteydet. Pakkauksen luokat ProjectComponent, DiagramComponent ja Diagram sisältävät myös käyttöliittymätason toimintoja. Loogisella tasolla projekti koostuu joukosta kaavioita (luokka Diagram), joukosta elementtejä ja yhteyksiä (luokka DiagramComponent ja sen aliluokat Element ja Connection) sekä kaaviopuusta (luokka DiagramWrapper). 12
18 Kaaviopuu on kaavioiden muodostama puumainen hierarkia, jossa ensimmäisellä tasolla on projektin päätason kaaviot ja kunkin kaavion alikaaviot ovat vanhempansa lapsisolmuja. Projekti-tietorakenteen kaaviopuu poikkeaa hieman käyttöliittymän kaaviopuusta (kts. luku 4): käyttöliittymä piirtää kaaviopuuhun myös kaavioiden elementit, mutta projektitietorakenteen kaaviopuussa on solmuina vain kaavioita. Kaavion elementteihin luonnollisesti päästään käsiksi kaavio-olion kautta. Sekä kaaviot, elementit että yhteydet voivat esiintyä projektissa useaan kertaan, tämän vuoksi käytetään kääreluokkia (wrapper). Kaavio voi esiintyä projektissa useaan kertaan, jos se kuuluu kaaviopuuhun moneen kertaan. Elementti tai yhteys voi kuulua useaan kaavioon ja myös moneen kertaan samaan kaavioon. Projektiin kuuluu siis kutakin kaaviota, elementtiä ja yhteyttä kohti yksi Diagram- tai DiagramComponent-luokan olio ja yksi tai useampi DiagramWrapper- tai DiagramComponentWrapper-luokan olio. Project-komponentti huolehtii itse tietorakenteen lisäksi kaavioiden, elementtien ja yhteyksien graafisesta esityksestä. Kaavio esitetään piirtoalustalla JPanel-luokan oliona (metodi Diagram.getJPanel) ja elementit sekä yhteydet esitetään JComponent-luokan olioina (metodi DiagramComponent.getJComponent). Lisäksi kaaviot, elementit ja yhteydet palauttavat attribuuttipaneelin JPanel-oliona. Kaikki luokat toteuttavat Serializable-rajapinnan Project Project on koosteluokka, joka sisältää projektin kaaviot ja elementit. Project-olioon voi lisätä kaavion tiettyyn kohtaan kaaviopuussa ja poistaa kaavioita sekä pyytää kaaviopuutietorakenteen ProjectComponent Kaavioiden, yhteyksien ja elementtien yhteinen yliluokka. Luokan instansseilla on attribuuttikartta, joka sisältää avain-arvo pareja. Attribuutin avaimet ovat merkkijonoja ja arvot voivat olla mielivaltaisia olioita DiagramComponent Elementtien ja yhteyksien yhteinen yliluokka. DiagramComponent-olio osaa palauttaa käyttöliittymäkomponentin (getjcomponent) sekä kertoa kaaviokomponentin ulkoreunat (getborder), joita voi käyttää esim. yhteyspisteinä Diagram Kaavioiden yliluokka, josta kaikki konkreettiset kaaviotyypit perivät. Kaavio koostuu joukosta elementtien ja yhteyksien kääreitä (luokka DiagramComponentWrapper). Niitä voi 13
19 lisätä ja poistaa kaaviosta. Kaavioluokka osaa myös kertoa, mitä elementtejä siihen voi syntaksisääntöjen puitteissa lisätä. Luokan metodi addcomponent() ei kuitenkaan estä vääränlaistenkaan elementtien lisäämistä DiagramWrapper Luokka kuvaa kaavion tietyn esiintymän eli solmun kaaviopuussa. DiagramWrapper-oliot ovat puun solmuja, jotka tietävät vanhempansa ja lapsensa. Sama kaavio voi kuulua kaaviopuuhun useaan kertaan, jolloin puussa on useita vastaavia DiagramWrapper-luokan olioita Element Elementtien abstrakti yliluokka. Konkreettiset elementtityypit perivät tämän luokan Connection Yhteyksien abstrakti yliluokka. Konkreettiset yhteystyypit perivät tämän luokan DiagramComponentWrapper Elementtien ja yhteyksien kääreluokkien yliluokka. Kääre kuvaa elementin tai yhteyden tietyn esiintymän jossakin kaaviossa. Elementti voi kuulua useaan kaavioon (tai monta kertaa samaan kaavioon), jolloin sitä vastaavia kääreolioita on useita. Kääre sisältää sellaiset elementtiin liittyvät tiedot, jotka ovat kaaviokohtaisia. Esimerkiksi koko, sijainti sekä yhteyksien alku- ja loppupisteet voivat vaihdella elementin eri ilmentymissä eri kaavioissa. Yhteiset arvot, kuten elementin attribuutit, ovat Element- tai Connection-luokan oliossa, joita on vain yksi projektia kohden ElementWrapper Konkreettinen luokka elementtien kääreille ConnectionWrapper Konkreettinen luokka yhteyksien kääreille. Metodi getpath() palauttaa taulukon x- ja y- koordinaatteja, jotka kuvaavat yhteysviivan kulun kaaviossa. 14
20 3.2 ProjectManager Kuva 8: ProjectManager -luokkakaavio ProjectManager eli projektinhallinta on komponentti, joka toimii käyttöliittymän ja projektin tietorakenteen välissä hallintajärjestelmänä. Sen tehtäviin kuuluu käyttöliittymässä luotujen editointiolioiden suorittaminen ja komentojen tarvitsemien tietorakenneviitausten tarjoaminen. ProjectManager myös ylläpitää tilatietoa editoinnin kohteena olevasta kaaviosta ja editoinnin kohteena olevista elementeistä (Selection) ProjectManager Komponentin pääluokka, joka rajapintansa kautta tarjoaa kaikki komponentin palvelut Selection Luokka Selection kuvaa editoitavan kaavion valittuna olevia elementtejä Project Viittaus projektin tietorakenteeseen. Katso komponentti Project. 15
21 3.2.4 UndoManager Viittaus UndoManager-olioon, joka liittyy peruutustoiminnon mahdollistavaan Commandosakomponenttiin. Kts. Command-komponentti. 3.3 Command Command-alikomponentin ideana on saada aikaiseksi yksinkertainen rajapinta käyttöliittymän ja ProjectManagerin väliin sekä mahdollistaa undo- ja redo-toimintojen toteutus. Kun käyttäjä on määrittänyt jonkin kaaviota muokkaavan toiminnon GUI muodostaa siitä sopivan UndoableEdit-rajapinnan toteuttavan muokkausolion, jonka se antaa projectmanagerille. ProjectManager käynnistää toiminnon suorittamisen ja tämän jälkeen tallentaa toiminnon (mikäli tämä on Undoable) sisältämäänsä UndoManager-luokkaan. Lisäksi komennoille, jotka eivät itsessään muokkaa kaaviota ja eivät täten ole peruutettavissa tai uudelleensuoritettaessa on oma Edit-luokkansa UndoableEdit Javan rajapintaluokka getpresentationname-metodit. Rajapintaa käytetään piiloittamaan yksittäisten komentojen tarkempi tyyppi ProjectManagerissa AbstractUndoableEdit Luokka toteuteuttaa UndoableEdit-rajapinnan määrittelemät metodit sekä Serializablerajapinnan. Jokaisen toteutetun peruutettavissa olevan toiminnon yläluokka AbstractUndoableDComponentEdit Luokka lisää jokaisessa UndoableEditissä tarvittavat omat metodit ja muuttujat CompoundEdit Luokkaa käytetään kasaamaan useista eri UndoableEditeistä suurempia kokonaisuuksia UndoManager UndoableEdit-luokan erikoistapaus, johon sisällytetään suoritetut komennot. Luokka hallinnoi sisällään undo- ja redo-jonoissa sille annettuja komentoja ja näiden vastaavia metodeja kutsutaan tämän luokan instanssin kautta. 16
22 Kuva 9: Command -luokkakaavio 17
23 3.3.6 AddDComponentEdit Komento, joka suoritettaessa lisää hiirellä määriteltyyn paikkaan kaavioon uuden halutunlaisen komponentin RemoveDComponentEdit Komento, jolla poistetaan kaaviosta halutut elementit. Komentoa peruutettaessa lisää poisteut DiagramComponentWrapperit kaavion listaan MoveDComponentEdit Komento, jolla liikutetaan kaavion elementtejä ModifyDComponentAttributeEdit Komento, jolla muokataan jonkin komponentin attribuutteja MoveConnectionPointEdit Komento, jolla liikutetaan yhteyden eri pisteitä päädyistä tai väliltä ResizeElementEdit Komento, jolla muutetaan kaavioelementin kokoa. Ei käytetä yhteyksien muokkaamiseen RemoveDiagramEdit Komento, jolla poistetaan projektista kaavio Edit Peruuttamattomien komentojen rajapintaluokka. Vaatii sitä toteuttavilta luokilta komennon execute toteuttamista AbstractEdit Peruuttamattomien komentojen abstrakti yläluokka, jossa määritellään jokaiseen aliluokkaan kuuluvaksi muuttujaksi viittaus ProjectManager-olioon. 18
24 SelectionEdit Komento, jolla valitaan hiirellä määritellyltä alueelta fokus kaikkiin siihen kuuluviin elementteihin ChangeVisibleEdit Komento, jolla vaihdetaan näkyvä kaavio toiseksi NewDiagramEdit Komento, jolla luodaan uusi kaavio projektiin. 3.4 TypeManager Kuva 10: TypeManager -luokkakaavio TypeManager-luokkaa kutsutaan ohjelman lataamisen yhteydessä ennen kuin käyttöliittymä luodaan. Kuitenkin luokkaa kutsuu käyttöliittymä. Käyttöliitymä kutsuu luokan metodeja getdiagramtypes() ja getdiagramcomponents(). getdiagramtypes()-metodi palauttaa käyttöliittymälle listauksen käytettävissä olevista kaaviotyypeistä, joista käyttöliittymä luo esityksen ruudulle ja samalla myös kykenee lataamaan luokan tarvittaessa käyttöönsä. getdiagramcomponents()-metodilla käyttöliittymä pyytää käytettävissä olevat elementit ja yhteydet. Samastaan listasta käyttöliittymä voi tarvittaessa ladata käyttöönsä sopivat elementit ja yhteydet. TypeManager-luokka toteutta listan tuottamisen tutkimalla pakkausten sisältöä TypeManager Hakee tiedostojärjestelmästä pakkauksiin asennetut kaavio- ja elementtityypit ohjelman käyttöön. Palauttaa kutsujalle listan kaavio- tai elementtiluokista. Komponenttia käyttää GUI. Luokka muodostaa listaukset tutkimalla pakkauksiin asennettuja luokkia. Se kerää 19
25 kaikki.class-päätteiset tiedostot ja muodostaa niistä Class-olioita, jotka se lisää linkitettyyn listaan. Listan toteutuksessa hyödynnetään Javan tarjoamaa geneerisyyttä varmistamaan jo käännösaikaisesti, etteivät listan objektit voi olla muuta muotoa kuin Classolioita diagrams Pakkaus sisältää ohjelmassa käytettävissä olevat kaaviotyypit diagramcomponents Pakkaus sisältää ohjelmassa käytettävissä olevat kaaviokomponentit eli yhteydet ja elementit. 3.5 FileManager Kuva 11: FileManager -luokkakaavio 20
26 FileManager-luokkaa kutsuu käyttöliittymä, kun se haluaa tallentaa projektin tai avata tallennetun projektin. Käyttöliittymä kutsuu sitä myös saadakseen tiedon järjestelmään asennetuista vientilaajennoksista. Tallennettaessa projektia käyttöliittymä näyttää käyttäjälle tiedostovalintaikkunan, jolla käyttäjä määrittelee tiedoston nimen ja sijainnin. Dialogin Tallenna-painikkeen painamisen jälkeen kutsutaan FileManagerin metodia saveproject(), jolle annetaan parametrina tiedosto ja projekti. Avattaessa tallennettua projektia käyttöliittymä näyttää tiedostonvalintaikkunan, jolla käyttäjä voi valita avattavan tiedoston. Dialogin Avaa-painikkeen painamisen jälkeen kutsutaan FileManagerin metodia openproject(), jolle annetaan parametrina valittu tiedosto. Metodi palauttaa käyttöliittymälle uuden Project-olion. Vientiliitännäisten kanssa toimitaan samoin, eli käyttöliittymä huolehtii tiedoston valitsemisesta ja tarvittavien parametrien hankinnasta. Dialogin Vie-painikkeen painaminen johtaa exportproject()-metodin kutsumiseen valitulla tiedostonimellä ja viemiseen käytettävällä liitännäisellä. FileManager osaa myös antaa listan kaikista järjestelmään asennetuista vientiliitännäisistä FileManager Avaa ja tallentaa Project-olion parametrina annetulla tiedostonimellä. Lisäksi luokka sisältää palvelut projektin vientiin käyttäen jotakin järjestelmään liitettyä vientiliitännäistä sekä järjestelmään liitettyjen vientiliitännäisten listaukseen. Käyttää tallentamiseen ja avaamiseen ObjectSaver- ja ObjectLoader-luokkia sekä järjestelmään asennettuja vientilaajennoksia ObjectSaver Luokka Javan serialization-tallennustavan paketointiin. Sisältää metodin objektin tallentamiseen tallennusmedialle ObjectLoader Luokka Javan serialization-tallennustavan paketointiin. Sisältää metodin objektin lataamiseen tallennusmedialta ExportPlugin Abstrakti yliluokka järjestelmään lisättäville vientiliitännäisille. Sisältää abstraktin metodin viemiseen sekä metodit tiedostopäätteen ja vientityypin nimen selvittämiseen ComponentNotSupportedException Poikkeus, joka heitetään, jos liitännäinen ei pysty käsittelemään projektiin liittyvää oliota. 21
27 4 Käyttöliittymäkuvaus Kuvassa 4 on kuvattu Kaapo-järjestelmän alustava käyttöliittymä ja sen eri osa-alueet. Kuvassa osa-alueet on rajattu ja numeroitu. Käyttöliittymähahmotelma perustuu vaatimusmäärittelyssä laadittuun käyttöliittymäprototyyppiin (kts. Vaatimusdokumentti). Kuva 12: Käyttöliittymähahmotelma 4.1 Perustyökaluvalikot Perustyökaluvalikko sisältää toiminnot, joilla on voidaan luoda projektiin uusia kaavioita. Valioissa on myös toiminnot valintojen tekemiseen, elementtien poistamiseen ja tekstin lisäämiseen kaavioon. Valikon toiminnot ovat käytettävissä kaikissa kaaviotyypeissä. (kts. kuva: alue 1.) Select-näppäimen painaminen valitsee työkaluksi valinnan, eli hiiren kursori muuttuu kun se viedään piirtoalueelle. Valinta tapahtuma syntyy vasta kun hiiren painike nousee ylös piirtoalustalla ja valinta oli päällä. Toiminto toteutetaan PprojectManager-luokan metodeilla selectelementbyclick(point:point) tai selectelementsbyarea(startpoint:point,endpoint:point), jotka molemmat palauttavat Selection-olion. Text-painikkeen painaminen valitsee teksti työkalun käyttöön, eli jos hiiri viedään nyt piirtoalueelle niin sen kursori muuttuu. Jos hiiri on piirtoalueella ja sillä klikataan niin se 22
28 luo kaavioon uuden tekstikentän. Jos jotain on valittuna ja painetaan Delete-painiketta, valittu objekti poistetaan projektista. Valittu elementti saadaan ProjectManager-luokalta getselection()-palvelulla. Poisto tapahtuu joko Project-luokan palvelulla removediagram(d:diagram), jos poistettavana on kaavio tai Diagram-luokan metodilla removecomponent(dcw:diagramcomponentwrapper). Diagram-olion saa kysymällä Project-luokalta getvisiblediagram(). Käyttöliittymän luonnin yhteydessä muodostetaan lista käytettävissä olevista kaaviotyypeistä pudotusvalikkoon. Lista saadaa kutsumalla TypeManager-luokan palvelua getdiagramtypes(). Listan saadaan nimet kun pyydetään saadusta class-olioita sisältävästä listasta kaikkien luokkien nimet. New Diargam -painikkeen painaminen aiheuttaa tapahtuman, jossa projektiin luodaan uusi kaavio, joka on sitä tyyppiä, joka oli valittuna pudotusvalikosta. Toiminnon toteuttamiseksi käyttöliittymä pyytää ProjectManager-luokalta palvelua getproject(), joka palauttaa Project-olion. Tältä käyttöliittymä pyytää adddiagram(d:diagram,parent:diagram,prevsibling:diagram) -palvelua. Parametrien toteuttamiseksi käyttöliittymä luo uuden Diagram-olion. Kun tiedot ovat selvillä se pyytää palvelun ja kaavio lisätään projektiin. 4.2 Kaaviokohtaiset työkalut Työkalupakki sisältää avoinna olevan kaavion muokkaamiseen käytettävissä olevat työkalut, eli se sisältää mahdolliset yhteydet ja elementit. (kts. kuva: alue 2.) Muodostaakseen kaaviokohtaisen työkalupalkin, käyttöliittymän tarvitsee pyytää ProjectManager-luokalta getvisiblediagram()-palvelua. Tällä käyttöliittymä saa käyttöönsä näkyvän kaavion DiagramWrapper-olion, jolta se voi kysyä Diagram-olion ja siltä edelleen listan sallituista työkaluista. Tämän listan se saa käyttöönsä getlegaldiagramcomponents()- palvelulla. Lista sisältää työkalut Class-olioina. Seuraavaksi käyttöliittymä lataa tarvitut luokat ja muodostaa nappulat. Nappuloihin se saa ikonit pyytämällä getlargeicon()- palvelua, joka sijaitsee ProjectComponent-luokassa. Käyttöliittymä luo JButtonit ja lisää ne valikkoon. 4.3 Projektin elementti- ja kaaviopuu Paneeli sisältää puuesityksen kaikista projektiin kuuluvista kaavioista ja niiden elementeistä. Puusta voidaan valita näkyvä kaavio samoin kuin siitä voidaan valita elementtejä. (kts. kuva: alue 3.) Kun uusi projekti luodaan tai vanha avataan, paneeliin muodostetaan uusi puu projektiin kuuluvista kaavioista. Puuna käyteetään JTree-elementtiä. Käyttöliittymä hankkii tiedot esityksen luomiseksi pyytämällä ProjectManager-luokalta palvelua getproject(), joka palauttaa Project-olion käyttöliittymän käyttöön. Tältä käyttöliittymä pyyttää projekttiin kuuluvia kaavioita, elementtejä ja yhteyksiä. Ne se saa kutsumalla palvelua getdiagramwrappers(), joka palauttaa listan ylimmän tason DiagramWapper-olioista. Näistä 23
29 voidaan muodostaa puun kaavioiden hierarkian ylin taso. Alikaaviot saadaan pyytämällä jokaiselle Wrapper-oliolle getchildren(). Näiden alikaaviot saadaan samoin. Elementtien hankkimiseksi on kutsuttava jokaisen DiagramWrapper-olion getdiagram()-palvelua, jolla saadaan Diagram-olio jolta pyydetään getdiagramcomponentwrappers()-palvelua, joka palauttaa listan DiagramComponentWrapper-olioista. Palvelu peritään Diagram-luokalta. Näistä saadaan puuhun jokaisen kaavion komponentit. Kun kaavioon tehdään muutoksia, esim. lisätään uusi komponentti, ne päivitettään puuhun samaan tapaan kuin puun luonti mutta nyt riittää kun pyydettään valittuna olevan kaavion elementit. Samoin jos lisätään uusi kaavio niin riittää pyytää vain projektiin kuuluvien kaavioiden listaus. 4.4 Piirtoalusta Piirtoalue muodostuu kaavion nimipalkista ja piirtotasosta. Nimipalkissa on editoitavan kaavion nimi. Piirtotasolla esitetään editoitava kaavio. Aluelle voidaan lisätä käytettäviä elementtejä ja yhteyksiä. Käytettävissä olevat työkalut saadaan työkalupalkista (kts. kuva: alue 2.). (kts. kuva: alue 4.) Piirtoaluelle asetetaan JPanel, joka saadaan pyytämällä ProjectManagerilta getvisible- Diagram(), joka palauttaa DiagramWrapper-olion, jolta saadaan Diagram-olio. Tältä voidaan pyytää getjpanel()-metodilla tarvittava alusta. Alustan kuuntelu ja tarvittavien hiiren koordinaattien hankinta tapahtuu kuuntelemalla JSrollPanea, johon JPanel asetetaan. 4.5 Attribuuttipaneeli Paneeliin asetetaan joko kaavion tai valitun elementin tiedot. Tietoja voidaan editoida paneelia hyödyntäen.(kts. kuva: alue 5.) Kun elementti tai yhteys valitaan, paneeliin vaihdetaan kyseisen elementin tiedot. Käyttöliittymä hankkii tiedot esityksen luomiseksi pyytämällä ProjectManager-luokalta palvelua getselection(), joka palauttaa DiagramComponent-olion käyttöliittymän käyttöön. Koska se on ProjectComponent-luokan aliluokka niin siltä voidaan pyytää palvelua getattributepanel(), joka palauttaa elementin tiedot JPanelina. Se voidaan asettaa suoraan paikalleen. Jos valintaa ei ole eli vain kaavio on valittuna niin tällöin näytetään kaavion tiedot, koska ne saadaan kun pyydetään ProjectManager-luokalta getvisiblediagram(). Se palauttaa DiagramWrapper-olion, jolta pyydetään Diagram-olio, joka sekin on ProjectComponentluokan aliluokka. Siltä saadaan palvelulla getattributepanel() JPanel, joka sisältää kaavion tiedot ja se voidaan myös asettaa paikalleen suoraan. 24
30 5 Testaussuunnitelma Suunnitelma sisältää kuvauksen testauksesta ja sen osavaiheista. Yksikkö- ja integrointitestauksen yksittäiset testit suunnitellaan projektin toteutusvaiheessa. Järjestelmätestauksen käyttämät laajennetut testitapaukset löytyvät liitteestä Testausstrategia Testaus jakaantuu yksikkötestaukseen, integrointitestaukseen ja järjestelmätestaukseen. Yksikkötestauksessa varmistutaan että kukin komponentti toimii sisäisesti oikein. Integrointitesteuksessa varmistutaan siitä että kukin komponentti tarjoaa muille oikeanlaisen rajapinnan ja käyttää muita rajapintoja sovitusti. Järjestelmätestauksessa suoritetaan ohjelmalla ennalta määriteltyjä käyttötapauksia joilla varmennetaan että ohjelma vastaa sille asetettuja, toteutettavaksi valittuja, toiminnallisia vaatimuksia. Testauksesta kirjoitetaan raportti johon kirjataan testien suoritus ja onnistuminen. Järjestelmätestuaksen lisäksi erillistä hyväksymistestausta ei suoriteta ajallisten rajoitusten sekä toteutettavan ohjelman keskeneräisyyden vuoksi. 5.2 Testauksen vaiheet Yksikkötestaus Yksikkötestauksessa käytetään apuna JUnit testausohjelmaa. Koodaajat työskentelevät pareina siten että he kirjoittavat testit toistensa koodille. Testien suunnittelu on jokaisen parin omalla vastuulla Integrointitestaus Integrointitestauksessa ohjelman erikseen koodatut yksiköt liitetään toisiinsa. Aina uuden yksikön liittämisen jälkeen testataan sen toiminta jo kootun kanssa Järjestelmätestaus Järjestelmätestaus perustuu laajennetuihin käyttötapauksiin (lkt). Testit saadaan kunkin lkt:n päätöstaulukosta. Jokainen taulukon rivi määrittelee yhden ajettavan testin syötteineen ja tulosteineen. Pienen poikkeuksen muodostavat Undo- ja Redo- tapaukset joille ei ole määritelty päätöstaulukoita. Nämä toiminnot testataan muitten testejen yhteydessä. Jokaisen testin jälkeen jonka toiminta kuuluu olla peruttavissa suoritetaan Undo- ja Redokomennot. Mikäli Undo peruu ja Redo palauttaa testin lopputilan, hyväksytään testi myös Undo- ja Redo- komentojen osalta. 25
31 5.3 Testaamatta jäävä toiminnallisuus Testaus kattaa vain tärkeimmät toteutettaviksi valitut toiminnot. Tämän lisäksi testaamatta jäävät mahdollisesti ajan sallimat vaihtoehtoiset tavat suorittaa toimintoja sekä matalan prioriteetin toiminnot jotka toteutetaan vain osittain tai joihin vain varaudutaan toteutuksessa. 5.4 Testausympäristö Ohjelma testataan laitoksen Linux-ympäristössä. 26
32 Liite 1. Laajennetut käyttötapaukset 1 LKT1 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Kaavion luonti Käyttäjä luo uuden kaavion projektiin. Kaaviotyyppi (kaikkien määriteltyjen kaaviotyyppien joukko) Kaaviotyypin mukainen uusi kaavio piirtoalustalle ja projektipuuhun 1. Käyttäjä painaa New Diagram -painiketta 2. Ohjelma lisää uuden kaavion projektipuuhun ja piirtoalustalle 3. Tarvittaessa käyttäjä valitsee oikean kaaviotyypin alavetovalikosta 4. Ohjelma muuttaa uuden kaavion valitun tyyppiseksi Numero Aikaisempi kaaviotyyppi Valittu kaaviotyyppi 1 Luokkakaavio Luokkakaavio 2 Luokkakaavio Käyttötapauskaavio
33 2 LKT2 Nimi Kuvaus Syötteet (arvoalue) Elementin lisääminen Käyttäjä lisää haluamansa tyyppisen elementin kaavioon. Elementtityyppi (kaaviotyypissä määriteltyjen elementtityyppien joukko) X-koordinaatti (0:sta piirtoalustan maksimileveyteen) Y-koordinaatti (0:sta piirtoalustan maksimikorkeuteen) Tulosteet Toimintasekvenssi Kaavio, johon on lisätty elementti 1. Käyttäjä valitsee elementtityypin elementtipaletista 2. Ohjelma näyttää elementtityypin valittuna 3. Käyttäjä painaa hiiren painikkeella piirtoalustaa 4. Ohjelma lisää elementin kaavioon Numero Elementtityyppi Koordinaatit Ohjelman toiminta 1 Luokka Keskellä OK 2 Luokka min, min Elementti piirtyy kokonaisena vas. ylänurkkaan ja piirtoalue laajenee 3 Luokka min, max Elementti piirtyy kokonaisena oik. ylänurkkaan ja piirtoalue laajenee 4 Luokka max, min Elementti piirtyy kokonaisena vas. alanurkkaan ja piirtoalue laajenee 5 Luokka max, max Elementti piirtyy kokonaisena oik. alanurkkaan ja 6 Luokka Olemassaolevan elementin päällä piirtoalue laajenee Elementti piirtyy vanhan päälle
34 3 LKT3 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Elementin poistaminen Käyttäjä poistaa elementin kaaviosta. Poistettava elementti (kaaviossa olevat elementit) Kaavio, josta elementti on poistettu 1. Käyttäjä valitsee elementin piirtoalustalta 2. Käyttäjä painaa poista-painiketta 3. Ohjelma poistaa elementin kaaviosta Numero Elementti Lisätiedot Ohjelman toiminta 1 Luokka Elementtiin ei tule yhteyksiä OK 2 Luokka Elementtiin tulee Yhteydet jäävät yhteyksiä roikkumaan 3 Luokka Kaavion viimeinen OK elementti 4 Luokka Elementti on Poistetaan vain valitusta useassa kaaviossa kaaviosta
35 4 LKT4 Nimi Kuvaus Syötteet (arvoalue) Elementin koon muuttaminen Käyttäjä muuttaa halutun elementin kokoa. Muutettava elementti (kaaviossa olevat elementit) Uusi leveys (elementtikohtaisesta minimikoosta maksimiin) Uusi korkeus (elementtikohtaisesta minimikoosta maksimiin) Tulosteet Toimintasekvenssi Kaavio, jossa elementillä on uusi koko 1. Käyttäjä valitsee elementin piirtoalustalta 2. Käyttäjä vetää hiirellä elementin koonmuuttamispisteistä 3. Ohjelma piirtää elementin uudessa koossa NumeroElementti Lähtökoko Valittu Muuta Toiminta koko 1 Luokka 100, , - OK Luokka 100, 100 0, 0 - Elementti ei pienene alle minimikoon 3 Luokka 100, 100 max+1, - Elementti ei max+1 suurene yli maksimikoon 4 Luokka 100, , 150 Elementti reunan Piirtoalusta laajenee 5 Luokka 100, , 150 lähellä Elementti toisen vieressä Elementti laajenee toisen päälle
36 5 LKT5 Nimi Kuvaus Syötteet (arvoalue) Elementin liikuttaminen Käyttäjä liikuttaa elementtiä piirtoalustalle. Liikutettava elementti (kaaviossa olevat elementit) Uusi x-koordinaatti (0:sta kaavion maksimileveyteen) Uusi y-koordinaatti (0:sta kaavion maksimikorkeuteen) Tulosteet Toimintasekvenssi Kaavio, jossa elementin paikkaa on muutettu. 1. Käyttäjä painaa hiiren painikkeen alas elementin kohdalla 2. Käyttäjä liikuttaa hiirellä elementin uuteen kohtaan 3. Ohjelma piirtää elementin uuteen kohtaan 4. Käyttäjä päästää hiiren painikkeen ylös Numero Elementti Koordinaatit Ohjelman toiminta 1 Luokka Keskellä OK 2 Luokka min, min Piirtoalue laajenee antaen tilaa elementille 3 Luokka min, max Piirtoalue laajenee antaen tilaa elementille 4 Luokka max, min Piirtoalue laajenee antaen tilaa elementille 5 Luokka max, max Piirtoalue laajenee antaen tilaa elementille 6 Luokka Olemassaolevan Elementti piirtyy elementin päällä vanhan päälle
37 6 LKT6 Nimi Kuvaus Syötteet (arvoalue) Elementin attribuuttien arvojen muuttaminen Käyttäjä valitsee elementin ja muuttaa sen attribuutin arvoa elementtipaneelin avulla tai suoraan piirtoalustalla. Muokattava elementti (kaaviossa olevat elementit) Muokattava attribuutti (elementin olemassaolevat attribuutit) Attribuutin uusi arvo (elementin attribuutin sallitut arvot) Tulosteet Toimintasekvenssi Kaavio, jossa attribuuttia on muutettu 1. Käyttäjä valitsee elementin 2. Käyttäjä valitsee muokattavan attribuutin attribuuttipaneelista 3. Käyttäjä syöttää attribuutin uuden arvon 4. Ohjelma näyttää päivitetyn elementin Numero Attr. Vanha Uusi Muuta Toiminta tyyppi arvo arvo 1 String Abc Def OK 2 String (tyhjä) Abc OK 3 String Abc Def Elementti Arvo päivittyy useassa kaikkiin kaaviossa 4 Int 100 xyz Ohjelma valittaa eikä päivitä arvoa
38 7 LKT7 Nimi Kuvaus Syötteet (arvoalue) Yhteyden lisääminen Käyttäjä lisää yhteyden kaavioon. Yhteyden tyyppi (kaaviotyypin yhteystyypit) Alkukoordinaatit (kaavion koordinaatisto) Loppukoordinaatit (kaavion koordinaatisto) Tulosteet Toimintasekvenssi Kaavio, johon on lisätty yhteys 1. Käyttäjä valitsee elementtipaletista yhteystyypin 2. Käyttäjä valitsee hiirellä alkupisteen piirtoalustalta 3. Käyttäjä valitsee hiirellä loppupisteen piirtoalustalta 4. Ohjelma piirtää yhteyden Numero Alkupää Loppupää Muuta Toiminta 1 Sisältää Sisältää Yhteys elementtien elementin elementin välille 2 Ei sisällä Sisältää Toispuoleinen yhteys 3 Sisältää Ei sisällä Toispuoleinen yhteys 4 Ei sisällä Ei sisällä Roikkuva yhteys 5 Sisältää Sisältää Luvaton yh- Ohjelma huomaut- teys 6 Sisältää Sisältää Välissä kolmas elementti taa virheestä Yhteys piirtyy normaalisti
39 8 LKT8 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Yhteyden poistaminen Käyttäjä poistaa kaaviosta olemassaolevan yhteyden. Poistettava yhteys (kaaviossa olevat yhteydet) Kaavio, josta yhteys on poistettu 1. Käyttäjä valitsee yhteyden 2. Käyttäjä painaa poista-painiketta 3. Ohjelma poistaa yhteyden Numero Alkupiste Loppupiste Toiminta 1 Kiinni elementissstuu Kiinni elementis- Vain yhteys pois- 2 Ei kiinni Kiinni Vain yhteys poistuu 3 Kiinni Ei kiinni Vain yhteys poistuu 4 Ei kiinni Ei kiinni Yhteys poistuu
40 9 LKT9 Nimi Kuvaus Syötteet (arvoalue) Yhteyden uudelleenasemointi Käyttäjä valitsee piirtoalustalla olevan yhteyden ja vetää sen uuteen paikkaan. Muokattava yhteys (kaaviossa olevat yhteydet) Uusi alku- tai loppukoordinaatti (kaavion koordinaatisto) Tulosteet Toimintasekvenssi Kaavio, jossa yhteyden toinen pää muokattu 1. Käyttäjä valitsee yhteyden piirtoalustalta 2. Käyttäjä tarttuu hiirellä yhteyden uudelleenasemointipisteeseen 3. Käyttäjä vetää pisteen uuteen paikkaan 4. Ohjelma piirtää muokatun yhteyden Numero Siirrettävä Vanha piste Uusi piste Toiminta 1 Alku Kiinni Sisältää Alkupää kiinni elem. elem. elementtiin 2 Alku Kiinni Ei sisällä Alkupää roikkumaan 3 Alku Ei kiinni Sisältää Alkupää kiinni elementtiin 4 Alku Ei kiinni Ei sisällä Alkupää jää roikkumaan 5 Loppu Kiinni Sisältää Loppupää kiinni elem. elem. elementtiin 6 Loppu Kiinni Ei sisällä Loppupää roikkumaan 7 Loppu Ei kiinni Sisältää Loppupää kiinni elementtiin 8 Loppu Ei kiinni Ei sisällä Loppupää jää roikkumaan
41 10 LKT10 Nimi Kuvaus Syötteet (arvoalue) Yhteyden attribuuttien arvojen muuttaminen Käyttäjä valitsee yhteyden ja muuttaa sen attribuutin arvoa elementtipaneelin avulla tai suoraan piirtoalustalla. Muokattava yhteys (kaaviossa olevat yhteydet) Muokattava attribuutti (yhteyden olemassaolevat attribuutit) Attribuutin uusi arvo (yhteyden attribuutin sallitut arvot) Tulosteet Toimintasekvenssi Kaavio, jossa attribuuttia on muutettu 1. Käyttäjä valitsee yhteyden 2. Käyttäjä valitsee muokattavan attribuutin attribuuttipaneelista 3. Käyttäjä syöttää attribuutin uuden arvon 4. Ohjelma näyttää päivitetyn yhteyden Numero Attr. Vanha Uusi Muuta Toiminta tyyppi arvo arvo 1 String Abc Def OK 2 String (tyhjä) Abc OK 3 String Abc Def Yhteys Arvo päivittyy useassa kaikkiin kaaviossa 4 Int 100 xyz Ohjelma valittaa eikä päivitä arvoa
42 11 LKT11 Nimi Kuvaus Syötteet (arvoalue) Murtoviivan kulkureitin muuttaminen Käyttäjä muuttaa murtoviivan kulkureittiä. Muokattava yhteys (kaaviossa olevat yhteydet) Murtoviivan muokkauspiste (yhteysviivan muokkauspisteet) Muokkauspisteen uusi paikka (kaavion koordinaatit) Tulosteet Toimintasekvenssi Kaavio, jossa yhteysviivan kulkureittiä on muokattu 1. Käyttäjä valitsee murtoviivan 2. Ohjelma piirtää murtoviivan alku-, loppuja muokkauspisteet 3. Käyttäjä vetää jonkin muokkauspisteen uuteen kohtaan 4. Ohjelma piirtää päivitetyn yhteysviivan Numero Muokkauspisteitä Muokkaussuunta 1 1 Vaaka 2 1 Pysty 3 2 Vaaka 4 2 Pysty
43 12 LKT12 Nimi Kuvaus Syötteet (arvoalue) Tekstin lisääminen kaavioon Käyttäjä lisää kaavioon vapaamuotoista tekstiä. Tekstielementin koordinaatit (kaavion koordinaatisto) Teksti Tulosteet Toimintasekvenssi Kaavio, johon on lisätty tekstielementti 1. Käyttäjä valitsee työkaluvalikosta tekstityökalun 2. Käyttäjä valitsee piirtoalustalta tekstin paikan 3. Ohjelma näyttää kaaviossa vilkkuvan kursorin 4. Käyttäjä kirjoittaa tekstin kaavioon Numero Kaaviotyyppi Tekstin paikka Teksti Toiminta 1 Luokkakaavio Keskellä abc OK 2 Käyttötapauskaavio Keskellä abc OK 3 Tietovuokaavio Keskellä abc OK 4 Luokkakaavio Elementin päällä abc OK
44 13 LKT13 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Ryhmän valitseminen Käyttäjä valitsee piirtoalustalla olevista elementeistä haluamansa ja muodaostaa näin ryhmän joka voidaan liikuttaa ja poistaa Valittavat elementit (kaavion elementit) Kaavio jossa elementit ovat näkyvästi valittu 1. Käyttäjä painaa shift-näppäimen alas 2. Käyttäjä valitsee elementit yksitellen 3. Ohjelma korostaa käyttäjän valitsemat elementit Numero Elementtien lkm Tyyppi Toiminta 1 2 Möykkyjä Elementit liikkuvat ja poistuvat kokonaisuutena 2 1 Möykky Elementti toimii yksittäisenä valittuna elementtinä 3 10 Möykkyjä Elementit liikkuvat ja poistuvat kokonaisuuten 4 2 Yhteyksiä Elementit poistuvat kokonaisuutena mutta eivät liiku 5 1 Yhteys Elementti toimii yksittäisenä valittuna elementtinä 6 10 Yhteyksiä Elementit poistuvat kokonaisuutena mutta eivät liiku 7 10 Sekalaisia Elementit poistuvat ja liikkuvat kokonaisuutena
45 14 LKT14 Nimi Kuvaus Syötteet (arvoalue) Alueen rajaaminen Käyttäjä valitsee alueella olevat elementit rajaustyökalua käyttäen Alkupiste (kaavion koordinaatisto) Lopppupiste (kaavion koordinaatisto) Tulosteet Toimintasekvenssi Kaavio jossa alueen elementit ovat näkyvästi valittu 1. Käyttäjä valitsee rajaustyökalun työkalupalkista 2. Käyttäjä valitsee hiirellä piirtoalustalta aloituspisteen 3. Käyttäjä valitsee hiirellä piirtoalustalta loppupisteen 4. Ohjelma korostaa määritellyn alueen rajaamat elementit valittuina Numero Alue Elementtejen lkm Toiminta 1 Kekseltä reunalle 5 Alueen rajaamat elementit valittu 2 Reunalta keskelle 5 Alueen rajaamat elementit valittu 3 Keskellä iso 8 Alueen rajaamat elementit valittu 4 Keskellä olematon 0 Ei toimintaa 5 Koko kaavio 10 Kaikki kaavion elementit valittu
46 15 LKT15 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Undo Käyttäjä haluaa perua suorittamansa toiminnon. Testataan kunkin käyttötapauksen testauksen yhteydessä joka voidaan perua. Jokaisen tällaisen laajennetun käyttötapauksen päätöstaulukosta valitaan yksi tyypillinen rivi jonka jälkeen suoritetaan undo-komento. Jos tämä palauttaa käyttö- tapauksen alkutilaan niin hyväksytään. LKT16 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Redo Käyttäjä haluaa perua suorittamansa perumisen. Testataan kunkin undo-testin yhteydessä. Suoritetaan redo ja mikäli käyttötapauksen lopputila palautuu niin hyväksytään. LKT17 Nimi Kuvaus Syötteet (arvoalue) Tulosteet Toimintasekvenssi Tallennus vanhaan tiedostoon Käyttäjä haluaa tallentaa projektin sille aikaisemmin määriteltyyn paikkaan Ei syötteitä Alariville tieto onnistuneesta tallennuksesta 1. Käyttäjä valitsee File-valikosta Savekomennon 2. Ohjelma tallentaa projektin sen vanhaan tiedostoon Numero Tiedosto Toiminta 1 Määritelty Projekti tallentuu tiedostoon 2 Ei määritelty Save-komento harmaannettu
Testausdokumentti. Kaapo - Kaavioiden piirto-ohjelma. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testausdokumentti Kaapo - Kaavioiden piirto-ohjelma Helsinki 1.9.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä
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
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
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
Testaussuunnitelma Labra
Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,
Teknillinen korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori
Testitapaukset - Koordinaattieditori Sisällysluettelo 1. Johdanto...3 2. Testattava järjestelmä...4 3. Toiminnallisuuden testitapaukset...5 3.1 Uuden projektin avaaminen...5 3.2 vaa olemassaoleva projekti...6
Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Käyttöohje Boa Open Access Helsinki 5.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari Heikkinen
Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2
Subversion-ohje Linux Traffic Control-käyttöliittymä Ryhmä paketti2 Helsinki 1.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti
Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan
Testausdokumentti. 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
Testaussuunnitelma. Asdf. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Asdf Helsinki 22.2.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Kuisma Sami Louhio
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.
Testaussuunnitelma. PUSU-ryhmä. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma PUSU-ryhmä Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Jussi Hynninen
Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia.
MagicDraw-pikaohje Tällä harjoituskerralla on tarkoituksena harjoitella käyttötapaus-, luokka- ja tapahtumasekvenssikaavioiden luontia. Alkuvalmistelut Windows (sali TC205) 1) Kirjaudu sisään TTY:n intra-tunnuksella.
Hakemistojen sisällöt säilötään linkitetyille listalle.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi Java-kielellä komentoikkunaa (komentotulkkia, komentoriviä) simuloiva olioperustainen ohjelma. Hakemistojen sisällöt säilötään linkitetyille listalle. Työ
Visma Fivaldi -käsikirja MiniCRM
Visma Fivaldi -käsikirja MiniCRM 2 Sisällys 1 Yleistä... 3 2 Ylävalikko... 4 3 Perustiedot - välilehti... 5 4 Tila (vapaassa tekstikentässä edellisellä sivulla annettu nimi) - välilehti... 6 5 Vasemman
Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu KÄYTTÖOHJE. LiKe Liiketoiminnan kehityksen tukiprojekti
Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu JÄRJESTELMÄN KÄYTTÖOHJE LiKe Liiketoiminnan kehityksen tukiprojekti Versio: 1.1 Tila: hyväksytty Päivämäärä: 13.2.2001
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:
Lohtu-projekti. Testaussuunnitelma
Lohtu-projekti Testaussuunnitelma Versiohistoria: 1.0 19.2.2003 1. versio Mari 1.1 20.2.2003 Muutoksia Mari 1.2 25.2.2003 Katselmoinnissa esiin tulleet Mari muutokset 1.3 17.3.2003 2. syklissä tehtävät
Convergence of messaging
Convergence of messaging Testaussuunnitelma The Converge Group: Mikko Hiipakka Anssi Johansson Joni Karppinen Olli Pettay Timo Ranta-Ojala Tea Silander Helsinki 20. joulukuuta 2002 HELSINGIN YLIOPISTO
Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje
Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje Sisällysluettelo VIP Laajennettu raportointi... 3 Luo raportti Laajennetun raportoinnin työkaluilla... 4 Avaa Laajennettu raportointi... 4 Valitse
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:
TIE = JOTU. VH5 - MagicDraw
TIE-02300 = JOTU VH5 - MagicDraw TIE-02300 2 VH5 kaavionpiirtelyharjoitus Tässä harjoituksessa opetellaan tunnistamaan ja piirtämään tavallisimpia ja käytetyimpiä ohjelmistotuotannon kaavioita: käyttötapauskaavio
Oliosuunnitteluesimerkki: 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ä
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2009 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2009 1 / 28 Puhelinluettelo, koodi def lue_puhelinnumerot(): print "Anna lisattavat nimet ja numerot." print
2016/07/05 08:58 1/12 Shortcut Menut
2016/07/05 08:58 1/12 Shortcut Menut Shortcut Menut Shortcut menut voidaan aktivoida seuraavista paikoista. Shortcut menun sisältö riippuu siitä, mistä se aktivoidaan. 1. Shortcut menu suunnitellusta linjasta
Visma Fivaldi -käsikirja Asiakaskohtaiset hinnat
Visma Fivaldi -käsikirja Asiakaskohtaiset hinnat 2 Sisällys 1 Yleistä... 3 2 Ylävalikko... 4 3 Vasemman laidan painikkeet... 5 4 Erikoishinnoittelut ruutu... 6 5 Raportit... 12 1 Yleistä Fivaldi Asiakaskohtaiset
Vaatimusdokumentti. Kaapo - Kaavioiden piirto-ohjelma
Vaatimusdokumentti Kaapo - Kaavioiden piirto-ohjelma Helsinki 10.7.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä
Testaussuunnitelma. Opeapuri. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Opeapuri Helsinki 2.4.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Krister Eklund
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.
VH5, JOTU, MagicDraw:n käyttö
VH5, JOTU, MagicDraw:n käyttö 1. Käynnistä MagicDraw (versio 18.2) 2. Valitse Manage Projects-kohdasta Create New Project toiminto. Oletusarvona on UML Project, saa olla. Täytä nimi (Name) ja tallennuspaikka
Sähköposti ja uutisryhmät 4.5.2005
Outlook Express Käyttöliittymä Outlook Express on windows käyttöön tarkoitettu sähköpostin ja uutisryhmien luku- ja kirjoitussovellus. Se käynnistyy joko omasta kuvakkeestaan työpöydältä tai Internet Explorer
Testaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu
Tilastokeskuksen rajapintapalveluiden käyttöönotto ArcGISohjelmistossa
1(6) Tilastokeskuksen rajapintapalveluiden käyttöönotto ArcGISohjelmistossa Ohjeita laatiessa on käytetty ArcGIS:n versiota 10.1. Koordinaattijärjestelmä ArcGIS käyttää oletuskoordinaattijärjestelmänä
Google-dokumentit. Opetusteknologiakeskus Mediamylly
Google-dokumentit 1 2 3 Yleistä 1.1 Tilin luominen 4 1.2 Docs-päävalikkoon siirtyminen 7 Dokumentit-päävalikko 2.1 Kirjaudu Dokumentteihin 9 2.2 Lähetä tiedosto Google-dokumentteihin 11 2.3 Uuden asiakirjan
KÄYTTÖOHJE LATOMO VERSO
Kirjautuminen Kirjatuminen järjestelmään tapahtuu syöttämällä ylläpitäjältä (yleensä sähköpostilla) saatu käyttäjätunnus ja salasana niille varattuihin kenttiin. Jos olet unohtanut salasanasi voit syöttää
Suvi 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
Tietokannan luominen:
Moodle 2 Tietokanta: Tietokanta on työkalu, jolla opettaja ja opiskelijat voivat julkaista tiedostoja, tekstejä, kuvia, linkkejä alueella. Opettaja määrittelee lomakkeen muotoon kentät, joiden kautta opiskelijat,
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
Luku 7 Uusien Mallien Tiedostot
Luku 7 Uusien Mallien Tiedostot Kaikki ZoomTextin asetukset voidaan tallentaa ja palauttaa käyttämällä mallitiedostoja. Mallitiedostot kontrolloivat kaikkia ZoomTextin toimintoja mukaan lukien suurennustasot,
Hallintaliittymän käyttöohje
Hallintaliittymän käyttöohje 1. Yleisiä huomioita Hallintaliittymän käyttöä helpottavia yleisiä huomioita: - Käytä listanäkymien hakukentissä kentän vieressä olevaa hakunappia, älä enter-näppäintä. - Älä
Jypelin käyttöohjeet» Ruutukentän luominen
Jypelin käyttöohjeet» Ruutukentän luominen Pelissä kentän (Level) voi luoda tekstitiedostoon "piirretyn" mallin mukaisesti. Tällöin puhutaan, että tehdään ns. ruutukenttä, sillä tekstitiedostossa jokainen
Toteutusdokumentti Kaapo - Kaavioiden piirto-ohjelma Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Toteutusdokumentti Kaapo - Kaavioiden piirto-ohjelma Helsinki 1.9.2005 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä
UpdateIT 2010: Editorin käyttöohje
UpdateIT 2010: Editorin käyttöohje Käyttäjätuki: Suomen Golfpiste Oy Esterinportti 1 00240 HELSINKI Puhelin: (09) 1566 8800 Fax: (09) 1566 8801 E-mail: gp@golfpiste.com Sisällys Editorin käyttöohje...
Tekstinkäsittelyn jatko. KSAO Liiketalous 1
KSAO Liiketalous 1 Tyylien käyttö on keskeinen osa tehokasta tekstinkäsittelyä. Merkki- ja kappalemuotoilujen tallentaminen valmiiksi tyyleiksi nopeuttavat tekstinkäsittelyä; tekstin kirjoittamista ja
Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie
Ylläpitodokumentti Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie Helsinki 16.7.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti
Sokkelon sisältö säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi olioperustainen sokkeloseikkailu peli Javakielellä. Sokkelon sisältö säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen
BlueJ ohjelman pitäisi löytyä Development valikon alta mikroluokkien koneista. Muissa koneissa BlueJ voi löytyä esim. omana ikonina työpöydältä
Pekka Ryhänen & Erkki Pesonen 2002 BlueJ:n käyttö Nämä ohjeet on tarkoitettu tkt-laitoksen mikroluokan koneilla tapahtuvaa käyttöä varten. Samat asiat pätevät myös muissa luokissa ja kotikäytössä, joskin
Automaattitilausten hallinta. Automaattitilauksien uudistettu käsittely
Automaattitilausten hallinta Raportit Saat yhteenvedon voimassa olevista automaattitilauksista ja automaatti-ilmoituksista hakemistopuun Raportit-valikon alta. PDF-napista voit ladata koneellesi yhteenvedon
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
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
VIENET JULKAISUJÄRJESTELMÄLLÄ TOTEUTETTUJEN INTERNET-SIVUJEN YLLÄPITO-OHJE
VIENET JULKAISUJÄRJESTELMÄLLÄ TOTEUTETTUJEN INTERNET-SIVUJEN YLLÄPITO-OHJE JULKAISUJÄRJESTELMÄÄN KIRJAUTUMINEN. Osoitekenttään kirjoitetaan www.domain.fi/admin. Kirjoita käyttäjätunnus: xxxxxx. Salasana:
Testaussuunnitelma. Ohjelmistotuotantoprojekti Nero. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Ohjelmistotuotantoprojekti Nero Helsinki 5.11.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti ( ov) Projektiryhmä
KYMP Webmail -palvelu
KYMP Webmail -palvelu Sisältö 1. Kirjautuminen... 3 2. Viestin merkinnät... 4 3. Viestien lukeminen... 4 Viestiin vastaaminen... 4 Viestin välittäminen edelleen / uudelleen ohjaus... 5 4. Viestin kirjoittaminen...
Enigmail-opas. Asennus. Avainten hallinta. Avainparin luominen
Enigmail-opas Enigmail on Mozilla Thunderbird ja Mozilla Seamonkey -ohjelmille tehty liitännäinen GPG-salausohjelmiston käyttöä varten. Sitä käytetään etenkin Thunderbirdin kanssa sähköpostin salaamiseen
Harjoitus 7. 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:
Harjoitus 7 1. Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti: class Lintu //Kentät private int _siivenpituus; protected double _aivojenkoko; private bool _osaakolentaa; //Ominaisuudet public int
Sisällysluettelo 1 Johdanto Root, koko Opalan pääkäyttäjä
OPALA Käyttöohje Sisällysluettelo 1 Johdanto 4 2 Root, koko Opalan pääkäyttäjä...5 2.1 Sisäänkirjautuminen.5 2.2 Käyttäjätunnukset 6 2.2.1 Pääkäyttäjätunnukset.6 2.2.1.1 Luo. 7 2.2.1.2 Muokka/poista 8
Moodlen lohkot. Lohkojen lisääminen: Lohkojen muokkaaminen: Tampereen yliopisto/tietohallinto 2017 Suvi Junes
Moodlen lohkot Lohkojen lisääminen: Moodlen lohkot sisältävät kurssialueen hallinnointiin liittyviä toimintoja. Kun saat uuden tyhjän kurssialueen, sen molemmilla reunoilla on valmiina muutama keskeinen
Tekstinkäsittelyn jatko Error! Use the Home tab to apply Otsikko 1 to the text that you want to appear here. KSAO Liiketalous 1
KSAO Liiketalous 1 Lomakkeet Lomake on asiakirja, joka sisältää täyttämistä ohjaavia tietoja tai merkintöjä. Wordin lomakekenttä-toiminnolla luodaan näytöllä täytettäviä lomakkeita tai tulostettavia lomakepohjia.
NAP: Merenkulun reitti- ja aikataulueditorin käyttöohje
Käyttöohje Liikkumispalvelukatalogi NAP Merenkulun reitti- ja aikataulueditori 1 (14) 16.8.2018 Användarinstruktioner för kartvertyget för sjötrafik på svenska NAP: Merenkulun reitti- ja aikataulueditorin
Testivetoinen ohjelmistokehitys
Testivetoinen ohjelmistokehitys Ohjelman luominen pienin askelin 1. Kirjoita testi, joka testaa ohjelmalle myöhemmin lisättävää toiminnallisuutta. 2. Suorita testi. Testin ei tule mennä läpi. Mikäli testi
BaseMidlet. KÄYTTÖOHJE v. 1.00
KÄYTTÖOHJE v. 1.00 KUVAUS BaseMidlet on matkapuhelimessa toimiva sovellus jolla voi etäkäyttää Tiimi 7000 sarjan säätimiä. Copyright Team-Control Oy, oikeudet muutoksiin pidätetään. TiiMi on Team-Control
Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri
Testausraportti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 13.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti
Mainosankkuri.fi-palvelun käyttöohjeita
Mainosankkuri.fi-palvelun käyttöohjeita Sisällys 1. Johdanto... 1 2. Sisäänkirjautuminen... 1 3. Palvelussa navigointi... 2 4. Laitteet... 2 5. Sisällönhallinta... 4 6. Soittolistat... 7 7. Aikataulut...
Lipas 2.0 käyttöohjeet ( )
Lipas 2.0 käyttöohjeet (14.3.2019) (Liikuntapaikan muokkaus, liikuntapaikan lisäys, liikuntapaikan poisto, pistemäiset liikuntapaikat) Liikuntapaikan muokkaaminen Liikuntapaikan lisääminen tai tietojen
UCOT-Sovellusprojekti. Testausraportti
UCOT-Sovellusprojekti Testausraportti Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 0.02 Julkinen 11. lokakuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä
Käyttöliittymän muokkaus
Käyttöliittymän muokkaus Ohjelman pitkän kehityshistorian takia asetukset ovat jakaantuneet useampaan eri kohtaan ohjelmassa. Ohessa yhteenveto nykyisistä asetuksista (versio 6.4.1, 2/2018). Ylä- ja sivupalkkien
VIS Online 2.0 version uudistukset
VIS Online 2.0 version uudistukset Tämä dokumentti kuvaa VIS Online 2.0 julkaisun erot VIS Online 1.0:aan nähden. Dokumentti on tarkoitettu vanhan VIS Online 1.0 version käyttäjille siirryttäessä uuden
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 12.4.2010 T-106.1208 Ohjelmoinnin perusteet Y 12.4.2010 1 / 34 Graafiset käyttöliittymät Tähän asti kirjoitetuissa ohjelmissa on ollut tekstipohjainen käyttöliittymä.
Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia
Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.
Ohjelmistojen mallintaminen. Luento 11, 7.12.
Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,
Epooqin perusominaisuudet
Epooqin perusominaisuudet Huom! Epooqia käytettäessä on suositeltavaa käyttää Firefox -selainta. Chrome toimii myös, mutta eräissä asioissa, kuten äänittämisessä, voi esiintyä ongelmia. Internet Exploreria
Testaussuunnitelma. Karstula. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Karstula Helsinki 20.4.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Juha-Pekka Juutilainen
KOTISIVUJEN KÄYTTÖOHJE ULVILAN PESÄ-VEIKOT RY
KOTISIVUJEN KÄYTTÖOHJE ULVILAN PESÄ-VEIKOT RY 2 Päivämäärä Versio Tekijä Muutos 30.11.2016 1.1. Mari Timgren 3.3.2018 1.2. Mari Timgren Päivitetty ulkoasu ja käyttäjätunnusten tekijä 19.1.2019 1.3. Mari
Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.
Harjoitustyö 1 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva olioperustainen ohjelma Java-kielellä. Lötköt säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti
Taulukot. Jukka Harju, Jukka Juslin 2006 1
Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti
Visma Fivaldi -käsikirja Alennukset/ hinnoittelu
Visma Fivaldi -käsikirja Alennukset/ hinnoittelu 2 Sisällys 1 Yleistä... 3 2 Vasemman laidan painikkeet... 4 3 Myynti (= myyntitilauksien automaattialennukset)... 5 4 Osto (= ostotilauksien automaattialennukset)...
Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola
Pedanet oppilaan ohje Aleksanteri Kenan koulu Eija Arvola 26.8.2016 SISÄLLYSLUETTELO 1. Omat asetukset kuntoon (kaikkien tehtävä aluksi) sivut 3-5 2. Tärkeiden sivujen tilaaminen omiin linkkeihin sivut
Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita.
Moniperintä 2 Joskus yleistäminen voi tapahtua monen ominaisuuden pohjalta. Myös tällöin voi tulla moniperintätilanteita. Oliomallinnus TITE.2040 Hannu K. Niinimäki 1 Delegointi 1 Moniperinnän toteuttaminen
Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Projektisuunnitelma KotKot Helsinki 22.9.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 + 1 op) Projektiryhmä Tuomas Puikkonen
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)
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)
IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit
IDL - proseduurit 25. huhtikuuta 2017 Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
Ohjelmistojen mallintaminen viikon 4 laskareiden mallivastauksia
Ohjelmistojen mallintaminen viikon 4 laskareiden mallivastauksia Tehtävä 1 Tehtävässä 1 mallinnettiin Monopolipeliä. Alla olevassa esimerkissä peliin liittyy aina 2 noppaa, peliä pelataan pelilaudalla,
Ensin klikkaa käynnistä-valikkoa ja sieltä Kaikki ohjelmat valikosta kaikki ohjelmat
Microsoft Office 2010 löytyy tietokoneen käynnistä-valikosta aivan kuin kaikki muutkin tietokoneelle asennetut ohjelmat. Microsoft kansion sisältä löytyy toimisto-ohjelmistopakettiin kuuluvat eri ohjelmat,
ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014
18. syyskuuta 2014 IDL - proseduurit Viimeksi käsiteltiin IDL:n interaktiivista käyttöä, mutta tämä on hyvin kömpelöä monimutkaisempia asioita tehtäessä. IDL:llä on mahdollista tehdä ns. proseduuri-tiedostoja,
Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto
Condess ratamestariohjelman käyttö Aloitus ja alkumäärittelyt Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto Kun kysytään kilpailun nimeä, syötä kuvaava nimi. Samaa nimeä käytetään oletuksena
Käyttötapausanalyysi ja testaus tsoft
Käyttötapausanalyysi ja testaus tsoft 15.09.2004 http://cs.joensuu.fi/tsoft/ Johdanto Use Case analyysi (käyttötapausanalyysi) on yleisesti käytetty järjestelmälle asetettujen toiminnallisten vaatimusten
Käyttöliittymän paperiprototyyppi. Koordinaattieditori
Käyttöliittymän paperiprototyyppi Koordinaattieditori Versio Päiväys Tekijä Kuvaus 0.1 08.12.01 Mika Ståhlberg Ensimmäinen luonnos 0.2 10.12.01 Mika Ståhlberg Useita muutoksia - merkittävimmät Playback-osuuteen
KÄYTTÖOHJE. Servia. S solutions
KÄYTTÖOHJE Servia S solutions Versio 1.0 Servia S solutions Servia Finland Oy PL 1188 (Microkatu 1) 70211 KUOPIO puh. (017) 441 2780 info@servia.fi www.servia.fi 2001 2004 Servia Finland Oy. Kaikki oikeudet
Netsor Webmailin käyttöohje
Netsor Webmailin käyttöohje https://mail.webhotelli.net sekä https://webmail.netsor.fi Ohjeen sisältö Sähköpostin peruskäyttö Lukeminen Lähettäminen Vastaaminen ja välittäminen Liitetiedoston lisääminen
Salasanojen turvallinen tallentaminen KeePass ohjelmalla
Salasanojen turvallinen tallentaminen KeePass ohjelmalla KeePass on vapaasti saatavilla oleva, avoimen lähdekoodin ohjelma, jonka tarkoituksena on auttaa salasanojen hallinnassa. Tämä KeePass ohje on päivitetty
1. Kalenterin omistajan käyttöohje
1. Kalenterin omistajan käyttöohje 1.1. Kielen vaihtamien Ajanvarausjärjestelmässä kielen vaihtaminen tapahtuu painamalla sivun ylälaidassa olevia lippuja. 1.2. Kirjautuminen Kirjautumissivulla käyttäjä
Kortinhaltijat joilla on maksukeskeytys Maksuryhmään liitettyjen kortinhaltijoiden lukumäärä, joiden maksut ovat tilapäisesti keskeytetty.
1(6) MAKSURYHMÄN HALLINTA Maksuryhmäkohtaiselle sivulle pääset klikkaamalla yksittäisen maksuryhmän nimeä verkkopalvelun etusivulla tai valitsemalla ryhmän Maksuryhmät - osion listalta. Sivun tiedot ja
1 Kirjautuminen ja Käyttöliittymä... 2. 1.1 Kirjautuminen... 2. 1.2 Käyttöliittymä... 2. 2 Uuden varauksen tekeminen... 3. 2.1 Normaali varaus...
1 Kirjautuminen ja Käyttöliittymä... 2 1.1 Kirjautuminen... 2 1.2 Käyttöliittymä... 2 2 Uuden varauksen tekeminen... 3 2.1 Normaali varaus... 3 2.2 Alustava Varaus... 5 2.2.1 Alustavan varauksen muuttaminen
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 2.3.2011 T-106.1208 Ohjelmoinnin perusteet Y 2.3.2011 1 / 39 Kertausta: tiedoston avaaminen Kun ohjelma haluaa lukea tai kirjoittaa tekstitiedostoon, on ohjelmalle
LoCCaM. LoCCaM Cam laitteiston ohjaaminen. Dimag Ky dimag.fi
LoCCaM LoCCaM Cam laitteiston ohjaaminen Dimag Ky janne.koski @ dimag.fi +358505907788 Laitteen lisääminen sovellukseen Sovelluksen pääsivulta valitaan oikeasta yläkulman valikosta Aloita uusi (1) Aukeavaan
Lohtu-projekti. Testiraportti. Versiohistoria: syklin toteutuksen testit. 1. ajo Virve
Lohtu-projekti Testiraportti Versiohistoria: 1.0 6.5.2003 2. syklin toteutuksen testit. 1. ajo Virve Helsinki 6. toukokuuta 2003 Kimmo Airamaa, Andreas Asuja, Mari Muuronen, Seppo Pastila, Virve Taivaljärvi
Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti
Tik-76.115 Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu TESTITAPAUKSET LiKe Liiketoiminnan kehityksen tukiprojekti Versio: 2.1 Tila: hyväksytty Päivämäärä: 13.2.2001 Tekijä:
Osaamispassin luominen Google Sites palveluun
n luominen Google Sites palveluun Mikä Osaamispassi on? Osaamispassi auttaa kertomaan taidoistasi, koulutuksestasi, työkokemuksestasi ja sinua kiinnostavista asioista työnantajalle kun haet työtä. Osaamispassi