Hypermedian ohjelmointi, kevät 2009
|
|
- Jaakko Hovinen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Hypermedian ohjelmointi, kevät 2009 ( Luento 4. Verkkopalvelun toteuttaminen Jukka Huhtamäki, Hlab ( Luento 4. Verkkopalvelun toteuttaminen Luentokerran aikana käydään läpi lisää verkkopalvelun toteuttamiseen liittyviä yleisiä tosiasioita Mitkä tekijät asettavat reunaehtoja verkkopalvelun toteutukselle? Mitä kaikkea verkkopalvelun toteutuksessa on otettava huomioon? Loppukäyttäjä: käytettävyys (käytön tehokkuus ja virheettömyys, subjektiivinen tyytyväisyys) & saavutettavuus,... Kehittäjä: ylläpidettävyys & päivitettävyys, muokattavuus, uudelleenkäyttö,... Perustaa yleistämiselle Miten verkkopalvelun tyypilliset toiminnot toteutetaan? Kertausta: Verkkopalvelun toiminnallisuus perustuu lomakkeisiin, joten yksittäisten toimintojen toteuttaminen on pääpiirteissään samanlaista sovelluksesta toiseen Toteutustyön tueksi on olemassa valmiita suunnittelumalleja ja sovelluskehyksiä: tyhjästä on yleensä turha aloittaa Tutustutaan ensin tarkemmin verkkopalvelun toteutustyön reunaehtoihin eri näkökulmista ja käydään sitten läpi esimerkkejä siitä, miten reunaehdot voidaan ottaa huomioon käytännön toteutustyössä
2 Näkökulmia verkkopalvelun toteutukseen Kertausta: Sovelluksen käytettävyyden kriteerejä loppukäyttäjän näkökulmasta (ISO 9241): käyttäminen helppo oppia, käyttäminen on tehokasta (noviisi vs. ekspertti), helposti muistettavissa, aiheuttaa vähän virheitä ja on mukava käyttää. Teknisiä reunaehdoja Teknisen toteutuksen kriteerejä: Kustannustehokkuus, luotettavuus ja yhdenmukaisuus (Welling & Thompson) Päivitettävyys, siirrettävyys, uudelleenkäyttö, yhteensopivuus, virhesietoisuus (ohjelmistotuotanto) Tutustutaan seuraavaksi hieman tarkemmin siihen, miten kriteerit voidaan ottaa huomioon verkkopalvelun teknisessä toteutuksessa.
3 Heuristiikan noudattaminen: muistilistaa (1/4) Nielsenin heuristisen listaan ( nojautuva luettelo laadukkaan ohjelmallisen hypermediatoteutuksen piirteistä: Järjestelmän tila: Palveluun kirjautuneen käyttäjän tunnus/nimi näytetään sovelluksen käyttöliittymässä (+ mahdollisuus uloskirjautumiseen) Käyttäjän sijainti sovelluksessa: mukautuva valikko tai murupolku Portaali: kooste järjestelmän tilasta käyttäjän mieltymysten perusteella Järjestelmän käsitteet vs. käyttäjä: Human-Computer Interaction (HCI) ja käyttäjäkeskeinen suunnittelu Toiminnallisuuden ja teknisen suunnittelun erottaminen Käsitteiden testaaminen prototyyppien avulla Heuristiikan noudattaminen: muistilistaa (2/4) Toimintojen peruuttaminen: Esikatselu ja hyväksyminen Mahdollisuus syötetyn tiedon muokkaamiseen/poistamiseen Peruuta-toiminnon toteuttaminen hankalaa, etenkin jälkikäteen! Toimintojen systemaattisuus: Yhtenäisyys: sivupohjat ja kielitiedostot Kirjastojen toteuttaminen käyttöliittymien tuottamiseen, käyttöliittymän irrottaminen toimintalogiikasta Käyttövirheiden ennakointi ja ennaltaehkäisy Ohjeet ja opasteet, käyttöliittymäsuunnittelu,... Testaaminen (prototyypit)! Iteratiivinen ohjelmistokehitys
4 Heuristiikan noudattaminen: muistilistaa (3/4) Käyttö havaitsemista, ei ulkoa muistamista: Ohjeet ja opasteet, käyttöliittymäsuunnittelu,... Hakutoiminto: tiedon visualisointi vs. avainsanahaku Eksperteille tehokkaita menetelmiä: Käyttäjäroolit Mukautuva hypermedia Korkean vuorovaikutuksen käyttöliittymät Pieni on kaunista: Yksinkertainen asiakas, käyttöliittymäsuunnittelu Yksinkertaisen verkkopalvelun suunnitteleminen on huomattavasti työläämpää kuin monimutkaisen! Heuristiikan noudattaminen: muistilistaa (4/4) Selkeät virheviestit: Tieto siitä, missä virhe on ja ohjeet virheen korjaamiseksi Ohjeet ja dokumentaatio saatavilla: Verkkopalvelun käyttöliittymässä on riittävästi tilaa siihen, että suuri osa ohjeista voidaan upottaa suoraan sovellukseen Oletukset julkaisukontekstista (käyttäjä, päätelaite & verkkoyhteys, tuki skripteille tai evästeille, välttämättömät selainlaajennukset,...) on aina kerrottava käyttäjälle Sovellusten arviointiin tarkoitettuja heuristiikkoja voi vapaasti käyttää apuvälineenä myös sovelluksen suunnittelutyössä
5 Lomakkeet ja syötteen käsittely Verkkopalvelun toiminto sisältää tyypillisesti seuraavat vaiheet: 1. Käyttäjä syöttää toiminnon edellyttävät tiedot lomakkeeseen ja lähettää lomakkeen sovellukselle 2. Sovellus ottaa pyynnön vastaan ja tarkastaa (validoi) syötteen Syötteen ollessa laillinen: Syötteen perusteella valitaan osa sovelluksen tietosisällöstä (turvallinen toiminto, ~haku) tai muutetaan sovelluksen tilaa (ei-turvallinen toiminto, ~tilaus) Käyttäjä ohjataan uuteen näkymään, jossa kerrotaan toiminnon onnistumisesta ja näytetään haun tulos tai sovelluksen uusi tila Syötteen ollessa virheellinen: Käyttäjä ohjataan takaisin näkymään, jossa virhe on tapahtunut. Näkymään liitetään korjausehdotuksen sisältävä virheilmoitus ja korostetaan virheellisen syötteen sisältävä lomakkeen komponentti tai komponentit Syötteen tarkastaminen Reunaehtoja syötteen laillisuudelle: Tietokanta: syötteen pakollisuus (pääavain tai not null), sarakkeen sisällön maksimikoko tai yksikäsitteisyys (pääavain) Määrämuoto: sähköpostiosoite, henkilötunnus, päivämäärä, viitenumero, ISBN-tunnus, URI,... Laillinen syöte määritellään usein osana sovelluksen toiminnallista määrittelyä (vrt. HYTT)
6 Säännölliset lausekkeet Keino syötteen tarkastamiseen: säännölliset lausekkeet (regular expressions) Määritellään merkkijonon sallittu hahmo (pattern), jota verrataan tutkittavaan merkkijonoon Säännöllisiä lausekkeita voi käyttää myös merkkijonojen etsimiseen ja korvaamiseen Syötteen pakollisuuteen ja merkkijonon pituuteen liittyvät tarkastukset voidaan toteuttaa käytössä olevan ohjelmointikielen kirjastofunktioilla Syötteen oikeellisuus voidaan joskus varmistaa myös toiminnallisuuden kautta. Miten? Säännöllisten lausekkeiden perusteet (POSIX) Säännöllisen lausekkeen hahmo koostuu merkeistä ja metamerkeistä (metacharacters) (mukailtu lähteestä Rantala, A. Web-ohjelmointi ( ): vaihtoehto ^ seuraava lauseke merkkijonon alussa $ edeltävä lauseke merkkijonon lopussa. mikä tahansa merkki (yksi) * edellisen lausekkeen toisto 0 tai useamman kerran + edellisen lausekkeen toisto 1 tai useamman kerran? edellisen lausekkeen toisto 0 tai 1 kertaa () lausekkeen ryhmittely (ja varastointi) [] merkkijoukko {} edellisen lausekkeen toisto vähintään n ja enintään m kertaa {n,m} \ metamerkin merkityksen poisto
7 Esimerkki säännöllisestä lausekkeesta Päivämäärän sallituksi muodoksi voidaan määritellä esimerkiksi yyyy-mm-dd (Lähde: Esimerkki hahmosta: ^[0-9]{4}-[01][0-9]-[0-3][0-9]$ merkkijono alkaa (^) tasan neljällä merkillä ({4}) joukosta (0, 1, 2, 3,..., 9) viidentenä merkkinä on pakollinen väliviiva (-) kuukauden ensimmäinen numero on aina 0 tai 1 ([01]) ja toinen välillä 0-9 pakollinen väliviiva (-) päivämäärän ensimmäinen ([0-3]) ja toinen ([0-9]) numero lopussa ei muita merkkejä ($) Huomaa, että tavalliselta käyttäjältä (noviisi) ei voi vaatia päivämäärän kirjoittamista tietyssä muodossa (vaihtoehdot!). Tehokäyttäjä on asia erikseen (ohjeistus) Säännöllisten lausekkeiden ideat tulevat vastaan myös esimerkiksi formaalien kielten ja UNIX-tehokäytön yhteydessä (grep) Esimerkki: Syötteen tarkastaminen ja CakePHP CodeIgniter, CakePHP ja muut sovelluskehykset pyrkivät automatisoimaan myös syötteen tarkastamisen, vrt. CakePHP-esimerkki: <?php class User extends AppModel { var $name = 'User'; var $validate = array( 'login' => '/[a-z0-9\_\-]{3,}$/i', 'password' => VALID_NOT_EMPTY, ' ' => VALID_ , 'born' => VALID_NUMBER); }?> Esimerkiksi CodeIgniter toteuttaa vastaavan mekanismin ( user_guide/libraries/validation.html).
8 Huomioita esimerkistä Muutamia huomioita esimerkistä: CakePHP käyttää syötteen tarkastamiseen Perl-kielen säännöllisiä lausekkeita (Perl-Compatible Regular Expressions, PCRE) POSIXkieliopin sijaan. Syötteen validointi tapahtuu Malli (model)-tyyppisessä luokassa: Tieto syötteen virheellisyydestä välitetään Ohjain-tyyppiselle luokalle funktion paluuarvona. Vieläkin elegantimpi olisi vaihtoehto poikkeusmekanismin soveltaminen. Syöte, tietoturva ja PHP Vihamielinen käyttäjä voi horjuttaa sovelluksen tietoturvaa monella tavalla: Tietokanta: Syötteeseen voidaan lisätä merkkejä, jotka mahdollistavat SQL-komentojen välittämisen suoraan tietokantaan. Ratkaisu: addslashes()- ja stripslashes()-funktiot Komentotulkki: Syötteeseen voidaan lisätä merkkejä, jotka mahdollistavat käskyjen välittämisen komentotulkille (shell). Ongelma silloin, kun PHPohjelma välittää syötteen komentoriviohjelmalle. Ratkaisu: escapeshellcmd()-funktio HTML-käyttöliittymä: Syötteeseen voidaan lisätä merkkejä, jotka sotkevat sovelluksen käyttöliittymän. Ongelma syntyy silloin, kun käyttäjän syöte tulostetaan takaisin käyttöliittymään (esimerkiksi keskustelupalsta tai vieraskirja). Ratkaisu: strip_tags()- ja htmlspecialchars()-funktiot Verkkopalvelun tietoturvallisen toteutuksen perusteisiin kuuluu lisäksi HTTPSprotokollan käyttäminen kaiken arkaluontoisen tiedon välittämiseen asiakkaan ja palvelimen välillä. HTTPS-protokollan käyttö estää tietojen selvittämisen tietoliikennettä kuuntelemalla. HTTPS-protokollan yli välitettyjä tietoja ei myöskään säilytetä selaimen välimuistissa.
9 Merkistöt: taustaa Merkistöt aiheuttavat ongelmia sovelluksen toteuttajalle ja käyttäjälle. Taustaa: Web-sovellusta voi käyttää mistä tahansa maailman kolkasta Eri kielissä ja käyttöympäristöissä on käytössä erilaiset merkistöt Eri merkistöt esitetään eri tavalla tietokoneen muistissa Kolmikerrosarkkitehtuuri: merkistöt on otettava huomioon sekä merkkijonojen esittämisessä, käsittelyssä että tallentamisessa Merkistöjä Yleisiä merkistöjä: ASCII: merkkien esittämiseen käytössä 7 bittiä, käyttäjälle näytettäville merkeille (A-Z, a-z, 0-9) annettu arvot väliltä ISO : ASCII-laajennos, joka sisältää mm. skandinaaviset merkit ÅÄÖåäö. ISO sisältää myös euro-merkin ( ). Merkkien esittämiseen 8 bittiä Unicode: Standardi, joka mahdollistaa kaikkien maailman merkkien esittämisen yhdellä ja samalla merkistöllä. Useita tapoja merkkien koodaamiseen: UTF-8, UTF-16, UCS-2 Esimerkiksi UTF-8 käyttää yhden merkin esittämiseen joko yhden tai useampia tavuja. Tämä aiheuttaa ongelmia kun asiaa huomioida sovelluksen toteutuksessa. Esimerkkejä: yksi merkki vie useamman merkin tilan tietokannassa ja tietosisällön korkein sallittu pituus ylittyy liian aikaisin.
10 Ongelmia ja yleinen ratkaisu Merkistöongelmaan on olemassa ainakin periaatteellinen ratkaisu: 1. Valitaan sovelluksen sisäiseen toteutukseen merkistö, jonka avulla pystytään esittämään mahdollisimman suuri joukko yksittäisiä merkkejä (=Unicode, esim. UTF-8) 2. Muunnetaan käyttäjän syöte ja muu sovellukseen tuotava tietosisältö valittuun merkistöön ja oletetaan merkistön käyttö sovelluksen sisäisessä toteutuksessa (ohjelmakoodi & tietokanta) Huomaa, että sovelluksen näkymissä voidaan käyttää eri merkistöä kuin sovelluksen sisäisessä toteutuksessa. Joel Spolskyn The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) ( on ehdottoman suositeltavaa luettavaa! Merkkijonot ja PHP PHP-kieli on kehittynyt käytännön tarpeista. Tästä syystä kielen kehitys on ollut välillä enemmän suunnitelmallista, välillä taas vähemmän. Merkistöjen näkökulmasta tiedossa on ongelmia (lähde: php.net): A string is series of characters. In PHP, a character is the same as a byte, that is, there are exactly 256 different characters possible. This also implies that PHP has no native support of Unicode. See utf8_encode() and utf8_decode() for some Unicode support. Siis: paras mahdollinen vaihtoehto, Unicoden käyttäminen sovelluksen sisäisessä toteutuksessa, ei ole (suoraviivaisesti) mahdollista. Avuksi voidaan ottaa PHP-kielen mbstring-laajennus sisältää joukon funktioita, jotka mahdollistavat myös Unicode-merkistöä käyttävien merkkijonojen käsittelemisen Karvalakkiratkaisu: otetaan käyttöön PHP-funktiot utf8_encode() ja utf8_decode() ja HTML-kielen accept-charset attribuutti. Ongelmia: UTF-8 ei ole ainoa tapa merkistön koodaamiseen, ratkaisun selainriippuvuus. Teknologiakatsaus: Python-kieli (ja siten Django) tukee Unicodea. Ruby on Rails versio 1.2 esitteli kehyksen aikaisemmista versioista puuttuneen Unicode-tuen.
11 Tyytyväinen sovelluskehittäjä => Tyytyväinen loppukäyttäjä? Koodin uudelleenkäyttö Koodin uudelleenkäytöllä on useita lisäarvoja sovelluksen toteutustyössä: Kustannustehokkuus: Sovelluksen moduulin M ylläpitämiseen, testaamiseen ja dokumentointiin keskimäärin kuluva aika on toteuttamiseen verrattuna moninkertainen Ylläpidettävän koodin määrä on pyrittävä pitämään mahdollisimman pienenä Luotettavuus: Moduulin luotettavuuden varmistaminen edellyttää kattavaa testaamista Testaamisesta huolimatta koodiin voi jäädä ohjelmointivirheitä, jotka paljastuvat ajan myötä Yhdenmukaisuus: Sovelluksen käyttöliittymien (ja muiden rajapintojen) yhdenmukainen toteuttaminen esimerkiksi tyylioppaan perusteella on työlästä Modulaarinen toteutus mahdollistaa koodin uudelleenkäytön
12 Koodin uudelleenkäyttö ja PHP PHP-kieli mahdollistaa koodin uudelleenkäytön moduulien ja funktioiden tuella: include() ja require(): tiedoston sisällyttäminen toiseen PHP-tiedostoon. Ero: ensimmäinen aiheuttaa epäonnistuessaan varoituksen (warning), jälkimmäinen virheen (error) include_once() ja require_once(): vastaavia kuin edelliset, mutta sisällyttäminen tapahtuu ainoastaan kerran Käyttötapauksia: Omat funktiokirjastot: HTML-merkkauksen tulostaminen, tietokantayhteyden avaaminen, syötteen tarkastaminen,... => include_once() Sivupohjan (header.php ja footer.php) ja muiden yleisten HTMLrakenteiden irrottaminen omaksi kokonaisuudekseen => include() PHP5 mahdollistaa yksinkertaisen moduuliperiaatteen ohella myös täysiverisen olio-ohjelmoinnin (periytyminen, paketointi, poikkeukset,...) Yksityiskohta: tietoturvan parantamiseksi arkaluontoista tietoa sisältävät sisällytettävät tiedostot kannattaa aina nimetä php-tiedostopäätteellä (miksi?) Ohjelmistotuotannon kriteerit Yleisessä ohjelmistotuotannossa sovelluksen laadulle on määritelty mm. seuraavat kriteerit: Päivitettävyys: Yleisesti: mekaanisten työtehtävien siirtäminen ihmiseltä tietokoneelle Modulaarinen suunnittelu parantaa sovelluksen päivitettävyyttä merkittävästi: HTML-merkkauksen tulostaminen, sivupohjat,... Verkkopalvelussa myös sisällön päivittämisen helppous on tärkeää Siirrettävyys: Sovelluksen toteutustekniikoiden valinta siten, että tuki löytyy mahdollisimman monelta palvelimelta Esimerkkejä: ODBC-tietokantarajapinta ja SQL-standardi (tai tekstitiedostojen käyttäminen), yleisesti käytössä olevat versiot käytettävistä ohjelmistoista ja kielistä, erillistä asennusta vaativien kirjastojen käytön välttäminen
13 Ohjelmistotuotannon kriteerit Uudelleenkäyttö: Modulaarinen suunnittelu Verkkopalvelun yleisten osien irrottaminen sovelluskohtaisista ratkaisuista Dokumentointi! Yhteensopivuus: Standardiratkaisujen käyttäminen mahdollisuuksien mukaan: validi HTML ja CSS, kuvat JPEG/GIF/PNG-muodossa Sovelluksen toteuttaminen saavutettavuuden ja laiteriippumattomuuden periaatteiden mukaisesti Sovelluksen kansainvälistäminen & mahdollisuus kotoistukseen Virhesietoisuus: Sovelluksen on toivuttava erilaisista virheistä: virheelinen syöte, tiedoston lukemisen tai kirjoittamisen epäonnistuminen, tietokantayhteyden katkeaminen Käyttäjälle virheilmoitus selvällä kielellä ja esimerkiksi toimenpidesuositukset Sovelluksen toiminnallisuuden toteuttaminen periaatteella Toimii PC:llä, mun PC:llä ei useinkaan ole järkevää, ei ainakaan verkkopalveluiden tapauksessa
14 Yhteenveto Verkkopalvelun (yleisesti hypermediasovelluksen) toteutuksessa on otettava huomioon paljon erilaisia asioita Dokumentoidun suunnittelun merkitys korostuu Perinteisen vesiputousmallin mukaisen prosessin sijaan on usein perusteltua käyttää iteraviisia suunnittelu- ja toteutusmenetelmiä: prototypointi tai ketterä ohjelmistokehitys (agile software development) Suunnittelutyössä ja valmiin sovelluksen arvioinnissa kannattaa käyttää apuna erilaisia heuristiikkoja ja muistilistoja Avaintekijä sovelluksen toteutuksen laadun edistämisessä on modulaarinen suunnittelu. Asia kannattaa pyrkiä ottamaan huomioon jo harjoitustyön toteutuksessa Käyttäjän syötteeseen liittyvät asiat aiheuttaa paljon sovelluksen tekijälle. Valtaosa lomakkeeseen perustuvat toiminnallisuuden toteuttamiseen kuluvasta ajasta on käytettävä syötteen tarkastamis- ja käsittelyrutiineihin Suunnittelumallien (design patterns) ja sovelluskehysten (application framework) avulla voidaan entisestään tehostaa toteutustyötä. Molempiin palataan vielä luentojen kuluessa
4 Verkkopalvelun toteuttaminen
4 Verkkopalvelun toteuttaminen Luentokerran aikana käydään läpi lisää verkkopalvelun toteuttamiseen liittyviä yleistyksiä Mitkä tekijät asettavat reunaehtoja verkkopalvelun toteutukselle? Mitä kaikkea
Lisätiedot4 Verkkopalvelun toteuttaminen
Tällä kerralla on tavoitteena käydä läpi verkkopalvelun toteuttamiseen liittyviä asioita Mitkä tekijät asettavat reunaehtoja verkkopalvelun toteutukselle? Mitä kaikkea verkkopalvelun toteutuksessa on otettava
Lisätiedot4 Verkkopalvelun toteuttaminen
4 Verkkopalvelun toteuttaminen Tällä kerralla on tavoitteena käydä läpi verkkopalvelun toteuttamiseen liittyviä asioita Mitkä tekijät asettavat reunaehtoja verkkopalvelun toteutukselle? Mitä kaikkea verkkopalvelun
Lisätiedot3 Verkkopalveluarkkitehtuuri
3 Verkkopalveluarkkitehtuuri Verkkopalvelun arkkitehtuuri perustuu yleisesti asiakas-palvelin -malliin Tietokantapohjaisessa (verkko)palvelussa asiakas-palvelin -malli toimii seuraavasti: 1. Käyttäjä käyttää
Lisätiedot3 Verkkopalveluarkkitehtuuri
3 Verkkopalveluarkkitehtuuri Luentokerran tavoitteena on perehtyä verkkopalveluarkkitehtuurin yleisiin periaatteisiin ja kaikille verkkopalveluille yhteisiin toimintoihin ja ominaisuuksiin: Tietokantapohjainen
Lisätiedot3 Verkkopalveluarkkitehtuuri
3 Verkkopalveluarkkitehtuuri Luentokerran tavoitteena on perehtyä verkkopalveluarkkitehtuurin yleisiin periaatteisiin ja kaikille verkkopalveluille yhteisiin toimintoihin ja ominaisuuksiin: Tietokantapohjainen
Lisätiedot9 Edistynyt PHP-ohjelmointi
9 Edistynyt PHP-ohjelmointi Luentokerran tavoitteena on käydä läpi joukko sellaisia PHP-sovelluksen toteuttamiseen liittyviä tekijöitä, joiden avulla voidaan parantaa verkkopalvelun totetustyön tuottavuutta
LisätiedotKäytettävyys verkko-opetuksessa Jussi Mantere
Käytettävyys verkko-opetuksessa 21.8.2002 Jussi Mantere Mitä käytettävyys on? Learnability (opittavuus) Efficiency (tehokkuus) Memorability (muistettavuus) Errors prevented (virheiden tekeminen estetty)
LisätiedotTekninen 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ätiedotUudelleenkä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ätiedot5 Verkkopalvelun sisällön hallinta
5 Verkkopalvelun sisällön hallinta Hypermediasovelluksen tärkeä erityispiirre on se, että hypermediasovelluksella on aina jokin sisältö Sisältö on verkkopalvelun hyödyllisyyden tärkein yksittäinen tekijä.
LisätiedotMitä käytettävyys on? Käytettävyys verkko-opetuksessa. Miksi käytettävyys on tärkeää? Mitä käytettävyys on? Nielsen: käytettävyysheuristiikat
Mitä käytettävyys on? Käytettävyys verkko-opetuksessa 21.8.2002 Jussi Mantere Learnability (opittavuus) Efficiency (tehokkuus) Memorability (muistettavuus) Errors prevented (virheiden tekeminen estetty)
LisätiedotOhjelmoinnin 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
LisätiedotKurssin hallinta -työväline
Kurssin hallinta -työväline Kurssin hallinta -työvälineellä muokataan kursseja A&Ooppimisympäristöalustalla Kurssi koostuu - ohjelmasta (linkit työkaluihin& muihin resursseihin), - materiaaleista, - keskusteluryhmästä,
LisätiedotELM 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ätiedotSisä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ätiedotArkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 0.4 1.11.2007 Matti Eerola 0.3 18.10.2007 Matti Eerola 0.2
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 28.2.2011 T-106.1208 Ohjelmoinnin perusteet Y 28.2.2011 1 / 46 Ohjelmointiprojektin vaiheet 1. Määrittely 2. Ohjelman suunnittelu (ohjelman rakenne ja ohjelman
Lisätiedot2 Web-lomakkeet. HTML-lomakkeet. Lomakkeiden perusteet
Web-lomakeet ovat verkkopalvelun tekninen perusta; käyttäjän syötteen välittäminen tapahtuu käytännössä aina lomakkeiden avulla Esimerkkejä lomakkeiden käytöstä: yksinkertaiset toiminnot: palautelomake,
Lisätiedot13/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ätiedotOhjelmointikielet ja -paradigmat 5op. Markus Norrena
Ohjelmointikielet ja -paradigmat 5op Markus Norrena Ko#tehtävä 4 Viimeistele "alkeellinen kuvagalleria". Käytännössä kaksi sivua Yksi jolla voi ladata kuvia palvelimelle (file upload) Toinen jolla ladattuja
LisätiedotTekninen 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ätiedotHarjoitus 5 (viikko 48)
Moni tämän harjoituksen tehtävistä liittyy joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Harjoitustyö edistyy sitä paremmin, mitä enemmän tehtäviä ratkaiset. Mikäli tehtävissä on jotain
LisätiedotHeuristisen arvioinnin muistilista - lyhyt versio
Alla oleva kymmenkohtainen muistilista on sovellettu Jakob Nielsenin heuristisen arvioinnin muistilistasta (Nielsen, 1994), hyödyntäen Keith Instonen wwwpalveluiden arviointiin muokattua samaista listaa
LisätiedotDatatähti 2019 alku. task type time limit memory limit. A Kolikot standard 1.00 s 512 MB. B Leimasin standard 1.00 s 512 MB
Datatähti 2019 alku task type time limit memory limit A Kolikot standard 1.00 s 512 MB B Leimasin standard 1.00 s 512 MB C Taulukko standard 1.00 s 512 MB D Ruudukko standard 1.00 s 512 MB E Sanalista
LisätiedotCopyright by Haikala. Ohjelmistotuotannon osa-alueet
Copyright by Haikala Ohjelmistotuotannon osa-alueet Ohjelmiston elinkaari 1. Esitutkimus, tarvekartoitus, kokonaissuunnittelu, järjestelmäsuunnittelu (feasibility study, requirement study, preliminary
Lisätiedothttp://www.soberit.hut.fi/t-121/t-121.100 !!" # $ %!"! " # $ " $ %& '( ) * * * +$, * ' # % ## # & # ' # # ( # %)* &(+%,-!###" )-..-( -.-'..(/. "&%/ "0 / 1"0 / # # % 2 ) / * & 3. 0-. -. ( (-. 2 ) $ )-..-(
LisätiedotLiite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu
Liite 1: skenaariot ja PoC tulokset 1. Palvelun kehittäjän näkökulma Tilanne Vaatimus Ongelma jos vaatimus ei toteudu Palvelun uusi versio on Palveluiden kehittäminen voitava asentaa tuotantoon vaikeutuu
LisätiedotOhjelmiston testaus ja laatu. Testaustasot
Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu
LisätiedotVisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu
HAAGA HELIA/IltaTiko ICT2TD005: Ohjelmisto suunnittelutaito 1 VisualStudio Pikaopas, osa 1: WEB sivujen suunnittelu Tämä pikaopas opastaa käyttämään VisualStudion web sivujen suunnittelu ja toteutusominaisuuksia.
LisätiedotTIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 19. tammikuuta 2012
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 19. tammikuuta 2012 Sisällys Sisällys Muistathan A B -konstruktion 0 k 1 i 2 s 3 s 4 a 5 0 k 1 o 2 i 3 r 4
LisätiedotTOIMINNALLINEN 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ätiedotOleelliset vaikeudet OT:ssa 1/2
Oleelliset vaikeudet OT:ssa 1/2 Monimutkaisuus: Mahdoton ymmärtää kaikki ohjelman tilat Uusien toimintojen lisääminen voi olla vaikeaa Ohjelmista helposti vaikeakäyttöisiä Projektiryhmän sisäiset kommunikointivaikeudet
LisätiedotKÄYTETTÄVYYSPÄIVÄ Meeri Mäntylä (sis. osia Anne Pirisen esityksestä) KÄYTETTÄVYYS. Mitä merkitystä sillä on?
PÄIVÄ 10.4.2013 Meeri Mäntylä (sis. osia Anne Pirisen esityksestä) Mitä käytettävyys on? Mitä merkitystä sillä on? Mitkä ovat suurimmat haasteet sen saavuttamikseksi? 1 Mitä se on? 1/3 Tuotteen käytettävyys
LisätiedotOhjelmistojen suunnittelu
Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer
LisätiedotOhjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 1.3.2010 T-106.1208 Ohjelmoinnin perusteet Y 1.3.2010 1 / 36 Monikko Monikko (engl. tuple) muistuttaa listaa, mutta monikon sisältöä ei voi muuttaa sen jälkeen,
LisätiedotITK130 Ohjelmistojen luonne
ITK130 Ohjelmistojen luonne Luennon sisältö Ohjelmistotekniikka ja vaatimukset Ohjelmistotuote Ei-toiminnallisten vaatimusten luokittelu Sisäiset ja ulkoiset vaatimukset Oikeellisuus Luotettavuus Kestävyys
LisätiedotT Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta
T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä
LisätiedotOnnistunut ohjelmistoprojekti
Onnistunut ohjelmistoprojekti ICT-ajankohtaisseminaari 15.4.2009 Hermanni Hyytiälä Reaktor Innovations Oy Agenda Yritysesittely Keinoja onnistuneeseen ohjelmistoprojektiin Ihmiset Menetelmät Käytännöt
LisätiedotTehtävä 2: Säännölliset lausekkeet
Tehtävä 2: Säännölliset lausekkeet Kun tietokoneohjelmalla luetaan käyttäjän syötettä, olisi syöte aina syytä tarkistaa. Syötteessä voi olla vääriä merkkejä tai merkkejä väärillä paikoilla (syntaktinen
LisätiedotOnnistunut ohjelmistoprojekti
Onnistunut ohjelmistoprojekti 2.12.2008 Hermanni Hyytiälä Reaktor Innovations Oy Agenda Yritysesittely Keinoja onnistuneeseen ohjelmistoprojektiin Ihmiset Menetelmät Käytännöt ja työkalut Tulevaisuuden
Lisätiedot11 Valmiit ratkaisut. 11 Valmiit ratkaisut
11 Valmiit ratkaisut Kurssi lähestyessä loppuaan nostetaan tarkastelutasoa ja perehdytään muutamaan valmiiseen ratkaisuun. Tarkasteluun on kaksi perustetta: Vertailututkimus (bencmarking): Lainaa hyvät
LisätiedotUudistettu käyttöliittymä osoitteessa https://validointipalvelu.kanta.fi
Tutustu n palvelukuvaukseen ennen palvelun käyttöä (esim. rekisteröityminen palveluun ym. palvelun käyttöön liittyvät seikat). Palvelukuvaus on saatavissa www.kanta.fi -sivustolla http://www.kanta.fi/fi/web/ammattilaisille/testaus
LisätiedotTestausdokumentti. 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ätiedotGood Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi
Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi Versiohistoria: Versio: Pvm: Laatijat: Muutokset: 0.1 2006-11-25 Janne Mäkelä Alustava 1.0 2006-12-10 Janne Mäkelä Valmis 1.
LisätiedotToimilohkojen turvallisuus tulevaisuudessa
Toimilohkojen turvallisuus tulevaisuudessa Turvallisuusseminaari ASAF 30.10-1.11.2006 Mika Strömman Teknillinen korkeakoulu 1 Sisältö Luotettavuuden lisääminen hyvillä tavoilla Toimilohkokirjastot Turvatoimilohkot
LisätiedotHELIA 1 (12) Outi Virkki Tiedonhallinta 4.11.2000
HELIA 1 (12) Luento 4.3 Eheyssäännöt (Integrity Constraints)... 2 Eheyden valvonta... 3 Yksilön eheyssääntö... 4 Viite-eheyssäännöt... 5 Arvojoukkoeheyssäännöt... 8 Null-arvoista... 10 Sovelluskohtaiset
LisätiedotARVO - verkkomateriaalien arviointiin
ARVO - verkkomateriaalien arviointiin Arvioitava kohde: Jenni Rikala: Aloittavan yrityksen suunnittelu, Arvioija: Heli Viinikainen, Arviointipäivämäärä: 12.3.2010 Osa-alue 7/8: Tekninen toteutus Edellinen
LisätiedotKäytettävyyslaatumallin rakentaminen verkkosivustolle
Käytettävyyslaatumallin rakentaminen verkkosivustolle Tapaus kirjoittajan ABC-kortti Oulun yliopisto tietojenkäsittelytieteiden laitos pro gradu -tutkielma Timo Laapotti 9.6.2005 Esityksen sisältö Kirjoittajan
LisätiedotK U U L A L A A K E R I LUOTTAMUKSELLINEN 1(6)
K U U L A L A A K E R I LUOTTAMUKSELLINEN 1(6) Messto HTTP API Messto HTTP API on sovelluskehittäjiä varten kehitetty helppo tapa toteuttaa tekstiviesti- ja multimediaviestisovelluksia. Rajapinnan avulla
LisätiedotOhjelmoinnin perusteet, syksy 2006
Ohjelmoinnin perusteet, syksy 2006 Esimerkkivastaukset 1. harjoituksiin. Alkuperäiset esimerkkivastaukset laati Jari Suominen. Vastauksia muokkasi Jukka Stenlund. 1. Esitä seuraavan algoritmin tila jokaisen
Lisätiedot8 Hypermedian suunnitteleminen
8 Hypermedian suunnitteleminen 8 Hypermedian suunnitteleminen Mietitään seuraavaksi hypermediaa teknisen suunnittelun näkökulmasta. Käytettävyyteen liittyvään suunnitteluun palataan myöhemmin kurssilla.
LisätiedotEMCS-järjestelmän sanomarajapinnan toiminnallinen kuvaus asiakkaille 13.6.2008. Meeri Nieminen
EMCS-järjestelmän sanomarajapinnan toiminnallinen kuvaus asiakkaille 13.6.2008 Meeri Nieminen Asiakkaan vaihtoehdot Asiakkaan vaihtoehdot EMCS-järjestelmän käyttöön XML-sanomarajapinta oman järjestelmän
LisätiedotProjektinhallintaa paikkatiedon avulla
Projektinhallintaa paikkatiedon avulla Tampereen Teknillinen Yliopisto / Porin laitos Teemu Kumpumäki teemu.kumpumaki@tut.fi 25.6.2015 1 Paikkatieto ja projektinhallinta Paikkatiedon käyttäminen projektinhallinnassa
LisätiedotTestidatan generointi
Testidatan generointi Anu Ahonen Kevät 2008 Tämä työ on tehty Creative Commons -lisenssin alla Työn tarkasti 9.4.2008 Jouni Huotari (JAMK/IT) 1 SISÄLTÖ 1 TYÖN LÄHTÖKOHDAT JA TOTEUTUS...2 2 TESTIDATAN GENEROINTI
LisätiedotNimi: Opnro: Harjoitustyön suoritus: ( ) syksy 2006 ( ) syksy 2005 ( ) muu, mikä. 1. Selitä seuraavat termit muutamalla virkkeellä ja/tai kaaviolla:
Harjoitustyön suoritus: ( ) syksy 2006 ( ) syksy 2005 ( ) muu, mikä 1. Selitä seuraavat termit muutamalla virkkeellä ja/tai kaaviolla: a) käytettävyys b) käyttäjäkeskeinen suunnittelu c) luonnollinen kieli
LisätiedotLoCCaM Riistakamerasovellus. Dimag Ky dimag.fi
LoCCaM Riistakamerasovellus Dimag Ky janne.koski @ dimag.fi +358505907788 Sovelluksen toimintaperiaate Toimintaperiaate yksinkertaistettuna on seuraavanlainen Kamera ottaa kuvan tai videon jonka lähettää
LisätiedotTUTKIMUKSEN LÄHTÖKOHTIA, TOTEUTUS ja HYÖDYT Kalle Saastamoinen Lappeenrannan Teknillinen Yliopisto LTY 2003
KÄYTETTÄVYYDEN TUTKIMISELLAKO TOIMIVAMMAT WWW-SIVUT? TUTKIMUKSEN LÄHTÖKOHTIA, TOTEUTUS ja HYÖDYT Kalle Saastamoinen Lappeenrannan Teknillinen Yliopisto LTY 2003 Sisältö Mitä on tarkoitetaan sanalla käytettävyys
LisätiedotTIE Ohjelmistojen suunnittelu
TIE-20200 Ohjelmistojen suunnittelu Luento 8: Lokalisointia/kansainvälistystä TIE-20200 Samuel Lahtinen 1 Ajankohtaista Viimeiset viikkoharkat tarjolla, aiheena kansainvälistäminen/lokalisointi Viikkoharkkoja
LisätiedotTIE Ohjelmistojen suunnittelu
TIE-20200 Ohjelmistojen suunnittelu Luento 12: Lokalisointia/kansainvälistystä TIE-20200 Samuel Lahtinen 1 Sisältöä Kansainvälistäminen/lokalisointi Mitä asioita voi liittyä kansainvälistämiseen/lokalisointiin?
LisätiedotKääntäjän virheilmoituksia
OHJ-1101 Ohjelmointi 1e 2008-09 1 Kääntäjän virheilmoituksia Kun progvh2 ohjelma käännetään antaa tutg++ seuraavat virheilmoitukset ja varoitukset: proffa> tutg++ progvh2.cc progvh2.cc:29:13: warning:
LisätiedotOhjelmiston 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ätiedotArkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14
Arkkitehtuurikuvaus Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy Ryhmä 14 Muutoshistoria Versio Pvm Päivittäjä Muutos 1.0 19.10.2007 Suanto 0.3 18.10.2007 Matti Eerola 0.2 17.10.2007
LisätiedotOhjelmistojen 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,
Lisätiedot2 Web-lomakkeet. HTML-lomakkeet. Lomakkeiden perusteet
Web-lomakeet ovat verkkopalvelun tekninen perusta; käyttäjän syötteen välittäminen tapahtuu käytännössä aina lomakkeiden avulla Esimerkkejä lomakkeiden käytöstä: yksinkertaiset toiminnot: palautelomake,
LisätiedotTIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit
TIE-20100 Tietorakenteet ja algoritmit 1 TIE-20100 Tietorakenteet ja algoritmit TIE-20100 Tietorakenteet ja algoritmit 2 Lähteet Luentomoniste pohjautuu vahvasti prof. Antti Valmarin vanhaan luentomonisteeseen
LisätiedotOhjelmistojen 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ätiedotKÄYTETTÄVYYSPÄIVÄ
KÄYTETTÄVYYSPÄIVÄ 29.3.2007 Anne Pirinen Meeri Mäntylä KÄYTETTÄVYYSPÄIVÄ Aikataulu 9.15-11.30, Ag C134.1 Luento-osuus 11.30-12.15 Lounastauko 12.15-14.00, projektitilat Ryhmätöiden teko 14.15-15.45, Ag
LisätiedotTapahtumakalenteri & Jäsentietojärjestelmä Toteutus
Tapahtumakalenteri & Jäsentietojärjestelmä Toteutus Henri Kinnunen, Seppo Tompuri, Tero Malkki, Matti Heiskanen, Tommi Rönkönharju, Tuomas Valkeapää Sisällysluettelo 1. Alkusanat...2 2. Käyttötapaukset...2
Lisätiedot10 Nykyaikainen WWW-arkkitehtuuri
10 Nykyaikainen WWW-arkkitehtuuri è è è 10 Nykyaikainen WWW-arkkitehtuuri WWW on ylivoimaisesti suosituin hypertekstijärjestelmä. Käydään seuraavaksi läpi nykyaikaisen WWW-arkkitehtuurin perusteet. Vuonna
LisätiedotJä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ätiedotKieliversiointityökalu Java-ohjelmistoon. Ohje
Kieliversiointityökalu Java-ohjelmistoon Ohje 2/6 SISÄLLYSLUETTELO 1 YLEISTÄ OHJELMASTA... 3 2 PÄÄ-IKKUNA...4 3 YLÄVALIKKO... 4 3.1 TIEDOSTO... 4 3.2 TOIMINTO... 4 3.3 ASETUKSET... 5 3.4 OHJE... 5 4 VÄLILEHDET...5
LisätiedotMATHM Hypermedian ohjelmointi (4 op) kevät 2007
MATHM-57100 Hypermedian ohjelmointi (4 op) kevät 2007 Luentorunko Jukka Huhtamäki MATHM-57100 Hypermedian ohjelmointi (kevät 2007) 1 Yleisiä tietoja kevään toteutuskerrasta Opettaja: Jukka Huhtamäki (vastaanotto:
Lisätiedot10 Kohti ketterää ohjelmistokehitystä
10 Kohti ketterää ohjelmistokehitystä Perinteinen ohjelmistokehitys perustuu vesiputousmalliin, jossa tavoitteena on ensisijaisesti projektin vieminen läpi tietyssä ajassa. Sovelluksen määrittelytyö tehdään
LisätiedotMATHM Hypermedian ohjelmointi (4 op) kevät Yleisiä tietoja kevään toteutuskerrasta. Haluatko Web-ohjelmoijaksi?
kevät 2007 Luentorunko Jukka Huhtamäki Yleisiä tietoja kevään toteutuskerrasta Opettaja: Jukka Huhtamäki (vastaanotto: to 13-14) Sähköposti: jukka.huhtamaki@tut.fi Huone: TD309, matematiikan laitos / hypermedialaboratorio
Lisätiedot2. Käsiteanalyysi ja relaatiomalli
2. Käsiteanalyysi ja relaatiomalli lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Tietokannan suunnitteluprosessin osat sivu 2 Käsiteanalyysi ER-mallinnus, tietomallinnus
LisätiedotOhjelmistotekniikka - Luento 2
Ohjelmistotekniikka - Luento 2 Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento 2: Prosessimallit
LisätiedotIT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT
IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT KOULUTUKSEN KOHDERYHMÄ SISÄLTÖ Koulutuksen tavoitteena on antaa opiskelijalle valmiudet uusien tietoteknisten menetelmien ja välineiden hyödyntämiseen.
Lisätiedot582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus
582203 Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus Sisältö Mikä on web-sovellus? Selaimen rooli web-sovelluksessa Palvelimen rooli web-sovelluksessa Aineistopyynnöt Tiedon välittäminen
LisätiedotLaatu tietojärjestelmähankkeissa. Tietohallinnon kokemuksia Juha-Pekka Leskinen Atk-päällikkö Eduskunnan kanslia
Laatu tietojärjestelmähankkeissa Tietohallinnon kokemuksia Juha-Pekka Leskinen Atk-päällikkö Eduskunnan kanslia 5.10.2010 Pohdintaa tietojärjestelmien laadusta Mitä on laatu Miten laatua tavoitellaan tietojärjestelmäprojekteissa
LisätiedotTämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:
Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus
LisätiedotTIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho. 31. maaliskuuta 2011
TIEA241 Automaatit ja kieliopit, kevät 2011 (IV) Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 31. maaliskuuta 2011 Sisällys Sisällys Chomskyn hierarkia kieli säännöllinen kontekstiton kontekstinen rekursiivisesti
LisätiedotOhjelmistotekniikka - Luento 2 Jouni Lappalainen
Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento
LisätiedotTietojen syöttäminen ohjelmalle. Tietojen syöttäminen ohjelmalle Scanner-luokan avulla
Tietojen syöttäminen ohjelmalle Tähän mennessä on käsitelty Javan tulostuslauseet System.out.print ja System.out.println sekä ohjelman perusrakenneosat (muuttujat, vakiot, lauseet). Jotta päästään tekemään
LisätiedotOhjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus
Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright
LisätiedotSVTSL muuttuu käytännön soveltamis- ohjeet evästeiden käyttöön
SVTSL muuttuu 25.5. - käytännön soveltamis- ohjeet evästeiden käyttöön Verkkomainonnan tietosuoja IAB Finland Asianajaja, osakas Elina Koivumäki 12.5.2011 Taustaa evästeistä Internetin toiminnallisuudesta
LisätiedotSisällysluettelo. s.1(14) CRA Computer & Robot applications Oy. v.1.2 ESITTELY TOIMINNALLISUUS... CRA-TV HALLINTA-OHJELMA...
s.1(14) CRA Computer & Robot applications Oy v.1.2 Sisällysluettelo ESITTELY......2 TOIMINNALLISUUS......2 CRA-TV HALLINTA-OHJELMA......3 Ohjelman pääikkuna:...3 Kirjautuminen:...3 Rekisteröityminen:...4
LisätiedotJReleaser Yksikkötestaus ja JUnit. Mikko Mäkelä 6.11.2002
JReleaser Yksikkötestaus ja JUnit Mikko Mäkelä 6.11.2002 Sisältö Johdanto yksikkötestaukseen JUnit yleisesti JUnit Framework API (TestCase, TestSuite) Testien suorittaminen eri työkaluilla Teknisiä käytäntöjä
Lisätiedotvero.fi: Hankinnasta ylläpitoon Miten varmistaa saavutettavuus?
vero.fi: Hankinnasta ylläpitoon Miten varmistaa saavutettavuus? käytettävyys käyttökokemus ihmiskeskeiset suunnittelumenetelmät asiakasymmärrys ymmärrettävyys helppous nopeus yksinkertaisuus selkeys saavutettavuus
LisätiedotMitä on periytyminen?
8. Periytyminen 8.1 Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Filosofinen ja käytännönläheinen näkökulma periytymiseen. Periytymisen soveltaminen. 8.2 Mitä
LisätiedotSisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2
4. Attribuutit 4.1 Sisällys Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2 Yleistä Luokan lohkossa, mutta metodien ulkopuolella esiteltyjä
LisätiedotKäyttäjäkeskeinen suunnittelu
Käyttäjäkeskeinen suunnittelu Aapo Puskala Käytettävyystutkija, CEO User Point Oy aapo.puskala@userpoint.fi www.userpoint.fi Aapo Puskala Käytettävyystutkija, CEO +358 40 722 0706 aapo.puskala@userpoint.fi
LisätiedotTIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences
TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 8 XX00AA79-3013 TU12S2 Pasi Ranne 25.9.2013 25/9/13 Helsinki Metropolia University of Applied Sciences 1 Harjoitustyö Harjoitustöiden tilanne
LisätiedotHELIA 1 (11) Outi Virkki Käyttöliittymät ja ohjelmiston suunnittelu
HELIA 1 (11) Luento 4 Käytettävyyden tuottaminen... 2 Käytettävyys ja systeemityöprosessi... 3 Määrittely... 3 Suunnittelu... 3 Toteutus ja testaus... 3 Seuranta... 3 Kriittiset tekijät käytettävyyden
LisätiedotKä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ätiedotT-111.361 Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot
T-111.361 Hypermediadokumentin laatiminen -Ohjelmointi Peruskäsitys www-ohjelmoinnin kentästä Tekniikat interaktiivisuuden toteuttamiseen tekniikat tekniikat Tietokannat Juha Laitinen TKK/TML juha.laitinen@hut.fi
LisätiedotSäännöllisten kielten sulkeumaominaisuudet
Säännöllisten kielten sulkeumaominaisuudet Osoitamme nyt, että säännöllisten kielten joukko on suljettu yhdisteen, konkatenaation ja tähtioperaation suhteen. Toisin sanoen jos A ja B ovat säännöllisiä,
LisätiedotT-76.115 Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta
T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä
LisätiedotToinen harjoitustyö. ASCII-grafiikkaa 2017
Toinen harjoitustyö ASCII-grafiikkaa 2017 Yleistä Tehtävä: tee Javalla ASCII-merkkeinä esitettyä grafiikkaa käsittelevä ASCIIArt17-ohjelma omia operaatioita ja taulukoita käyttäen. Työ tehdään pääosin
Lisätiedot