Tik-76.115 Toiminnallinen määrittely

Mobile1


Sisällysluettelo

0. Versio
1. Johdanto
2. Yleiskuvaus
3. Tiedot ja tietokanta
4. Toiminnot
5. Ulkoiset liittymät
6. Muut ominaisuudet
7. Suunnittelurajoitteet
8. Jatkokehitysajatuksia
 

0. Versio

Versio Päiväys Selitys Julkisuus Tekijä Hyväksynyt
1.9 31.10.2000 Julkinen RIQ  
2.2 29.11.2000 Julkinen AKE  
2.3 7.12.2000 Julkinen AKE  
3.0 9.12.2000 Julkinen AKE RIQ

1. Johdanto

1.1 Tarkoitus ja kattavuus

Tässä dokumnetissa kuvataan TietoEnatorin Palvelut -divisioonan Telecom-yksikön Tik-76.115 -kurssille toimeksiantaman mobiilisuoramainontajärjestelmän toiminnot.

Dokumentti esittelee järjestelmää toiminnallisella tasolla, eikä ota juurikaan kantaa tekniseen toteutukseen. Esimerkiksi tietokantaa on kuvattu ainoastaan yleisellä tasolla, tarkempi kuvaus esitetään teknisessä määrittelyssä.

1.2 Tuote

Järjestelmällä (Mobile1) lähetetään kohdennettuja mainosviestejä kuluttajille GSM verkossa. Viestit kohdennetaan rekisteröidyille kuluttajille sijainnin sekä kuluttajakohtaisten erityistoiveiden perusteella. Kuluttajan tulee rekisteröityä järjestelmän ulkopuoliseen henkilörekisteriin ja määrittää millaista mainontaa hän haluaa vastaanottaa, ilman pyyntöä mainontaa ei lähetetä. Järjestelmään rekisteröityneet kauppiaat jättävät mainoksensa ja rekisteröityvät web-sovelluksen avulla.  Järjestelmä tarvitse omaa palveluhenkilökuntaa, mutta järjestelmäoperaattori voi tarvittaessa muokata tietokantoja.

1.3 Määritelmät, termit ja lyhenteet

Määritelmät termit ja lyhenteet ovat erillisessä terminologiadokumentissa.

1.4 Viitteet

Projektissa käytetyt viitteet ovat erillisessä viitedokumentissa.

1.5 Yleiskatsaus tähän dokumenttiin

Luvussa yksi esitellään Mobile1-projekti ja järjestelmä lyhyesti. Luvussa kaksi esitellään Mobile1-järjestelmän liittymät, käyttäjät, käyttöympäristö ja rajoitukset, luvussa kolme ohjelmiston tietokannat ja tietosisällöt. Ohjelmiston toiminnot on kuvattu ja priorisoitu luvussa neljä. Luvussa viisi kuvataan järjestelmän ulkoiset liittymät, luvussa kuusi kuvataan ohjelmiston muut kuin toiminnalliset ominaisuudet ja luvussa seitsemän suunnittelurajoitteet. Mobile1-järjestelmän jatkokehitysmahdollisuuksia on pohdiskeltu luvussa kahdeksan.

2. Yleiskuvaus

2.1 Ympäristö

Järjestelmä koostuu sovelluspalvelimesta, mainostietokannasta, sääntötietokannasta, web-liittymistä kauppiaille ja sillä on yhteydet GSM-operaattoriin ja ulkopuoliseen asiakastietokantaan. Kuvassa 2.1 järjestelmän komponentit esitetään omassa käyttöympäristössään.

kuva 2.1.

Kuvassa 2.1 näkyvät Mobile1-järjestelmän rajapinnat ympäristön kanssa. Järjestelmän ja GSM-operaattorin välillä on SMS-viestirajapinta sekä paikkatietorajapinta. Lisäksi kauppiailla on web-rajapinta järjestelmän kanssa ja rajapintaa käytetään kauppiaan rekisteröintiin sekä mainoksien tekoon sekä kuluttajan rekisteröintiin, irtisanoutumiseen ja profiilin muuttamiseen. Kuluttajiin on yhteys ulkopuolisen henkilörekisterin välityksellä.

