picquiz/Dokumentáció/rendszerterv.md
2022-10-25 11:20:38 +02:00

5.1 KiB

Rendszerterv

1. A rendszer célja

Egy olyan web alapú alkalmazás létrehozása Laravel keretrendszer segítségével, ahol a felhasználók időtöltés és új ismeretek szerzésének céljából egy olyan játékot játszhatnak, ahol egy képről kell eldönteni, hogy honnan, miből származik. Lehet regisztráció nélkül és regisztrációval is játszani. A regisztrált felhasználók statisztikát kapnak eredményeikről, illetve elérhető egy globális statisztika is. A felhasználó fiók készítéséhez megadnak jelszót, e-mail címet, felhasználónevet, illetve profilképet is feltölthetnek, de ez opcionális. A weboldal adminisztrátorai képesek új feladványokat feltölteni a rendszerbe, illetve szükség szerűen törölni azokat. Az adminisztrátorok igény szerint törölhetik a szabályoknak nem megfelelő fiókokat, vagy előléptethetik őket adminisztrátorokká.

2. Projektterv

PHP, HTML, CSS, JavaScript használatával, Laravel keretrendszerben webalkalmazás létrehozása.

2.1 Projektszerepkörök, felelőségek:

  • Scrum masters: Banyik Nándor, Matuch Richárd
  • Product owner:
  • Üzleti szereplő:

2.2 Projektmunkások és felelőségek:

  • Frontend: Györkis Tamás, Karácsony Balázs, Kovács Dávid
  • Backend: Györkis Tamás, Karácsony Balázs, Kovács Dávid
  • Tesztelés: Györkis Tamás, Karácsony Balázs, Kovács Dávid

2.3 Ütemterv:

Funkció Feladat Prioritás Becslés (nap) Aktuális becslés (nap) Eltelt idő (nap) Becsült idő (nap)
Követelmény specifikáció Megírás 1 1 1 1 1
Funkcionális specifikáció Megírás 1 1 1 1 1
Rendszerterv Megírás 1 1 1 1 1
Program Képernyőtervek elkészítése 2 1 1 1 1
Program Prototípus elkészítése 3 8 8 8 8
Program Alapfunkciók elkészítése 3 8 8 8 8
Program Tesztelés 4 2 2 2 2

2.4 Mérföldkövek:

  • Prototípus átadása

3. Üzleti folyamatok modellje

3.1 Üzleti szereplők

  • Látogatók (Felhasználó fiókkal nem rendelkező szereplők)
  • Felhasználók
  • Adminisztrátorok

3.2 Üzleti folyamatok

4. Követelmények

4.1 Funkcionális követelmények

ID Megnevezés Leírás
K1 ... ...

4.2 Nemfunkcionális követelmények

ID Megnevezés Leírás
K4 ... ...

4.3 Támogatott eszközök

Modern (pl.: Google Chrome, Firefox, Safari), vagy beépített webböngészővel, illetve interneteléréssel rendelkező eszközök összessége.

5. Funkcionális terv

5.1 Rendszerszereplők

5.2 Menühierarchiák

6. Fizikai környezet

Laravel által szolgáltatott fejlesztői webszerver fejlesztés során, a kész projekt esetén tényleges webszerver.

6.1 Hardver topológia

  • Szerver weboldal kiszolgáló funkciókkal és szerver adatbázis kiszolgálóval.
  • Vagy egy szerver webszerver és adatbázis szerver funkciókkal.

6.2 Fejlesztő eszközök

  • Programozási nyelvek, leírónyelvek, keretrendszerek: Laravel, PHP, HTML, CSS, JavaScript, BootStrap
  • Adatbázis kezelő programok: PHPMyAdmin, MySql Workbench
  • Fejlesztői környezetek: Visual Studio Code, PHPStorm, Vim
  • Tesztelési környezet: Webböngésző programok (Pl.: Google Chrome, Firefox, Microsoft Edge), illetve ezek beépített fejlesztői eszközei.

7. Architekturális terv

7.1 Webszerver

Apache webszerver, IIS webszerver, Laravel által nyújtott fejelsztői webszerver

7.2 Adatbázis rendszer

MySql relációs adatbázis

8. Adatbázis terv

9. Implementációs terv

A weboldal elkészítéséhez Laravel keretrendszert használunk. Az adatbázist Laravel-ben migrációkkal készítjük el. Az alkalmazás egyes elemei (nézetek, publikus fájlok, modellek, stb.) külön mappákban találhatóak. A dokumentáció, illetve a weboldalon megjelenő szövegektől eltekintve törekszünk az angol nyelv használatára. Szükség esetén JavaScript-et is alkalmazunk az egyes elemeknél.

10. Telepítési terv

Az alkalmazás telepítéséhez szükséges egy webkiszolgáló. Ez Windows rendszeren lehet xampp (ami Apache szervert és MySql szervert foglal magába.), illetve linuxos rendszereken közvetlen lehet Apache és MySql szerver. Az alkalmazás fájljait be kell másolni a webszerver oldalak számára fent tartott mappájába, és megadni a .env fájlban a adatbázis szerver elérhetőségeit (Cím, felhasználó, jelszó, adatbázis). Ezeket a felhasználókat, adatbázisokat létre kell hozni az adatbázis szerveren is. Ezután migrálni kell az adatbázisba a táblákat, és azok tartalmait. Ezután az üzemeltető által választott címen elérhető a weboldal.

11. Karbantartási terv

  • A projekt átadása után jelzett hibák (akár felhasználók, akár megrendelők által jelzett) javítása igényszerűen.
  • 6 havonta Laravel keretrendszer frissítése és egyes komponensek frissítése ezzel együtt.