torstai 2. helmikuuta 2012

Vaatimusmäärittely

 Sisällys
1. Johdanto   
1.1 Tarkoitus ja kattavuus   
1.2 Määritelmät, termit ja lyhenteet   
1.3 Yleiskatsaus dokumenttiin   
2. Vaatimukset   
2.1 Asiakkaan vaatimukset   
2.2 Yleiskuva   
2.3 Toiminnalliset vaatimukset  
2.3.1 Internet-sivut  
2.3.2 Rekisteröinti sekä sisään- ja uloskirjautuminen   
2.3.3 Paikanvarausohjelma (liput ja pöytäpaikat)   
2.3.4 Sähköpostivahvistus   
2.4 Ei-toiminnalliset vaatimukset   
2.4.1Internet-sivut   
2.4.2 Rekisteröinti sekä sisään- ja uloskirjautuminen  
2.4.3 Paikanvarausohjelma   
2.4.4 Sähköpostivahvistus   
2.5 Laadulliset tavoitteet   
2.6 Priorisointi   
2.6.1 Internet-sivut 
2.6.1.1 Vieraskirja   
2.7 Käyttäjävaatimukset   
2.7.1 Käyttäjäryhmät   
2.7.2 Käyttötapauskuvaukset   
2.7.3 Helppokäyttöisyys ja joustavuus   
2.8 Yleiset rajoitteet   
2.9 Oletukset ja riippuvuudet   
2.10 Tietoturva ja suojaus   
2.11 Muut mahdolliset vaatimukset   
2.11.1 Ylläpito   
2.11.2 Kieli   
2.11.3 Tukipalvelut   
3. Suunnittelurajoitteet  
3.1 Standardit   
3.2 Laitteistorajoitteet   
3.3 Ohjelmistorajoitteet   
3.4 Muut rajoitteet   
4. Jatkokehitysajatuksia   
4.1 Liiketoiminnalliset mahdollisuudet   
4.2 Tietoturva   
4.3 Skaalautuvuus   


1. Johdanto

1.1 Tarkoitus ja kattavuus

Projektin tarkoituksena on tehdä Lapinlahden juusto- ja viinijuhlille Internet-sivustot, joissa on informaation lisäksi paikanvarausjärjes-telmä, jolla voi varata pöytiä tapahtumaan. Paikanvarausjärjestel-män tarkoituksena on helpottaa ja yksinkertaistaa paikanvarausta. Internet-sivustolla on lisäksi rekisteröitymis- ja kirjautumisikkuna ja kirjautumistietoja käytetään paikanvarausten tallentamiseen. Projektin tuotoksen lisäksi projektin tarkoituksena on opettaa opiskelijaryhmälle käytännön projektityöskentelyä ja yhteistyötä.

Projekti kattaa Internet-sivustojen ja niiden ulkonäön kehittämisen, Sisäänkirjautumisikkunan ja sen tietojen tallentamisen palvelimelle sekä paikanvarausohjelman. Projektin aikana kaikki vaiheet doku-mentoidaan. Lisäksi tehdään käyttöohjeet ja tarjotaan tuotetukea. Projekti suoritetaan vuoden 2012 kevään aikana.

1.2 Määritelmät, termit ja lyhenteet

PHP    Ohjelmointikieli, jota käytetään erityisesti luomaan dynaamisia web-sivuja Web-palvelinympäristöissä. PHP-ympäristössä on myös laaja luokkakirjasto.

MySQL    MySQL on relaatiotietokantaohjelmisto. Tietokanta on varasto tie-doille, joilla on yhteys toisiinsa. Tätä tietokantaa voidaan hallita MySQL-ohjelmistolla.

Java    Oliopohjainen ohjelmointikieli ja ajonaikainen ympäristö.

Flash    Kehitysympäristö, jolla voidaan luoda multimediaesityksiä verk-kosivuille.

HTML    Hypertext Markup Language (hypertekstin merkintäkieli) on avoi-mesti standardoitu kuvauskieli, jolla voidaan kuvata hyperlinkkejä sisältävää tekstiä eli hypertekstiä


1.3 Yleiskatsaus dokumenttiin

Kerrotaan asiakkaan ja käyttäjän vaatimusmäärittelyt. Kerrotaan myös ohjelman toiminnasta ja tavoitteista, sekä rajoitteista. Myös käyttötapauksia ja suunnittelurajoitteita on esitelty.


2. Vaatimukset

2.1 Asiakkaan vaatimukset