Järjestelmä lähettää kauppiaiden mainokset SMS-rajapinnan kautta kuluttajille SMS-viesteinä ja tietokantakyselyt huolehtivat sekä kuluttajien että kauppiaiden mainontatoiveiden täyttymisestä. Valmistuneen selvitystyön mukaan paikkatietorajapinta on PULL-tyyppinen, eli mobiilitilaajan on oltava aloitteen tekijä paikannuksessa. Lisäksi GSM-operaattorilta tulee mobiilin paikkatieto yksinkertaisesti HTML-pohjaisena, jolloin tieto tulisi samanlaisena sekä PUSH ja PULL palvelussa. Järjestelmässä simuloidaan tällaista operaattoria.

2.2 Toiminta

Kauppiaat rekisteröityvät järjestelmään käyttäen web-sovellusta ja kertomalla tietoja itsestään ja haluamastaan mainonnasta. Rekisteröinnin jälkeen kauppias jättää mainoksia järjestelmän lähetettäväksi käyttäen web-sovellusta. Mainoksen yhteydessä jätetään joukko parametrejä, joiden mukaan mainonnan kohteet valitaan.

Kuluttaja voi rekisteröityy ainoastaan ulkoiseen henkilörekisteriin järjestelmän ulkopuolella, jolloin hän voi profiloida itsensä tarkasti ja toivoa tietynlaista mainontaa. Kuluttaja tilaa tietyn kauppiaan mainoksen järjestelmältä lähettämällä pyynnön SMS-viestinä palvelun numeroon. Tilauksen jälkeen kuluttaja saa omaan sijaintiinsa liittyvän mainoksen. Kuluttaja voi kuitenkin tilata mainontaa ilman rekisteröitymistä, mutta tällöin hän voi saada väärän kohderyhmän mainoksia. Kuluttaja voi muuttaa omaa profiiliaan palveluntarjoajan ulkoiseen rekisteriin, jolloin vaihtoehtoina on esimerkiksi sallia jokin mainonta tai kieltää se, antaa lisätietoja itsestään tai muuttaa olemassa olevia tietoja.

Mikäli PUSH-tyyppiset palvelut osoittautuvat mahdollisiksi mainontaa lähetetään kuluttajan sijainnin muuttuessa siten, että hän saapuu tietyn kauppiaan määrittämälle mainosalueelle. Tämän jälkeen kuluttaja saa järjestelmältä tietyn mainoksen. Tämän hetken selvitystyön mukaan operaattorit eivät tällä hetkellä tarjoa PUSH-tyyppistä, joten järjestelmän kehityksessä tulee ainoastaan ottaa huomioon PUSH-palvelun olemassa olo tulevaisuudessa. Projektin toteutusvaiheessa operaattoria simuloidaan erillisellä paikkatietoa palauttavalla ohjelmalla. Operaattorirajapinta mahdollistaa kuitenkin todellisten operaattoreiden liittymisen järjestelmään myöhemmässä vaiheessa.

2.3 Käyttäjät

Järjestelmää käyttävät kauppiaat ja kuluttajat suoraan, eikä järjestelmä tarvitse omaa palveluhenkilökuntaa. Kuitenkin järjestelmäoperaattorilla on mahdollisuus muokata tietokantoja. GSM-operaattori toimii viestien välittäjänä kuluttajien ja järjestelmän välillä.

Kauppias käyttää järjestelmää omaan mainontaansa. Kauppiaan on ensin rekisteröidyttävä järjestelmään Web-liittymän avulla, minkä jälkeen hän voi tehdä mainoksia saman liittymän avulla. Kauppiaan on houkuteltava kuluttajat käyttämään palvelua järjestelmän ulkopuolisella markkinoinnilla.

Kuluttaja on kuka tahansa GSM liittymän haltija, jolle järjestelmä lähettää kohdennettuja kauppiaiden mainosviestejä. Kuluttajat voivat tilata mainontaa SMS-viestillä ja rekisteröitymällä ulkoiseen henkilörekisteriin.

2.4 Yleiset rajoitteet

Valitun operaattorin paikkatietopalvelu asettaa rajoituksen toteutukselle. Tämän hetken selvitystyön mukaan operaattori tarjoaa ainoastaan PULL-tyyppistä palvelua, joka edellyttää mobiilitilaajan aloitetta aina paikannuksessa. Lisäksi tällä hetkellä paikannuksen tarkkuus määräytyy solukoon mukaan, mutta tarkempia palveluita on kehitetty. Lisäksi erilaiset paikkatietojen muodot pitää sovittaa yhteen kauppiaille näkyvän web-sovelluksen ja GSM-operaattoreilta saatavien koordinaattien kanssa näkyvän  Oleellista on kuitenkin se, mitä valittu operaattori tarjoaa. Lisäksi tarjotun palvelun vasteajat saattavat rajoittaa toimintaa.

