Commit 4b62df08 authored by M1888's avatar M1888

spek v2

parent ac200c5d
# Lottokone
TTOS0300 kurssin harjoitustyö.
Kevät 2019
Joeli Hokkanen <m1888@student.jamk.fi>
Joeli Hokkanen / M1888@student.jamk.fi
## Sisällysluettelo
1. [Sovelluksen yleiskuvaus](#sovelluksen-yleiskuvaus)
2. [Pelin kulku](#pelin-kulku)
3. [Käyttöympäristö ja käytetyt teknologiat](#käyttöympäristö-ja-käytetyt-teknologiat)
4. [Käyttäjäroolit](#käyttäjäroolit)
5. [Toteutettavat toiminnot](#toteutettavat-toiminnot)
6. [Käyttötapauskaavio](#käyttötapauskaavio)
7. [Luokkakaavio](#luokkakaavio)
## Sovelluksen yleiskuvaus
Tarkoituksena on tehdä peli, joka näyttää miten hölmöä lottoaminen käytännössä on. Pelin voittaa, kun voittaa lotossa päävoiton, ja pisteet tulevat siitä kuinka vähän olet saanut tilisi miinukselle.
Tätä varten loton toimintaa tulisi siis simuloida mahdollisimman tarkasti. Tämä sisältää mm.:
Tätä varten loton toimintaa tulisi siis simuloida mahdollisimman tarkasti - ehkä tätä voikin miettiä simulaattorina eikä pelinä. Tämä sisältää mm.:
- 7 numeroa (1-40) per lottorivi, lisänumerot
- simuloituja pelaajia (tuhansia), joiden riveistä ja niiden hinnasta potti muodostuu
- simuloituja pelaajia (satoja tuhansia), joiden riveistä ja niiden hinnasta potti muodostuu
- pelaajalle mahdollisuus valita omat vakiorivit, ja arpoa automaattisesti rivejä
- simuloitujen pelaajien voitot
Lisää pohdintaa ominaisuuksista:
- Asetukset ja pisteet tullaan tallentamaan paikalliseen SQLite-kantaan
- Suorituskyvyn kannalta kaikkien simuloitujen pelaajien satunnaisesti luotujen lottorivien tarkastus joka kierroksella kuulostaa raskaalta. Harkitaan ehkä massojen kohdalla vain todennäköisyyteen perustuvaa voittomäärettä?
- Mahdollinen save-state? Tämän voisi tallentaa SQLiteen myös
- **Suorituskyky**: voiko simulaatio rullata sopivalla nopeudella, jos oikeasti tarkastetaan kaikkien muka-pelaajien arvotut lottorivit?
- Kokeillaan multithreading-ratkaisua ja tarkastellaan sen suorituskykyä prototyypin avulla.
- Jos käy liian hitaaksi, niin jätetään asetus silti koodiin ja toteutetaan simuloiduille pelaajille nopeampi todennäköisyyteen perustuva voittojen jako.
## Pelin kulku
......@@ -53,12 +65,11 @@ Peli on paikallinen yksinpeli, ja käyttäjärooleja on siten vain yksi: Pelaaja
- [ ] Lottosimulaation asetusten säätö
- [ ] Scoreboard
## Käyttötapauskaavio
![](usecaset.png)
## Luokkamalli
## Luokkakaavio
Alustava luokkakaavio ohjelman komponenteista:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment