diff --git a/src/requirements/nonfunctional-requirements/constraints.tex b/src/requirements/nonfunctional-requirements/constraints.tex index 9787e2c..347416d 100644 --- a/src/requirements/nonfunctional-requirements/constraints.tex +++ b/src/requirements/nonfunctional-requirements/constraints.tex @@ -1,30 +1,51 @@ \subsubsection{Projekta ierobežojumi} + +\paragraph{Intelektuālā īpašuma tiesības} + + Projektā jāievēro autortiesību un preču zīmju likumi. Lai izvairītos no + juridiskām problēmām, ir jāsaņem atbilstošas atļaujas un licences par spēļu + aktīviem (assets). + \paragraph{Atbilstība standartiem} -\textit{(some text, but don't know what exactly)} -\subparagraph{Datu privātuma atbilstība} -Platformai ir jāatbilst datu aizsardzības noteikumiem, tostarp vispārīgajai datu aizsardzības regulai (General Data Protection Regulation - GDPR). -Ir būtiski noteikt visaptverošu datu apstrādes praksi, lai nodrošinātu lietotāju datu konfidencialitāti un drošību. + Šajā sadaļā ir izklāstīti galvenie standarti, kā prasībām sistēmai ir + jāatbilst, lai nodrošinātu robustumu, uzticamību un lietotāju tiesību un + cerību ievērošanu. -\subparagraph{Pieejamības standarti} -Lai nodrošinātu vienlīdzīgu piekļuvi visiem lietotājiem, platformai jāatbilst tīmekļa satura pieejamības vadlīnijām (Web Content Accessibility Guidelines - WCAG) attiecībā uz tīmekļa pieejamību. -Jāapsver lokalizācijas un iekļaušanas iespējas, lai pielāgotos dažādām auditorijām. + \subparagraph{Datu privātuma atbilstība} -\subparagraph{Intelektuālā īpašuma tiesības} -Projektā jāievēro autortiesību un preču zīmju likumi. -Lai izvairītos no juridiskām problēmām, ir jāsaņem atbilstošas atļaujas un licences par spēļu aktīviem \textit{(assets)}. + Sistēmai ir jāatbilst datu aizsardzības noteikumiem, tostarp + vispārīgajai datu aizsardzības regulai (GDPR - General Data Protection + Regulation). Ir būtiski noteikt visaptverošu datu apstrādes praksi, lai + nodrošinātu lietotāju datu konfidencialitāti un drošību. -\subparagraph{Drošības standarti} -Jāievieš stingri drošības pasākumi, ievērojot nozares paraugpraksi, piemēram, atvērto lietojumprogrammu drošības projektu visā pasaulē (Open Worldwide Application Security Project - OWASP), lai pasargātu no bieži sastopamām tīmekļa ievainojamībām. -Datu aizsardzībai jāizmanto šifrēšanas protokoli. + \subparagraph{Pieejamības standarti} + + Lai nodrošinātu vienlīdzīgu piekļuvi visiem lietotājiem, sistēmai + jāatbilst tīmekļa satura pieejamības vadlīnijām (WCAG - Web Content + Accessibility Guidelines) attiecībā uz tīmekļa pieejamību. Jāapsver + lokalizācijas un iekļaušanas iespējas, lai pielāgotos dažādām + auditorijām. + + \subparagraph{Drošības standarti} + + Jāievieš stingri drošības pasākumi, ievērojot nozares paraugpraksi, + piemēram, atvērto lietojumprogrammu drošības projektu visā pasaulē + (OWASP - Open Worldwide Application Security Project), lai pasargātu no + bieži sastopamām tīmekļa ievainojamībām. Datu aizsardzībai jāizmanto + šifrēšanas protokoli. \paragraph{Aparatūras ierobežojumi} -\textit{(some text, but don't know what exactly)} -\subparagraph{Atbalstītās ierīces} -Platformai jābūt saderīgai ar dažādām ierīcēm, tostarp galddatoriem, klēpjdatoriem, viedtālruņiem un planšetdatoriem. -Lai nodrošinātu netraucētu spēlēšanu, jānosaka minimālās aparatūras prasības. + \subparagraph{Atbalstītās ierīces} -\subparagraph{Serveris un mitināšana} + Sistēmai jābūt saderīgai ar dažādām ierīcēm, tostarp galddatoriem, + klēpjdatoriem, viedtālruņiem un planšetdatoriem. Lai nodrošinātu + netraucētu spēlēšanu, jānosaka minimālās aparatūras prasības. -\subparagraph{Tīkla veiktspēja} + \subparagraph{Serveris un mitināšana} + + Uz servera, kurāuz kā tiek mitināta sistēma, jābūt pieejamam docker + programmatūras atbalstam, lai standartizētu programmatūras izvietošanu + ražošanas vidē un ražošanas vides simulēšanai un atvieglotai + tehnoloģiju versiju sinhronizācijai ar izstrādes vidi. diff --git a/src/requirements/nonfunctional-requirements/index.tex b/src/requirements/nonfunctional-requirements/index.tex index caf75fb..8bae572 100644 --- a/src/requirements/nonfunctional-requirements/index.tex +++ b/src/requirements/nonfunctional-requirements/index.tex @@ -1,6 +1,5 @@ \subsection{Nefunkcionālās prasības} \input{./src/requirements/nonfunctional-requirements/performance-requirements.tex} -\input{./src/requirements/nonfunctional-requirements/safety-requirements.tex} -\input{./src/requirements/nonfunctional-requirements/usability.tex} +\input{./src/requirements/nonfunctional-requirements/attributes.tex} \input{./src/requirements/nonfunctional-requirements/constraints.tex} \input{./src/requirements/nonfunctional-requirements/external-requirements.tex} diff --git a/src/requirements/nonfunctional-requirements/performance-requirements.tex b/src/requirements/nonfunctional-requirements/performance-requirements.tex index a220d16..933a552 100644 --- a/src/requirements/nonfunctional-requirements/performance-requirements.tex +++ b/src/requirements/nonfunctional-requirements/performance-requirements.tex @@ -1,7 +1,18 @@ \subsubsection{Veiktspējas prasības} -\begin{itemize} - \item Sistēmai ir jānodrošina, ka 95\% no dienā veiktajiem pieprasījumiem tiek izpildīti uz servera ne ilgāk kā 5 sekundēs. - \item Jānodrošina normāla sistēmas darība vismaz 500 lietotājiem paralēli. - \item Datu saglabāšanai jāizpildās maksimums 3 sekunžu laikā. - \item Prasības neattiecas uz tīkla veiktspēju. -\end{itemize} + +\paragraph{Statiskā veiktspēja} + Uz statisko veiktspēju ir sekojošas prasības: + + \begin{enumerate} + \item Normāla sistēmas darbība vismaz 500 lietotājiem paralēli. + \item Normāla sistēmas darbība ar vismaz 40 paralēlām spēles instancēm. + \end{enumerate} +\paragraph{Dinamiskā veiktspēja} + Uz dinamisko veiktspēju ir sekojošas prasības: + + \begin{enumerate} + \item Sistēmai ir jānodrošina, ka 95\% no dienā veiktajiem pieprasījumiem tiek izpildīti uz servera ne ilgāk kā 5 sekundēs. + \item Darbībām spēles procesā jāizpildās ne ilgāk kā 3 sekundēs. + \item Darbspējas laiks ir vismaz 99,4\% no visa laika. + \end{enumerate} + diff --git a/src/requirements/nonfunctional-requirements/safety-requirements.tex b/src/requirements/nonfunctional-requirements/safety-requirements.tex index 8881e8d..e69de29 100644 --- a/src/requirements/nonfunctional-requirements/safety-requirements.tex +++ b/src/requirements/nonfunctional-requirements/safety-requirements.tex @@ -1,73 +0,0 @@ -\subsubsection{Drošības prasības} -\begin{enumerate} - \item Autentifikācija - \begin{itemize} - \item Jāizmanto daudzfaktoru autentifikāciju (MFA). - \item Paroles tiek glabātas šifrētā formātā, pirms šifrēšanas, tām pievieno sāli. - \item Jāizmanto drošus paroles atiestatīšanas procesus. - \end{itemize} - \item Pilnvarošana - \begin{itemize} - \item Uz lomu bāzēta piekļuve. - \item Pilnvaru pārbaude gan priekšgala saskarnē, gan aizmugursistēmā. - \end{itemize} - \item Datu aizsardzība - \begin{itemize} - \item Datu šifrēšana glabājot un sūtot. - \item Sistēmai nav jāglabā dati, kas nav nepieciešami sistēmas darbībai. - \end{itemize} - \item Sesiju pārvalde - \begin{itemize} - \item \textit{Izmanto tikai HTTP sīkdatnes.} - \item \textit{Use secure and http-only cookies.} - \item Seisijas noildzes izmantošana. - \end{itemize} - \item Input Validation \& Sanitization - \begin{itemize} - \item SQL injekciju, komandu injekciju un citu injekciju aizsardzība. - \item \textit{Protect against SQL injection, command injection, and other injection attacks.} - \item \textit{Implement proper validation for all user inputs and any data received from external systems.} - \end{itemize} - \item Izvades iekodēšana - \begin{itemize} - \item Aizsardzība pret starpvietņu-skriptošanas (XSS) uzbrukumiem. - \end{itemize} - \item Starpvietņu pieprasījumu (CSRF) aizsardzība - \begin{itemize} - \item Kļūdu paziņojumi neatklāj sensitīvu informāciju. - \item Kļūdu paziņojumi, kas ir pielāgoti lietotāju grupai. - \end{itemize} - \item Error Handling - \begin{itemize} - \item CSRF marķiera izmantošana. - \end{itemize} - \item Server \& Infrastructure Security - \begin{itemize} - \item Vides \textit{(environment)} izolēšana. - \end{itemize} - \item API Security - \begin{itemize} - \item API marķieru izmantošana. - \item API pieprasījumu ierobežojums. - \item API pieprasījumu ievades validācija un sanitizēšana. - \end{itemize} - \item Datņu augšuplādēšana - \begin{itemize} - \item \textit{Ensure uploaded files are scanned for malware.} - \item \textit{Validate and sanitize the file type and content.} - \item \textit{Store files in a secure manner, avoiding direct execution paths.} - \end{itemize} - \item Backup and Disaster Recovery - \begin{itemize} - \item \textit{The system shall support regular data backups.} - \item \textit{There should be a procedure for disaster recovery.} - - \end{itemize} - \item Monitoring \& Logging - \begin{itemize} - \item \textit{Implement real-time monitoring and alerting for suspicious activities - implement a canary bird.} - \item \textit{Maintain logs securely and regularly review them.} - \item \textit{Save log backups on a remote server.} - \item \textit{Ensure logs don't store sensitive information.} - \end{itemize} -\end{enumerate}