Lainopilliset seikat rajoittavat rekisteröintiä paikkatietojen hakuun suostumiseen ja PUSH-palveluihin. Operaattorit ovat ottaneet huomioon nämä tarjotessaan omia palveluita, mutta rajoitus tulee huomioida myös kehitettävässä järjestelmässä. Ensi vaiheessa operaattorin paikkatietojärjestelmää simuloidaankin erillisellä paikkatietoa palauttavalla ohjelmalla.

2.5 Oletukset ja riippuvuudet

Järjestelmän suunnittelussa ja toteutuksessa pyritään järjestelmäriippumattomuuteen, siirrettävyyteen ja mahdollisimman pieneen ylläpidon tarpeeseen. Käytettäviä menetelmiä ja ohjelmointikieliä ovat Java, servletit, HTML, relaatiotietokannat.

3. Tiedot ja tietokanta

3.1 Tietosisältö

Tässä dokumentissa tietokannan rakenne on kuvattu korkealla tasolla, eikä esimerkiksi yksilötyyppien välisiä suhteita ole kuvattu lainkaan. Tarkempi kuvaus tietokannasta on nähtävissä teknisessä määrittelyssä. Liitteessä on esitetty kokonaiskuva tietokannan rakenteesta.

3.1.1 Yksilötyyppi 1: RULE

Tyyppi Nimi Selite
int ID Identification number of rule (primary key)
String INFO Rule description

3.1.2 Yksilötyyppi 2: RULE_REQUEST_TEXT

Tyyppi Nimi Selite
VARCHAR RULE_ID Foreign key reference to RULE (ID)
VARCHAR TEXT Rule request description

3.1.3 Yksilötyyppi 3: RULE_PROPERTY

Tyyppi Nimi Selite
int RULE_ID Foreign key reference to RULE (ID)
int FIELD_ID Foreign key reference to RULE_FIELD (ID)
int MIN Rule min 
int MAX Rule max

3.1.4 Yksilötyyppi 4: RULE_FIELD

Tyyppi Nimi Selite
int ID Identification number of rule field (primary key)
String NAME Rule field name
String INFO Rule field info
int MIN Rule field min
int MAX Rule field max

3.1.5 Yksilötyyppi 5: ADVERTISER

Tyyppi Nimi Selite
int ID Identification number of advertiser (primary key)
String NAME Advertiser name

3.1.6 Yksilötyyppi 6: AUTHENTICATION

Tyyppi Nimi Selite
int ID Identification number of authentication (primary key)
String UID Foreign key reference to ADVERTISER (ID)
String PWD Advertiser password

3.1.7 Yksilötyyppi 7: AD

Tyyppi Nimi Selite
int ID Identification number of authentication (primary key)
int ADVERTISER_ID Foreign key reference to ADVERTISER (ID)
int LOCATION_ID Foreign key reference to ADVERTISER_LOCATION (ID)
Date VALID_TIME Advertisement validity time
String CONTENT Advertisement text
int RULE_ID Foreign key reference to RULE (ID)

3.1.8 Yksilötyyppi 8: ADVERTISER_LOCATION

Tyyppi Nimi Selite
int ID Identification number of advertiser (primary key)
int ADVERTISER_ID Foreign key reference to ADVERTISER (ID)
String COORDS Location coordinates in text
String NAME Location name
String DESCRIPTION Location description
int DISTANCE Error in location

3.1.9 Yksilötyyppi 9: LOG

Tyyppi Nimi Selite
int ID Identification number of LOG transaction (primary key)
int AD_ID Foreign key reference to AD (ID)
Date TIME Time logged
int RULE_ID Foreign key reference to RULE (ID)
String COORDS Foreign reference to ADVERTISER_LOCATION (COORDS)

3.1.10 Yksilötyyppi 10: AD_LOCATION_RELATION

Tyyppi Nimi Selite
int AD_ID Foreign key reference to AD (ID)
int LOCATION_ID Foreign key reference to ADVERTISER_LOCATION (ID)

3.2 Käyttöintensiteetti ja kapasiteettivaatimukset

Järjestelmän tulee pystyä käsittelemään jatkuvia pyyntöjä ja useita samanaikaisia pyyntöjä ilman, että käyttäjälle päin näkyvä viive kasvaa huomattavasti.

