Requirements - adamk90/PictoGraphy GitHub Wiki

Requirements (based on SDL)

Funkcionális követelmények

  • A felhasználóknak kell tudni regisztrálni és belépni
  • A felhasználó jelszó emlékeztetőt kérhet a megadott e-mail címére
  • A felhasználóknak kell tudni CAFF fájlt feltölteni, letölteni és törölni
  • A felhasználóknak kell tudni CAFF fájlokat keresni a CAFF fájlban lévő CIFF képek tag-ei, caption-je alapján
  • A felhasználóknak kell tudni CAFF fájlhoz megjegyzést hozzáfűzni
  • A rendszerben legyen adminisztrátor felhasználó, aki tud adatokat módosítani, törölni
  • Minden felhasználói interakció webes felületen zajlik

Továbbiakban felhasználó alatt a felhasználói jogosultságokkal rendelkező felhasználót, adminisztrátor alatt az adminisztrátori jogosultságokkal rendelkező felhasználót értjük.

Felhasznált technológiák

CAFF állományok feldolgozását több szempont miatt (teljesítmény, biztonság és memóriakezelés) C++ nyelven implementáljuk. Az adatbázis MySql adatbázis-kezelő rendszerrel lesz megvalósítva, mivel ez a jól ismert SQL nyelvet és relációs sémát használ. A backend NodeJS segítségével lesz megvalósítva, a kliens oldal pedig egy webes megoldás lesz, Bootstrap használatával.

Biztonsági követelmények és célok

  • Bizalmasság
    • A felhasználó személyes adataihoz csak a felhasználó és az adminisztrátor férhet hozzá
    • Az adminisztrátor adataihoz csak adminisztrátor férhet hozzá
  • Integritás
    • Felhasználó csak a saját képeit törölheti
    • Adminisztrátor bármilyen képet törölhet
  • Elérhetőség
    • Ha a weboldal elérhető, akkor minden funkció használható
  • Autentikáció
    • A webshopot csak regisztrált, bejelentkezett felhasználó vagy adminisztrátor használhatja
  • Autorizáció
    • Csak a képet feltöltő felhasználó törölheti a képet
    • Adminisztrátor bármelyik képet törölheti
    • Megjegyzést bármelyik felhasználó vagy adminisztrátor írhat bármelyik képhez
  • Auditálás
    • A felhasználók és az adminisztrátorok tevékenységét naplózni kell.