Valuutavahetus

From ICO wiki
Jump to navigationJump to search

Taust

Väikefirma asub riigipiiril ja pakub kõikvõimalikke tolliprotseduuridega seotud teenuseid. Muuhulgas on olemas ka veoautode seisuplats, ooteala piiriületajate jaoks ja kohvik. Välismaalased soovivad teenuste eest tasuda sularahas, kuid sageli pole neil sobivat valuutat. Seega on põhiteenuste eest tasumise võimaldamiseks firmal tarvis ka tugiteenust rahavahetamise näol.

User story' d

Eelnevate tegevuste käigus on koostatud järgmised user story' d


1) Klient soovib enne tehingut näha kehtivaid valuutakursse.

2) Klient tahab tellerilt teada enne tehingut, kui palju ta mingit valuutat oma valuuta eest saab.

3) Klient soovib saada peale tehinguid kviitungit tehingute andmetega.

4) Teller vajab kliendi teavitamiseks võimalust eelnevalt arvutada tehingu hinda.

5) Teller soovib kasutada eelarvestust tegeliku tehingu vormistamiseks, et klienti kiiremini teenindada.

6) Juhatajal on vaja, et kõik tehingud talletuksid hilisemaks kontrolliks.

7) Telleril on vaja arvutada valuutade kassajääke tagavarade täiendamiseks.

8) Teller vajab võimalust jätkata oma vahetust tõrke korral.

9) Juhataja vajab, et iga teller registreeriks end tarkvaras vahetuse alguses.

10) Juhataja vajab ainuisikulist võimalust lisada või muuta tarkvara kriitilise tähtsusega püsiandmeid – valuutakursid, tellerite nimed ja kasutajatunnused.

11) Juhataja vajab tehingute väljavõtteid erinevate perioodide ulatuses tegevuse hindamiseks.

12) Juhataja vajab kokkuvõtteid erinevate perioodide, tellerite ja valuutade lõikes.

13) Juhataja vajab, et tarkvarast ja andmetest tehtaks tagavarakoopiaid regulaarselt.

Andmemudel

Kuna tegemist on andmebaasirakendusega, siis kõige esimene töö on user storyde põhjal andmemudeli koostamine. See osa on nüüdseks olemas. Veel mitte Visual Studios realiseerituna, aga pildina täiesti esitatav. Toon selle siis siinkohal ära.

Funktsionaalsused

1 Põhifunktsionaalsus

Teller saab lisada tehingute andmed süsteemi Kogu trall ju andmete talletamise ümber käibki. Kui seda teha ei saa, siis pole kõigel muul selles projektis suurt mingit mõtet.

Siinkohal saab kindlasti väga oluliseks kasutajaliidese funktsionaalsus ja ergonoomika. Küsimus on andmete tervikluse tagamises, andmete sisestamisel tekkivate vigade vältimises.

Võtmesõnaks on disain ja eesmärkideks:

  1. Andmeväljade paigutuse loogilisus ja ergonoomilisus
  2. Kasutajasõbralik graafiline disain. Seega ei tasu hiljem ekraanipinnaga ja fontide suurusega koonerdada. Ka andmeväljade paigutus ja kaugus teineteisest peavad välistama valesti sisestamise võimaluse.
  3. Sündmuste toimumise loogilisus. Oleks vaja, et tehinguid ei sisestata kogemata, lihtsalt ühe klõpsuga, vaid küsitakse kinnitus ning kinnituse „Jah“ ei teki esialgse „Kinnitan“ nupu peale.

2 Lisafunktsionaalsused

  1. Kliendi mugavusega seotud lisafunktsionaalsus
    1. Klient näeb kehtivaid valuutakursse eraldi ekraanil
    2. Klient saab tehingu kohta prinditud kviitungi
  2. Firma juhtimisega seotud lisafunktsionaalsus
    1. Juhataja saab kokkuvõtte telleri töötulemuste kohta vahetuse jooksul.
    2. Juhataja saab kokkuvõtteid vabalt valutud perioodide ulatuses.
    3. Juhataja saab muuta valuutakursse
  3. Andmeturbest tulenevad lisafuktsionaalsus
    1. Andmete tervikluse tagamisega seotud lisafunktsionaalsus
      1. Süsteem arvutab tehingu maksumuse enne selle kinnitamist – saab kontrollida, telleri kliendi soovid võivad muutuda
      2. Süsteem arvutab tehingute maksumuse kehtivate kursside põhjal – välistab telleri võimaluse eksida kursi sisestamisel
      3. Tehingu andmed on muudetavad seni, kuni see pole telleri poolt kinnitamise teel
      4. Keegi ei saa muuta eelnevalt sisestatud andmeid.
      5. Kõik toimingud logitakse.
      6. Juhtaja saab muuta kontojääke vastavalt tegelikule kassa seisule telleri vigade korrigeerimiseks.
      7. Teller saab muuta kontojääke sularaha varude täiendamisel.
    2. Konfidentsiaalsusega seotud lisafunktsionaalsus
      1. Süsteemi saavad kasutada ainult volitatud kasutajad
      2. Kasutajatel on erinevad õiguste tasemed, st teller ei saa muuta valuutakursse ega vaadata varasemate vahetuste koondeid
      3. IS-i kasutamise sessioonid on turvatud.
      4. Andmetabelid on krüpteeritud
      5. Andmebaasi koopiad on krüpteeritud
    3. Terviklikkusega seotud lisafunktsionaalsus
      1. Andmebaasist tehakse regulaarselt mitmesse salvestuskohta krüpteeritud koopiaid