Järjestelmään pitää pystyä rekisteröitymään ja kirjautumaan sisään. Ohjelmalla pitää voida tarkastella pöytäpaikkoja sekä varaamaan niitä. Lisäksi vaatimuksina on, että käyttäjän tulisi voida tarkastella ja muokata omia pöytäpaikkavarauksiaan, mutta, jos asiakkaalle sopii, tämä toteutetaan niin, että vain ylläpito voi muokata varauksia. Käyttäjän tulee voida edelleen tarkastella omia varauksiaan. Ylläpitäjän tulee voida hallita käyttäjien yhteystietoja ja varauksia.

Ylläpitäjän tulee voida muokata internetsivuja. Ylläpitäjän tulee voi-da tehdä ja muokata lomakesivuja ja vieraskirjasivua sekä hallita vieraskirjan viestejä. Sivuille tulee voida lisätä myös sivu uutisille ja tiedotteille ja ylläpitäjän tulee voida muokata myös niitä. Uutissivuille tulee voida lisätä myös kuvia.

Internetsivuille tulee voida lisätä myös blogisivu, jota ylläpitäjä voi hallita ja muokata. Ylläpitäjällä tulee olla mahdollisuus hallita blogi-sivulla olevia blogeja sekä niissä olevia kuvia ja kommentteja.

2.2 Yleiskuva

Järjestelmän tarkoituksena on lähinnä helpottaa Lapinlahden juusto- ja viinijuhlien pöytäpaikkojen varaamista. Lisänä projektissa toteutetaan internetsivut varausjärjestelmälle. Tavoitteena on luoda toimiva varausjärjestelmä, jota mahdollisesti asiakkaan toiveiden mukaisesti voidaan myöhemmin laajentaa.

Järjestelmän tulisi olla selkeä ja helppokäyttöinen. Painikkeiden täytyy erottua selvästi. Käyttäjä ei myöskään saa joutua umpikujaan käyttäessään sivustoja.

2.3 Toiminnalliset vaatimukset
  
2.3.1 Internet-sivut  

Kun käyttäjä saapuu sivustolle, hänelle avautuu etusivunäkymä. Etusivulla käyttäjä näkee sivulla olevat rekisteröitymis- ja sisäänkir-jautumislinkit. Etusivulla on myös linkit blogiin, vieraskirjaan ja uuti-siin / tiedotteisiin. Sivustolla on linkki paikanvarausjärjestelmään. Etusivulla on myös yksinkertaiset ohjeet paikanvarausjärjestelmän käyttöön.

2.3.2 Rekisteröinti sekä sisään- ja uloskirjautuminen

Rekisteröityminen on vapaaehtoista.
Kun käyttäjä avaa rekisteröitymissivun, sivusto avaa hänet uudelle, lomakemuotoiselle sivulle, johon käyttäjä syöttää omat rekisteröity-mistietonsa (nimet, osoitetiedot, sähköpostiosoite, puhelinnumero, salasana). Kun käyttäjä kirjoittaa etusivulta löytyviin tekstilaatikoihin
käyttäjätunnuksensa (sähköpostiosoite) ja salasana (keksitty rekis-teröityessä) ja klikkaa ”kirjaudu sisään”, hänet ohjataan takaisin etusivulle, mutta käyttäjä on nyt sisäänkirjautunut ja ”kirjaudu sisään” ja ”rekisteröidy” –linkkien sijaan hän näkee ”kirjaudu ulos” –linkin.

2.3.3 Paikanvarausohjelma (liput ja pöytäpaikat)

Asiakkaan kanssa sovittiin, että projektiryhmä kartoittaa mahdollisia
valmiita avoimen lähdekoodin lipunvaraukseen sopivia järjestelmiä.

Kun käyttäjä avaa paikanvarausjärjestelmän, hänelle avautuu flash-ohjelma, jossa hän näkee ensimmäiseksi varatut ja vapaana olevat paikat (varatut punaisena ja X:llä merkittynä ja vapaat vihreinä). Paikat on koodattu kolmella tavalla: pystyrivit kirjaimilla, vaakarivit
numeroilla, ja paikkanumerot numeroilla (esim. A12 paikat 1, 2, 3 ja 4). Yhdessä pöydässä on 12 paikkaa.
Käyttäjän painaessa vihreää paikkaa (vapaa paikka) ohjelma var-mistaa, haluaako käyttäjä varata paikan. Lisäksi häneltä kysytään, saako hänen nimensä näyttää pöytäpaikkanäkymässä hänen va-raamansa pöydän kohdalla (jos nimeä ei anneta näyttää, pöytäpaikka näkyy varattuna, mutta jos nimen saa näyttää, näkevät muut käyttäjät pöytäpaikkanäkymästä, kuka paikan on varannut). Kun käyttäjä vahvistaa varauksen, järjestelmä lähettää vahvistuksen, asiakasnumeron ja laskun asiakkaan sähköpostiin. Jos käyttäjä ei saa sähköpostia, varaussivulla on linkki, josta pääsee vaihtamaan sähköpostin tai pyytää järjestelmää lähettämään vahvistussähköposti uudestaan. Jos käyttäjä ei haluakkaa varata paikkaa, järjestelmä ohjaa käyttäjän takaisin pöytäpaikkanäkymään.

