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.