non-function (except interface)

This commit is contained in:
jorenchik 2023-10-31 00:21:32 +02:00
parent a8140dd832
commit a1ac032008
4 changed files with 58 additions and 100 deletions

View File

@ -1,30 +1,51 @@
\subsubsection{Projekta ierobežojumi} \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} \paragraph{Atbilstība standartiem}
\textit{(some text, but don't know what exactly)}
Š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{Datu privātuma atbilstība} \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. 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{Pieejamības standarti} \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{Intelektuālā īpašuma tiesības} Lai nodrošinātu vienlīdzīgu piekļuvi visiem lietotājiem, sistēmai
Projektā jāievēro autortiesību un preču zīmju likumi. jāatbilst tīmekļa satura pieejamības vadlīnijām (WCAG - Web Content
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)}. 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} \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. 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} \paragraph{Aparatūras ierobežojumi}
\textit{(some text, but don't know what exactly)}
\subparagraph{Atbalstītās ierīces} \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. 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{Serveris un mitināšana} \subparagraph{Serveris un mitināšana}
\subparagraph{Tīkla veiktspēja} 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.

View File

@ -1,6 +1,5 @@
\subsection{Nefunkcionālās prasības} \subsection{Nefunkcionālās prasības}
\input{./src/requirements/nonfunctional-requirements/performance-requirements.tex} \input{./src/requirements/nonfunctional-requirements/performance-requirements.tex}
\input{./src/requirements/nonfunctional-requirements/safety-requirements.tex} \input{./src/requirements/nonfunctional-requirements/attributes.tex}
\input{./src/requirements/nonfunctional-requirements/usability.tex}
\input{./src/requirements/nonfunctional-requirements/constraints.tex} \input{./src/requirements/nonfunctional-requirements/constraints.tex}
\input{./src/requirements/nonfunctional-requirements/external-requirements.tex} \input{./src/requirements/nonfunctional-requirements/external-requirements.tex}

View File

@ -1,7 +1,18 @@
\subsubsection{Veiktspējas prasības} \subsubsection{Veiktspējas prasības}
\begin{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 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 Darbībām spēles procesā jāizpildās ne ilgāk kā 3 sekundēs.
\item Datu saglabāšanai jāizpildās maksimums 3 sekunžu laikā. \item Darbspējas laiks ir vismaz 99,4\% no visa laika.
\item Prasības neattiecas uz tīkla veiktspēju. \end{enumerate}
\end{itemize}

View File

@ -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}