-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathVaatimusmäärittely
49 lines (41 loc) · 3.08 KB
/
Vaatimusmäärittely
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Monopoli
Oksman Hannu, Paananen Ville, Tarvainen Antti
v1.3 11.4.2018
1. Johdanto
Ohjelmisto tehdään IT-instituutin opettajalle, Ari Rantalalle, opintojakson harjoitustietokantana jonka tavoitteena on
virtuaalisten monopolipelien hallinnointi, käsittely ja tallennus. Tietokannan tarkoituksena on pystyä
käsittelemään useaa eri peliä samaan aikaan, tallentamaan pelien tiedot tietokantaan, ja hallinnoimaan kaikkien pelien
tietoja kyseisessä tietokannassa.
2. Yleiskuvaus
Tietokanta asennettu RaspBerry Pi:lle.
Tietokannalle tehdään käyttöliittymäkurssin harjoitustyöksi visuaalinen C# käyttöliittymä, jolla monopolin pelaaminen tapahtuu.
Kyseinen c# ohjelma tallentaa tietoa pelin edetessä, ja lopuksi tallentaa loppuneen pelin tiedot tietokantaan.
Tietokantaa varten on tehty Microsoft Access käyttöliittymä, jonka avulla tietokantaa voidaan käyttää ja hallinnoida.
3. Toiminnot
Pakollisia toimintoja ovat:
1. Usean käynnissä olevan pelien tallentaminen ja hallinnointi tietokannassa
2. Päättyneiden pelien tilastot
3. Pelaajien hallinnointi (Tunnus/nimi)
4. Pelissä käytettävän datan hallinnointi (Valuutta, tontit, rakennukset..)
Mahdolliset toiminnot:
1. Random-kortit
2. Useat tietokantakäyttäjät (vain luku/kirjoitusoikeus)
4. Ulkoiset liittymät
1. Monopoli, c# peli/käyttöliittymä (valmistuu 26.4.2018 mennessä)
Yksi peli pelataan yhdellä ohjelman instanssilla (yhdellä tietokoneella) ohjelman käyttöliittymää käyttäen.
Ohjelma tallentaa kaikki pelissä olevat dynaamiset tiedot (Pelaajat, tontit, rahatilanne jne.) pelin instanssiin,
ja pelin loputtua tallentaa pelin tilastot kokonaisuutena tulosten yhteydessä.
Ohjelmassa voi myös katsoa pelaajien/vanhojen pelien tilastoja (Henkilö X on voittanut Y peliä..)
2. Tietokannan hallintatyökalu, Microsoft Access
Vaikka itse peliohjelma lukee ja kirjoittaa dataa tietokantaan, sitä ei ole tehty tietokannan käsittelyä varten, vaan
siihen on tehty oma työkalu. Microsoft Accesilla tehty tietokannan hallintatyökalulla pääsee käsiksi itse tietokantaan, ja
näkee helposti kaiken tarvittavan datan.
5. Muut ominaisuudet
Suorituskyky: Perus-PC (Koulun kone, 8GB RAM, 3.5GHz:n prosessori, n. 10 000 rivin tietomäärällä) alle 1 sekunti.
Tietoturva: Eristyneisyystaso nostetaan Serializableen, joka estää ongelmat 'Dirty Read', 'Nonrepeatable Read' ja 'Phantoms'.
Transaktiot toteutetaan ohjelmallisesti. Autocommit asetetaan nollaan lopullisessa versiossa. Näillä toimenpiteillä
päivitysten välisiä häiriöitä ja sekaantumisia.
Käytettävyys: Dataan pääsee helposti käsiksi, hyvä käyttöliittymä.
Ylläpidettävyys: Ylläpito tapahtuu kirjautumalla etäyhdeydellä mysql-palvelimelle, tai suoraan tietokannan sisältävällä RaspBerryllä.
Siirrettävyys: Hyvä versionhallinta GitHubissa, mahdollistaa hyvän siirrettävyyden ja hallinnan. Tietokannasta on helppo ottaa dumppi ja siirtää toiselle palvelimelle.
Toipuminen virhetilanteista: Ei ole, mahdollisten virheiden ja kaatumisien korjaaminen tapahtuu käsin.