4. Toiminnot

4.1 Järjestelmän toiminnot

Järjestelmän toiminnot on ryhmitelty vaatimusmäärittelyn mukaisesti ja kukin vaatimusmäärittelyn toiminto on jaettu osatoiminnoiksi. Osatoiminnot on kuvattu yksityiskohtaisesti taulukoissa. Toiminnon toteuttamiseen välttämättä tarvittavat osatoiminnot on priorisoitu vaatimusmäärittelyn mukaisesti asteikolla kriittinen, tärkeä, hyödyllinen, ja kaikki lisäarvoa tuottavat osatoiminnot on priorisoitu hyödyllisiksi. Vaatimusmäärittelyssä käytettävää PUSH ja PULL -erottelua korostetaan myös toimintoja määriteltäessä.

4.1.1 Kauppiaan sopimukseen (vaatimus 1) liittyvät toiminnot

4.1.1.1 Toiminto 1: Kauppiaan sopimuksen vastaanotto ja talletus

Nimi: Kauppiaan sopimuksen vastaanotto ja talletus
Kuvaus: Järjestelmä vastaanottaa kauppiaan tiedot web-lomakkeelta, tarkistaa ne, ja tallettaa tiedot tietokantaan.
Tarkoitus: Kauppiaiden rekisteröityminen
Syötteet: mitä: kauppiaan tiedot
mistä: Web-lomakkeelta
sallitut arvot: Tietueen sallitut arvot
Käsittely: Järjestelmä lukee lomakkeen tiedot, tarkistaa ne ja tallentaa ne tietokantaan.
Tulosteet: Onnistunut vastaanotta tulostaa kuitteuksen "OK"
Virhetilanteet: Epäonnistunut vastaanotto tulostaa "Sopimuksen vastaanotto epäonnistui"
Prioriteetti: Kriittinen
4.1.1.2 Toiminto 2: Kuittauksen lähetys kauppiaan rekisteröitymisestä

Nimi: Kuittauksen lähetys kauppiaan rekisteröitymisestä
Kuvaus: Järjestelmä lähettää sähköpostilla kuittauksen kauppiaan rekisteröitymisestä.
Tarkoitus: Antaa infoa rekisteröityneelle kauppiaalle onnistuneesta rekisteröitymisestä.
Syötteet: Kauppiaan tiedot
Käsittely: Järjestelmä lähettää tämän rekisteröidyistä tiedoista sähköpostikuittauksen kauppiaan sähköpostiin.
Tulosteet: Sähköposti kauppiaalle
Virhetilanteet: Epäonnistunut lähetys tulostaa "Kuittauksen lähetys epäonnistui" järjestelmän lokitiedostoon
Prioriteetti: Hyödyllinen
4.1.1.3 Toiminto 3: Laskun lähetys kauppiaalle

Nimi: Laskun lähetys kauppiaalle
Kuvaus: Laskun lähetys kauppiaalle
Tarkoitus: Laskun lähetys kauppiaalle
Syötteet: Kauppiaan tiedot
Käsittely: Järjestelmä tarkistaa tietokannasta, paljonko asiakasta laskutetaan, ja lähettää laskun.
Tulosteet: Lasku
Virhetilanteet: Epäonnistunut lähetys tulostaa "Laskun lähetys epäonnistui" järjestelmän lokitiedostoon
Prioriteetti: Hyödyllinen

4.1.2 Kauppiaan mainoksen laittoon (vaatimus 2) liittyvät toiminnot

4.1.2.1 Toiminto4: Mainoksen vastaanotto ja tallennus

Nimi: Mainoksen vastaanotto ja tallennus
Kuvaus: Mainoksen vastaanotto ja tallennus
Tarkoitus: Mainoksen vastaanotto ja tallennus
Syötteet: Kauppiaan tunnus ja mainoksen tiedot weblomakkeelta
Käsittely: Järjestelmä tarkistaa mainoksen ja tallettaa sen tietokantaan.
Tulosteet: Onnistunut vastaanotta tulostaa kuitteuksen "OK"
Virhetilanteet: Epäonnistunut vastaanotto tulostaa "Mainoksen vastaanotto epäonnistui"
Prioriteetti: Tärkeä
4.1.2.2 Toiminto5: Kuittauksen lähetys mainoksesta

Nimi: Kuittauksen lähetys mainoksesta
Kuvaus: Järjestelmä lähettää sähköpostilla kuittauksen mainoksen hyväksymisestä.
Tarkoitus: Antaa infoa rekisteröityneelle kauppiaalle onnistuneesta mainoksesta.
Syötteet: Kauppiaan  tunnus ja mainoksen tunnus.
Käsittely: Järjestelmä lähettää mainoksen tiedoista sähköpostikuittauksen kauppiaan sähköpostiin.
Tulosteet: Sähköposti kauppiaalle.
Virhetilanteet: Epäonnistunut lähetys tulostaa "Kuittauksen lähetys epäonnistui" järjestelmän lokitiedostoon
Prioriteetti: Hyödyllinen

4.1.3 Kuluttajan mainostilaukseen (vaatimus 3) liittyvät toiminnot

4.1.3.1 Toiminto6: Mainostilauksen vastaanotto ja talletus

Nimi: Mainostilauksen vastaanotto ja talletus
Kuvaus: Kuluttajan tilaus otetaan vastaan ja talletetaan.
Tarkoitus: Mainostilauksen vastaanotto ja talletus.
Syötteet: Kuluttajan tunnus, palvelupyyntö.
Käsittely: Tarkistaa tilauksen ja tallettaa sen tietokantaan.
Tulosteet: Onnistunut vastaanotta tulostaa kuitteuksen "OK"
Virhetilanteet: Epäonnistunut vastaanotto tulostaa "Mainostilauksen vastaanotto epäonnistui"
Prioriteetti: Tärkeä
4.1.3.2 Toiminto7: Mainospyynnön validiteetin tarkistus

Nimi: Mainospyynnön validiteetin tarkistus
Kuvaus: Mainospyynnön validiteetin tarkistus
Tarkoitus: Mainospyynnön validiteetin tarkistus
Syötteet: Mainostilauksen tiedot, kuluttajan tunnus
Käsittely: Tarkistetaan teknisestä määrittelystä ilmenevät vaatimukset 
Tulosteet: Onnistunut pyyntö tulostaa "OK" järjestelmän lokitiedostoon
Virhetilanteet: Epäonnistunut vastaanotto tulostaa "Mainospyyntö epäonnistui"
Prioriteetti: Tärkeä
4.1.3.3 Toiminto8: Tilaajan tietojen tarkistus

Nimi: Tilaajan tietojen tarkistus
Kuvaus: Tarkistetaan kuluttajan tiedot
Tarkoitus: Voiko kyseinen kuluttaja tilata haluamansa palvelun
Syötteet: Kuluttajan tunnus, palvelu. Ulkoinen kuluttajatietokanta 
Käsittely: Tarkistetaan onko kuluttajalla oikeus saada ko. palvelua
Tulosteet: Onnistunut tarkistus tulostaa "OK" järjestelmän lokitiedostoon
Virhetilanteet: Epäonnistunut tarkistus tulostaa "Epäkelvot tilaajan tiedot"
Prioriteetti: Hyödyllinen
4.1.3.5 Toiminto9: Paikkatiedon vastaanotto

Nimi: Paikkatietokyselyn vastaanotto
Kuvaus: Saadaan paikkatietovastaus operaattorilta
Tarkoitus: Saada paikkatieto
Syötteet: Paikkatietovastaus
Käsittely: talletetaan paikkatieto tietokantaan
Tulosteet: Paikkatietovastaus
Virhetilanteet: Epäonnistunut tarkistus tulostaa "Paikkatiedon vastaanotto epäonnistui"
Prioriteetti: Tärkeä
4.1.3.6 Toiminto10: Mainoksen lähetys kuluttajalle

Nimi: Mainoksen lähetys kuluttajalle
Kuvaus: Lähetetään kuluttajan matkapuhelimeen mainos.
Tarkoitus: Mainostaa.
Syötteet: Mainoksen kohde, mainos
Käsittely: Välitetään mainosolio haluttua kanavaa pitkin kuluttajalle
Tulosteet: Onnistunut lähetys tulostaa "OK" järjestelmän lokitiedostoon
Virhetilanteet: Epäonnistunut lähetys tulostaa "Mainoksen lähetys epäonnistui" järjestelmän lokitiedostoon
Prioriteetti: Tärkeä

4.1.4 Kuluttajan paikkaan saapumiseen (vaatimus 4) liittyvät toiminnot

