# Rendszerterv 1. **A rendszer célja :** A csapatunk egy letisztult könnyen kezelhető, több egyszerű és szórakoztató játékot tartalmazó oldalt szeretne létrehozni. Nem volt célunk bonyolult, időigényes játékokat hozzáadni csak egyszerű de nagyszerű alkalmi játékokat akartunk hozzáadni. 2. **Projekt terv :** Projekten dolgozó fejlesztők: * **Asztalos Attila** - fejlesztő * **Nagy Sándor** - fejlesztő * **Parókai Dominik** - fejlesztő **Ütemterv** A projekt véglegesítéséig rendelkezésre álló idő: 13 hét. * **1.hét** : Projekt ötletének kitalálása.Egységes terv kialakítása, funkciók átbeszélése, feladatok felosztása * **2.hét** : Fejlesztői környezet egyeztetése, véglegesíteni a projekt tervet. * **3.hét** : Követelmény specifikáció és funkcionális specifikáció megírása. * **4.hét** : Fejlesztés, tesztelés ... * **5.hét** : Alap oldal elkészül ,egyszemélyes játékokkal (Mini-projekt bemutatása) * **6-13.hét** : Oldal továbbfejlesztése, tesztelése és kétszemélyes játékmód kialakítása. * **13.hét** : A projekt bemutatása. **Kiosztott feladatok** * *Asztalos Attila* - Kő-papír-olló (egy- és többjátékos mód) * *Nagy Sándor* - Akasztófa (egy- és többjátékos mód) * *Parókai Dominik* - Memória játék (egy- és többjátékos mód) * Közös feladat: Dokumentáció készítése, projekt működőképessé tétele. 3. **Funkcionális terv :** Rendszer szereplők: - **Felhasználó** - Funkcionális követelmények : - Képes a játékot újraindítani - Képes könnyen átváltani menüből játékra - Képes váltani a játékok között - Képes a játékon belül használni a játék elemeit - Beállíthatja a nevét és elmentheti elért pontjait (Nagy projekt) - Nem funkcionális követelmények : - Igényes, letisztult UI 4. **Fizikai környezet :** - Böngésző (webalkalmazás) - Fejlesztői eszközök - git - Visual Studio Code - Bitbucket repo - Jira Software - Node.js szerver - HackMD.io - MongoDB 5. **Architekturális terv:** o Az alkalmazás rétegei, fő komponensei, ezek kapcsolatai: * **Főmenü** : index.ejs az főoldal váza, index.css a kinézetért felel, itt érhetjük el a játékok oldalait.(akasztofa.ejs,memoria.ejs,kopapirollo.ejs) * **Akasztófa játék**: akasztofa.ejs a játék váza, akasztofa.css a játék kinézetéért felel, akasztofa.js-en keresztül válik a játékmechanika működőképessé. * **Memória játék**: memoria.ejs a játék váza, memoria.css a kinézetért felel, memoria.js-en keresztül válik a játékmechanika működőképessé. * **Kő-papír-olló játék**: kopapirollo.ejs a játék váza,kopapirollo.css a kinézetért felel, kopapirollo.js-en keresztül válik a játékmechanika működőképessé. o Változások kezelése: A bitbucket felületén keresztül, a git verziókezelő használatával. o Rendszer bővíthetősége: Az oldal a jelenlegi 3 játékon kívül még több játék befogadására is képes lehet. A játékokat lehet bővíteni több személyes móddal, akár több gépen játszva. 6. **Implementációs terv** Egyszerű játékok projekt HTML, CSS, és Javascript nyelven íródik. A felhasználói felület kinézetét a webböngésző segítségével valósítjuk meg a Node.js webalkalmazáson keresztül. 7. **Technology Stack** - Frontend: - HTML - CSS - JavaScript - Backend: - Node.js - JSON 8. **Tesztterv:** Tesztelés elvei: - Játékok működésében és a szerveri oldalon található hibák megtalálása és javítása - Szeretnénk, ha mindkét oldalán hibamentesen működne Tesztelés folyamata: - Manuális tesztelés