Osa lipuista myydään ennakkolippuina (liput 2000-3000) ja osa
verkkokaupassa (liput 1000-2000). Verkkokauppaan rekisteröitymi-nen ei ole välttämätön.

Järjestelmälle riittää yksinkertainen
suojausmenetelmä, esim. ettei yksittäinen käyttäjä pysty varaamaan
kaikkia paikkoja.
Ennakkoon ostetuissa lipuissa on sarjanumero, jonka syöttämällä
järjestelmään käyttäjä voisi varata paikat. Jos käyttäjä ostaisi lipun
verkkokaupasta, hän voisi tulostaa lipun jossa mahdollisesti olisi QRkoodi. Järjestelmä voisi hyväksyä yksittäiset paikanvarukset, jo-ka helpottaisi varausten hallinnointia.

Käyttäjä voi tarkastella pöytäpaikkavarauksiaan, mutta hän ei voi poistaa varauksiaan vaan hänen on otettava yhteyttä ylläpitoon, jo-ka poistaa varauksen.

2.3.4 Sähköpostivahvistus

    Käyttäjän vahvistettua varauksensa järjestelmä lähettää hänelle vahvistusviestin rekisteröitymisvaiheessa annettuun sähköpostiin, joka sisältää myös laskun ja asiakasnumeron. Asiakasnumero tulee näyttää tapahtuman sisäänkäynnillä.

2.4 Ei-toiminnalliset vaatimukset

2.4.1Internet-sivut

Internet-sivujen on oltava kevyet ja selkeät. Jokaisella sivulla on        oltava mahdollisuus palata  etusivulle, eli käyttäjä ei saa joutua missään vaiheessa umpikujaan.   Värimaailman ja tyyli tulee  olla rauhallinen ja noudattaa jossain määrin edellisvuosia. Järjestelmän pitää toimia Internet  Explorerin 7.0 -internetselaimella sekä sen uudemmilla versioilla, ja   Mozilla Firefox 3.6 - internetselaimella sekä uudemmilla versioilla. Sivulta pitää löytää ohjeet rekisteröintiin, kirjautumiseen ja paikanvarausohjelman käyttöön.

2.4.2 Rekisteröinti sekä sisään- ja uloskirjautuminen  

Käyttäjä voi rekisteröityä vain yhdellä sähköpostilla kerran. Virheen sattuessa järjestelmä pyytää käyttäjää antamaan tiedot uudelleen. Sisäänkirjautumistilanteessa käyttäjä kirjoittaa rekisteröitymisessä annetun sähköpostiosoitteen, sekä salasanansa. Rekisteröidyn sa-lasanan pituus on oltava vähintään viisi merkkiä.

2.4.3 Paikanvarausohjelma

Käyttäjän avatessa paikanvaraussivu, sivulla on ensin vapaat ja varatut paikat. Vasta sen jälkeen käyttäjä pystyy tekemään varauksen. Järjestelmän pitää värikoodata selvästi varatut ja vapaat paikat. Järjestelmä kiittää tilauksesta.

2.4.4 Sähköpostivahvistus

Käyttäjä pystyy uusimaan antamansa sähköpostiosoitteensa vain kolme kertaa. Jos käyttäjällä on tarvetta uusia sähköpostiosoitteen-sa yli kolme kertaa, hänen on otettava yhteyttä ylläpitoon

2.5 Priorisointi

2.5.1 Internet-sivut

2.5.1.1 Vieraskirja

Perustelu: Käyttäjät voivat kertoa oman mielipiteensä sivustosta.
Prioriteetti: 2
Luokitus: Toiminnallinen

2.5.1.2 Uutiset

Perustelu: Käyttäjät saavat lukea esim. etusivulta uutisia.
Prioriteetti: 3
Luokitus: Toiminnallinen

2.5.1.3 Käyttöohjeet

Perustelu: Käyttöohjeiden avulla käyttäjät oppivat käyttämään sivustoa.
Prioriteetti: 1
Luokitus: Toiminnallinen

2.5.1.4 Lomakesivut
Perustelu: Käyttäjien pitää pystyä kirjoittamaan sisäänkirjautumistiedot.
Prioriteetti: 1
Luokitus: Toiminnallinen

2.6 Käyttäjävaatimukset

Käyttäjällä tulee olla Flash Player asennettuna, jotta hän pystyy selaamaan pöydänvarausjärjestelmää. Käyttäjä tarvitsee jonkun yleisimmistä internetselaimista.

2.6.1 Käyttäjäryhmät