Kuluttajan paikkaan saapuminen ja sen havainnointi on PUSH-tyyppinen. Vaikka toiminto ei olisi mahdollinen, kuvataan toiminnot kuitenkin, sillä operaattoreiden palveluissa sekä eri maiden lainsäädännöissä saattaa olla toiminnon mahdollistavia eroja. Kuvaus mahdollistaa tulevaisuuden muutokset.
4.1.4.1 Toiminto11: Paikkatiedon vastaanotto
Kyseessä on sama toiminto, joka on kuvattu kohdassa 4.1.3.5
4.1.4.2 Toiminto12: Tilaajan tietojen tarkistus
Kyseessä on sama toiminto, joka on kuvattu kohdassa 4.1.3.3
4.1.4.3 Toiminto13: Mainoksen lähetys kuluttajalle
Kyseessä on sama toiminto, joka on kuvattu kohdassa 4.1.3.6

4.1.5 Järjestelmäoperaattoriin (vaatimus 5) liittyvät toiminnot

Järjestelmäoperaattoriin liittyvät toiminnot ovat sääntöjen ja kauppiaiden poistaminen ja lisääminen. Kaikki toiminnot toteutetaan alkuvaiheessa syöttämällä SQL-kyselyitä tietokantaan yksinkertaisen käyttöliittymän avulla. Ulkoasun ja toiminnalisuuden modulaarisuuden vuoksi käyttöliittymä voidaan jatkokehitysvaiheessa korvata uudella ulkoasulla ilman toiminnallisuuden muokkaamista.
4.1.4.1 Toiminto14: Lisää sääntöjä
4.1.4.2 Toiminto15: Poistaa sääntöjä
4.1.4.3 Toiminto16: Lisää kauppiaita
4.1.4.4 Toiminto17: Poistaa kauppiaita

5. Ulkoiset liittymät

5.1 Laitteistoliittymät

Operaattorin ja järjestelmän välillä voi mahdollisesti olla laitteistoliittymiä.

5.2 Ohjelmistoliittymät

Järjestelmä on yhteydessä operaattorin paikkatietojärjestelmän kanssa. Alkuvaiheessa operaattorin paikkatietojärjestemää simuloidaan paikkatietoa palauttavalla ohjelmistolla, mutta paikkatietorajapinta mahdollistaa myöhemmässä vaiheessa oikeiden operaattoreiden liittymisen järjestelmään.

Mobile1-järjestelmässä ei toteuteta laskutusta, mutta liityntä laskutusjärjestelmään tulee olla mahdollinen. Laskuttajana vaihtoehtoina voi olla operaattori tai järjestelmä itse.

5.3 Tietoliikenneliittymät

5.3.1 Liittymä SMS-palveluun

Järjestelmän ja GSM-operaattorin välillä on SMS-viestirajapinta. Tämän rajapinnan kautta järjestelmä lähettää kauppiaiden mainokset kuluttajille SMS- viesteinä, kuluttajat liittyvät tiettyihin kauppiaiden palveluihin ja muuttavat omia tietojaan lähettämällä SMS-viestejä järjestelmän palvelunumeroon.

5.3.2 Liittymä paikkatietopalveluun

Järjestelmällä ja GSM-operaattorin välillä on myös paikkatietorajapinta. Valmistuneen selvitystyön mukaan rajapinta on PULL-tyyppinen, eli mobiilitilaajan on oltava aloitteen tekijä paikannuksessa. Tällöin GSM-operaattorilta tulee mobiilin paikkatieto HTML-pohjaisena.

Lisäselvitysten myötä on käynyt ilmi, ettei lainsäädännön puitteissa ole mahdollista toteuttaa PUSH-tyyppisiä palveluita: Niissä järjestelmän tarkoituksena olisi kysyä tiettyjen kuluttajien sijainteja ja saada GSM-operaattorilta vastaus. Lisäksi GSM-operaattorilta haluttaisiin automaattisesti tietoa rekisteröityneistä kuluttajista, joiden sijainti on muuttunut tietyn jonkun kauppiaan mainosalueelle. Järjestelmä kuitenkin tukee myös tällaista toteutustapaa tulevia tarpeita ajatellen.

5.3.3 Web-liittymä kauppiaalle

Web-liittymää käytetään järjestelmän ja kauppiaan välillä rekisteröintiin sekä mainoksien tekoon. Liittymän tulee olla selkeä ja looginen. Rekisteröityminen ja mainoksen jättö erotellaan selkeästi erilliseksi kokonaisuuksiksi.
 

5.3.4 Liityntä henkilörekisteriin

Ulkoinen henkilörekisteri sisältää tiedot kuluttajista ja järjestelmässä on toteutettava rajapinta tällaiseen rekisteriin. Järjestelmän ei tällöin tarvitse itse kerätä kuluttajilta rekisteröitymisiä ja profiileita vaan niiden oletetaan olevan tässä henkilörekisterissä saatavilla. Järjestelmä käyttää tietoja mainonnan profiloimiseen kuluttajien ja kauppiaiden yhteisten toiveiden mukaisiksi.

6. Muut ominaisuudet

6.1 Suorituskyky ja vasteajat

Ohjelman tulee olla luotettava ja sen tulee toipua erilaisista virhetilanteista nopeasti, koska käyttäjät liikkuvat GSM-verkon solusta toiseen mahdollisesti hyvinkin nopeasti.

6.2 Käytettävyys, toipuminen, turvallisuus, suojaukset

Kauppiaiden näkökulmasta olisi tärkeää, että käyttöliittymä, jolla syötetään esim. mainoksen materiaali järjestelmään olisi mahdollisimman helppokäyttöinen. Loppukäyttäjille olisi taas tärkeätä, että he voisivat vaivatta liittyä ja poistua kyseisen järjestelmän palvelun piiristä. Lisäksi järjestelmän tarjoaman palvelun tulisi saapua loppukäyttäjälle reaaliajassa.

Tarpeen mukaan käytetään yleisesti tunnettuja ja hyväksi havaittuja menetelmiä, jotta ohjelmistossa ei olisi tietoturva-aukkoja.

6.3 Ylläpidettävyys

Järjestelmä luovutetaan havainnollistamaan järjestelmän toiminnallisuutta, mutta projektiryhmä ei sitoudu jatkokehittämään tuotetta. Erillistä ylläpitoliittymä järjestelmässä ei ole.

6.4 Siirrettävyys/kannettavuus, yhteensopivuus

Järjestelmä tehdään sellaisen arkkitehtuurin pohjalta, että ohjelma olisi siirrettävissä tarvittavin muutoksin. Tätä ei kuitenkaan toteuteta kurssin puitteissa.

6.5 Operointi

Järjestelmä ei tarvitse palveluhenkilökuntaa, eikä järjestelmän pitäisi vaatia aktiivista ylläpitoa.

7. Suunnittelurajoitteet

7.1 Standardit

Järjestelmän suunnittelussa ja toteutuksessa pyritään siirrettävyyteen, uudelleen käytettävyyteen ja käytetään modulaarisuuteen perustuvia periaatteita.

Toteutuksessa käytettäviä menetelmiä ja ohjelmointikieliä ovat Java, Servletit, HTML ja relaatiotietokannat.

7.2 Laitteistorajoitteet

Järjestelmällä ei ole erityisiä laitteistorajoitteita. Tärkeintä on mitoittaa tietokannan kapasiteetti oikein arvioiden myös tulevaisuuden kasvutarpeet.

7.3 Ohjelmistorajoitteet

Suunniteltava arkkitehtuuri tehdään standardia UML- notaatiota käyttäen. Toteutuksessa pyritään käyttöjärjestelmä ja alustariippumattomuuteen.

7.4 Muut rajoitteet

Operaattorin paikkatietorajapinta ja SMS-rajapinta rajoittavat toteutusta. Vaikka järjestelmä toteutetaan yhden operaattorin tarjoamien palveluiden perusteella, arkkitehtuurissa tulee huomioida siirrettävyys muihin operaattoreihin.

8. Jatkokehitysajatuksia

Jatkokehityksen mahdollistamiseksi järjestelmä on toteutettu "tekninen määrittely" -dokumentissa esitettyjen rajapintojen mukaisesti. Näitä rajapintoja ei ole sidottu mihinkään määrättyyn järjestelmään tai liittymään. Näinollen järjestelmä voidaan kohtuullisen pienellä työllä räätälöidä esimerkiksi toisen operaattorin käyttöön.

Mahdollinen tuotteistus tulevaisuudessa on huomioitu arkkitehtuurisuunnittelussa. Järjestelmä toteuttaa model-view-controller mallia, jolloin ulkoasu voidaan muokata tarpeen mukaan koskematta toiminnallisuuteen tai tietomalliin.

Projektiryhmällä ei ole sitoumuksia tuotteen jatkokehitykseen.