Käyttäjäryhmä on yli 40-vuotiaat asiakkaat.

2.6.2 Käyttötapauskuvaukset

Käyttötapauskuvaukset on dokumentoitu erikseen.

2.6.3 Helppokäyttöisyys ja joustavuus

Järjestelmän tulee olla helppokäyttöinen ja käyttäjä ei saa joutua umpikujaan missään vaiheessa. Käyttöjärjestelmä ei saa kaatua pienestä syötevirheestä (esim. Nimi tai osoite väärin) Sivustolla tu-lee olla ohjeet rekisteröintiin ja varauksen tekemiseen.  Järjestelmän tulee ilmoittaa virheistä.

2.7 Yleiset rajoitteet

Järjestelmä ei saa levittää käyttäjätietoja. Varausjärjestelmä ei saa näyttää vääriä tietoja. Järjestelmän tulee olla kevyt, koskien käyttä-jien tietokoneita ja internetyhteyksiä.

2.8 Oletukset ja riippuvuudet

Tulee toimia moitteetta. Varauksen tarkastelu on riippuvainen Flash -ohjelmasta.

2.9 Tietoturva ja suojaus

Järjestelmä ei saa levittää käyttäjätietoja. Asiakas luottaa käyttäjien rehellisyyteen, joten isompia suojauksia ei tarvita.

2.10 Muut mahdolliset vaatimukset

2.10.1 Ylläpito

Ylläpitäjänä on asiakas itse, joka opettaa ohjelman käytön sihteeril-le. Projektiryhmä perehdyttää asiakkaan ohjelman käyttöön. Ylläpi-don olisi paras olla graafinen, mutta tekstipohjainen ylläpito kelpaa.

2.10.2 Kieli

Muita kieliä ei tarvita.

2.10.3 Tukipalvelut

Tukipalvelut hoitaa ylläpito.


3. Suunnittelurajoitteet

3.1 Standardit

Järjestelmällä ei ole standardeja.

3.2 Laitteistorajoitteet

Järjestelmän täytyy olla kevyt, käyttäjien mahdollisten heikkojen tie-tokoneiden ja hitaiden internetyhteyksien vuoksi.

3.3 Ohjelmistorajoitteet

Ohjelmisto ei saa levittää käyttäjätietoja.


4. Jatkokehitysajatuksia

4.1 Liiketoiminnalliset mahdollisuudet

    Katsotaan enemmän tulevaisuudessa.
4.2 Tietoturva

    Sivustolla on käytössä suojattuyhteys.

4.3 Skaalautuvuus

    Ohjelmistopohjaa käytetään jatkossa. Verkkopankkimaksumoduuleja voitaisiin myöhemmin integroida. varausjärjestelmään. Järjestelmää voisi myös pystyä käyttämään mobiililaitteella.

torstai 19. tammikuuta 2012

Päävastuualueet

Petteri Väisänen: Projektipäällikkö, ohjelmiston testaus

Jaana Jauhiainen: Sihteeri

Roni Mertenheimo: Tietojärjestelmän koodaus

Janne Turunen: Verkkosivujen ulkoasu

Samuli Sinokki: Verkkosivujen koodaus

Piia Tuovinen: Flash-koodaus

keskiviikko 30. marraskuuta 2011

Taustatietoja juusto- ja viinijuhlista

Olen Seppo Lyyra Lapinlahden Yrittäjistä ja toimin Lapinlahden juustonystävien puheenjohtajana. Minuun voitte otta yhteyttä tässä projekstissa tämän blogin kautta tai suoraan sähköpostilla seppo.lyyra@lyyra-plus.fi tai puhelimella 040-7784948. Vastaan mielläni ja olen innolla mukana suunnitelamssa tätä projektia.

Jotta saatte yleiskäsityksen laitan tähän jotain taustatietoja.

Lapinlahden juustonystävät on yhdistys, joka juhlat järjestää. Yhdistykseen kuuluu neljä jäsentä Lapinlahden Yrittäjät ry, Lapinlahden Veto ry, Mäntylahden Veto ry ja MTK-Lapinlahti. Lisäksi Valio ja Lapinlahden kunta ovat mukana juhlajärjestelyissä.

Lapinlahden Juustonystävien viime kesän juusto- ja viinijuhlat 30.7.2011 olivat kaiken kaikkiaan neljännettoista. Pääesiintyjänä oli Silvennoinen & Maijanen Band.

Yleisöä oli paikalla ennätysmäärä, lippuja myytiin 1062. Yli neljän hengen seurueet ja yritykset voivat tehdä etukäteen pöytävarauksen. Hallista ei tahtonut löytää pöytäpaikkaa ellei varausta ollut. Liput on myyty ennkkomyyntipisteissä ja pöytävaraukset tehty lipun oston jälkeen soittamalla.