release(2.0.0)
@ -22,8 +22,11 @@
|
||||
\usepackage{fmtcount}
|
||||
\usepackage{ltablex}
|
||||
\usepackage{chngcntr}
|
||||
\usepackage{longtable}
|
||||
\usepackage{ifthen}
|
||||
\usetikzlibrary{positioning}
|
||||
|
||||
|
||||
\hypersetup{
|
||||
colorlinks=true,
|
||||
linkcolor=black,
|
||||
@ -95,6 +98,10 @@
|
||||
\newcounter{rownum}
|
||||
\renewcommand{\therownum}{\padzeroes[2]{\decimal{rownum}}}
|
||||
|
||||
\keepXColumns
|
||||
|
||||
\input{./src/utils/index.tex}
|
||||
|
||||
|
||||
\begin{document}
|
||||
\input{./src/title-page.tex}
|
||||
@ -105,5 +112,6 @@
|
||||
\input{./src/legends.tex}
|
||||
\input{./src/description/index.tex}
|
||||
\input{./src/requirements/index.tex}
|
||||
% \input{./src/test.tex}
|
||||
|
||||
\end{document}
|
||||
|
||||
@ -4,7 +4,7 @@ Sociālā lomu spēle ``Mafija'' ir plaši pazīstama.
|
||||
Tā ir pieejama vairākos paveidos un formātos, kā arī piedāvā neierobežotu skaitu konfigurāciju un lomu.
|
||||
Spēlētāju ērtībai tiek piedāvāts lietotnes formāts, kas ietver norādījumus, informējot lietotāju par pieejamajām iespējām, un skaidrojumus, aprakstot spēles elementus un saskarni, ar mērķi vienkāršot tās spēlēšanu.
|
||||
Tirgus izpēte apliecina, ka ir pieejami vairāki, nepilnvērtīgi risinājumi.
|
||||
Programmatūras prasību specifikācija apraksta sistēmas pamatprasības ar papildus funkcionalitāti, tostarp lomu klāsta papildināšanu, spēles konfigurāciju izveidi, kā arī priviliģēta lietotāja stāvokli (maksas lietotāja), izmantojot abonamenta formāta maksājumu sistēmu.
|
||||
Programmatūras prasību specifikācija apraksta sistēmas pamatprasības ar papildus funkcionalitāti, tostarp lomu klāsta papildināšanu, spēles konfigurāciju izveidi, kā arī priviliģēta lietotāja stāvokli (maksas lietotāja), izmantojot abonementa balstītu maksājumu sistēmu.
|
||||
|
||||
\textbf{Atslēgvārdi:}
|
||||
Mafijas spēle, sistēmas prasības, specifikācijas dokuments, programmatūras uzlabošana, lomu spēles mehānika, vienkāršota spēlēšana, organizatoriski risinājumi, programmatūras prasību specifikācija, lietotāju veidots saturs, abonamenta maksājumi, maksas lietotājs.
|
||||
|
||||
@ -1,8 +1,13 @@
|
||||
\subsection{Pieņēmumi un atkarības}
|
||||
\begin{itemize}
|
||||
\item Platformu veidojošās datnes, datu bāzes, kontrolieri tiks mitināti pie viena mitināšanas pakalpojuma sniedzēja.
|
||||
\item Ierīce atbalsta un ļauj pilnā sistēmas funkcionalitātē pieslēgties sistēmai. Lietotāja ierīce ir sasniegusi minimālo vajadzības slieksni, lai izmantotu produktu, bez problēmām.
|
||||
\item Tiek pieņemts, ka lietotāja ierīcei ir stabils interneta savienojums. Bez stabila interneta savienojuma ir iespējami traucējumi lietotnes izmantošanā.
|
||||
\item Sistēmā būs integrēti maksājumu ārpakalpojumi. Sistēmā būs iespēja iegūt maksas pakalpojumus.
|
||||
\item Sistēma tiek veidota kā interneta lietotne, tāpēc ierobežojumi galvenokārt ir saistīti ar pārlūkprogrammu savietojamību. Tiek pieņemts, ka sistēmas lietotāji to lietos, izmantojot pārlūkprogrammas, kas atbalsta funkcionālas prasības, kas ir nepieciešamas, lai īstenotu korektu sistēmas darbību.
|
||||
\item Ierīce atbalsta un ļauj pilnā sistēmas funkcionalitātē pieslēgties sistēmai.
|
||||
Lietotāja ierīce ir sasniegusi minimālo vajadzības slieksni, lai izmantotu produktu, bez problēmām.
|
||||
\item Tiek pieņemts, ka lietotāja ierīcei ir stabils interneta savienojums.
|
||||
Bez stabila interneta savienojuma ir iespējami traucējumi lietotnes izmantošanā.
|
||||
\item Sistēmā būs integrēti maksājumu ārpakalpojumi.
|
||||
Sistēmā būs iespēja iegūt maksas pakalpojumus.
|
||||
\item Sistēma tiek veidota kā interneta lietotne, tāpēc ierobežojumi galvenokārt ir saistīti ar pārlūkprogrammu savietojamību.
|
||||
Tiek pieņemts, ka sistēmas lietotāji to lietos, izmantojot pārlūkprogrammas, kas atbalsta funkcionālas prasības, kas ir nepieciešamas, lai īstenotu korektu sistēmas darbību.
|
||||
\item Sistēma izmantos maksājumu apstrādātāju pakalpojumus, kas atbalsta maksājumu veikšanu (maksājuma datu savākšanu) mājaslapā un to apstrādi ārpus sistēmas.
|
||||
\end{itemize}
|
||||
|
||||
|
Before Width: | Height: | Size: 195 KiB |
@ -4,14 +4,14 @@ Sistēmā ``MAFIJA'' tiks realizētas sekojošās darījumprasības:
|
||||
\item Lietotāju reģistrācija, autentifikācija;
|
||||
\item Lietotāju un to privilēģiju pārvalde;
|
||||
\item Lietotāju konta apstiprināšana, izmantojot e-pastu;
|
||||
\item Lietotāju profilu personalizācija - profila attēla un segvārda redigēšana;
|
||||
\item Lietotāju profilu personalizācija un kontu rediģešana;
|
||||
\item Lietotāju stāvokļa virtuālajās telpās uzturēšana un izmaiņa;
|
||||
\item Lietotāju informēšana, izmantojot paziņojumu sistēmu;
|
||||
\item Sinhronizēta spēles stāvokļa atjaunināšana;
|
||||
\item Spēļu konfigurāciju un lomu klāsta pārvalde;
|
||||
\item Publisko un privāto virtuālo telpu pārvalde;
|
||||
\item Spēles uzstādījumu un lomu klāsta publiska veidošana, rediģēšana un dzēšana;
|
||||
\item Publisko un privāto virtuālo spēles istabu pārvalde;
|
||||
\item Spēles automātiska vadība;
|
||||
\item Kopēja un ierobežotu grupu (lomu atkarīga) tērzēšana;
|
||||
\item Privilēģiju izmaiņa, imantojot bezpersonisku maksājumu sistēmu;
|
||||
\item Privilēģiju izmaiņa, izmantojot bezpersonisku maksājumu sistēmu;
|
||||
\item Lietotāju moderēšana;
|
||||
\end{enumerate}
|
||||
|
||||
@ -1,14 +1,13 @@
|
||||
\subsection{Vispārējie ierobežojumi}
|
||||
|
||||
\begin{enumerate}
|
||||
\item Drošības un aizsardzības apsvērumi:
|
||||
\begin{enumerate}
|
||||
\item Lietotāju paroles tiek uzglabāti šifrētā veidā, izmantojot SHA-2 algoritmu.
|
||||
\item Lietotāju paroles tiek uzglabātas šifrētā veidā, izmantojot SHA-2 algoritmu.
|
||||
\item Tiek izmantota trešās puses autentifikācijas integrācija (izmantojot ārējas bibliotēkas).
|
||||
\end{enumerate}
|
||||
\item Regulējoša politika:
|
||||
\begin{enumerate}
|
||||
\item Par analītikas nolūkos izmantotu sīkdatņu atļauja tiek prasīta.
|
||||
\item Par analītikas nolūkos izmantotu sīkdatņu atļauja tiek prasīta.
|
||||
\end{enumerate}
|
||||
\item Izstrādes vides, tehnoloģijas un tīmekļa ierobežojumi
|
||||
\begin{enumerate}
|
||||
@ -18,5 +17,3 @@
|
||||
\item Sistēmas ietvaros mitināta vietne ir kopīga neatkarīgi no ierīces, no kuras tā tiek izmantota (netiek izmantots apakšdomēna vārds mobilo tālruņu lietotājiem).
|
||||
\end{enumerate}
|
||||
\end{enumerate}
|
||||
|
||||
|
||||
|
||||
@ -1,22 +1,23 @@
|
||||
\subsection{Sistēmas lietotāji}
|
||||
|
||||
|
||||
Nereģistrēts lietotājs (viesis) lietotāju grupas lietotāji nav reģistrēti datubāzē, i.e., viesis ir jebkurš lietotājs, kas nav pieteicies autentifikācijai vai kuram nav konta.
|
||||
Tas var reģistrēties vai atjaunot savu lietotāja profilu;
|
||||
|
||||
Kopš lietotājs ir pieteicies un tika autentificēts, tam ir pieejamas registrēta lietotāja grupas darbības, kas as spēli, profilu, kontu saistītās darbības.
|
||||
Lielākā daļa lietotāju piederēs šij lietotāju grupai.
|
||||
Lielākā daļa lietotāju piederēs šaj lietotāju grupai.
|
||||
Papildus reģistrētiem lietotājiem, par kuru kļūst jebkurš reģistrējies lietotājs, daļai no lietotāji maksas lietotāja grupā, kam ir pieejama papildus uz noteiktu laiku periodu pieejamā funkcionalitāte, kā veidot jaunas virtuālās istabas, spēļu uzstādījumu, jaunas lomas u.c.
|
||||
Reģistrēta lietotāja un maksas lietotāja grupu apvieno spēles funkcionalitāte, kas ir vajadzīga pamata sistēmas mērķa realizēšanai - spēles procesam.
|
||||
|
||||
Vadības lietotāju grupas mērķis ir uzturēt un regulēt istabas, lietotājus un ar noteiktus spēles procesu saistītus sistēmas atribūtus sai ar darbībām, kā blokēšana, stāvokļa regulēšana, konta informācijas izmaiņa vai lomu redigēšana u.c.
|
||||
Administrātoru lietotāju papildus pamata vadības funkcionalitātei piemīt paplašinātsas darbības saistībā ar noteikto kritisku spēles sistēmas atribūtu izmaiņas, kā, piemēram, lietotāju lietotāju grupas maiņa.
|
||||
Administratoru grupas mērķis ir uzturēt un regulēt istabas un lietotājus ar darbībām, kā bloķēšana, spēles istabas un lietoāju stāvokļa izmainīšana, konta informācijas izmaiņa, lomu uzstādījumu un spēles uzstādījumu rediģēšana.
|
||||
Lietotājs ``Sistēma'' veic noteiktas ar spēles gaitu saistītas darbības, kas notiek automātiski un nav citu lietotāju grupu veicamas tiešā veidā.
|
||||
|
||||
Maksājumu apstrādātājs tiks izmantots, lai nodrošinātu maksāšanas apstrādāšanu ārpus sistēmas. Tādējādi sistēma uzglabā minimālu informāciju par transakcijām, to realizēšanu uzticot arējam pakalpojumu sniedzējam.
|
||||
Ar lietotājiem saistītās datu plūsmas ir attēlotas sistēmas nultā līmeņa DPD (\ref{fig:dpd-0} attēls).
|
||||
|
||||
Iepriekš aprakstītās datu plūsmas ir attēlotas sistēmas nultā līmeņa DPD (\ref{fig:dpd_0} attēls).
|
||||
|
||||
\begin{figure}[h]
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/description/img/DPD_0.png}
|
||||
\includegraphics[width=\linewidth]{./src/img/0tāLīmeņaDPD.png}
|
||||
\caption{0-tā līmeņa DPD}
|
||||
\label{fig:dpd_0}
|
||||
\label{fig:dpd-0}
|
||||
\end{figure}
|
||||
|
||||
BIN
src/img/0tāLīmeņaDPD.png
Normal file
|
After Width: | Height: | Size: 173 KiB |
BIN
src/img/1LīmeņaDPDLietotājuDatubāze.png
Normal file
|
After Width: | Height: | Size: 173 KiB |
BIN
src/img/1LīmeņaDPDSpēlesDatubāze.png
Normal file
|
After Width: | Height: | Size: 165 KiB |
BIN
src/img/CenuModulis.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
src/img/KonceptualaisERModelis.png
Normal file
|
After Width: | Height: | Size: 422 KiB |
BIN
src/img/LietotājuKontuModulis.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
src/img/MaksasAbonementaModuls.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
src/img/ReģistrācijasPieteikšanāsModulis.png
Normal file
|
After Width: | Height: | Size: 215 KiB |
BIN
src/img/SpēlesGaitasModulis.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
src/img/SpēlesIstabasModulis.png
Normal file
|
After Width: | Height: | Size: 185 KiB |
BIN
src/img/SpēlesLomuModulis.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
src/img/SpēlesUzstādījumuModulis.png
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
src/img/TerzēšanasModulis.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
@ -1,14 +1,19 @@
|
||||
\subsection*{Darbības sfēra}
|
||||
|
||||
Platforma ``MAFIJA'' atdarina pazīstamu lomu spēli, kas ir sociāla galda spēle ar dedukcijas elementiem.
|
||||
Spēlē piedalās indivīdi - Spēlētāji, kas sadalīti vairākās grupās un tajās ietvertās lomās.
|
||||
Lomu grupa ``Ciems'' lomas ``Iedzīvotājs'' ietvaros cenšas izdibināt kuri ir lomu grupas ``Mafija'' locekļi.
|
||||
Mafijas mērķis ir radīt haosu ciema iedzīvotāju vidū un pakāpeniski izslēgt ciema iedzīvotājus no spēles, izmantojot stratēģisku manipulāciju vai spēlē paredzētās lomas darbības.
|
||||
Spēlētāji, kuri nav ietverti ne ``Ciems'', ne ``Mafija'' lomu grupā cenšas sasniegt tiem iedalītās lomas darbības mērķi.
|
||||
Spēlētāji, kuri nav ietverti ne ``Ciems”, ne “Mafija'' lomu grupā cenšas sasniegt tiem iedalītās lomas darbības mērķi.
|
||||
Tikai mafijai ir informācija par to, kuri no spēlētāju loka pieder ``Mafija'' lomu grupai.
|
||||
Katram spēlētājam jāizmanto individuāla ierīce, kas nodrošina iespēju pieslēgties tīmeklim, lai pieteikties platformā, pievienotos konkrētajai spēlei un piedalītos tajā.
|
||||
|
||||
Katra spēlētāja ierīcē spēles sesijas laikā tiek parādīta individuāla informācija par iedalīto lomu un ar to saistītajām, pieejamajām darbībām, kuru nav paredzēts vai atļauts rādīt citiem spēlētājiem.
|
||||
Platformas vizuālā saskarne ietver informāciju par spēles aktuālo stāvokli, precīzāk, fāzi (diena / nakts), spēles ilgumu, palikušo spēlētāju skaitu un citiem spēli raksturojošiem faktoriem.
|
||||
|
||||
Spēlētāja darbību klāsts ir atkarīgas no iedalītās lomas un aktuālā spēles stāvokļa.
|
||||
Spēles organizātoram (maksas lietotājam) ir iespēja izveidot virtuālu telpu un pielāgot tās iestatījumus, lai organizētu spēli vai mainītu tās izpausmi, lomu klāstu un citus raksturojošos faktorus.
|
||||
Spēles organizātoram (maksas lietotājam) ir iespēja izveidot virtuālu telpu un pielāgot tās iestatījumus, lai organizētu spēli vai mainītu to uzstādījumu, kas ietver noteiktās lomas, kā arī mainīt un veidot jaunas lomas.
|
||||
|
||||
Katram spēlētājam tiek nodrošināta sihnronizēta informācija par spēles tekošo stāvokli un pieejamajām darbībām, tai skaitā, paziņojumi par spēles stāvokļa izmaiņām.
|
||||
Ārpus spēles sesijas, lietotājiem ir pieejams spēļu saraksts, kas var ietvert gan atklātas, gan privātas virtuālās spēļu telpas, statistikas pārskats, kurā aplūkojama statistika par jau izspēlētajām spēlēm, un lietotāja profils, kurā var rediģēt lietotāja raksturojošo informāciju.
|
||||
|
||||
Ārpus spēles sesijas, lietotājiem ir pieejams spēļu istabu saraksts, kas var ietvert gan atklātas, gan privātas virtuālās spēļu telpas, statistikas pārskats, kurā aplūkojama statistika par jau izspēlētajām spēlēm, un lietotāja profils, kurā var rediģēt lietotāja raksturojošo informāciju.
|
||||
|
||||
@ -1,6 +1,9 @@
|
||||
\section*{Apzīmējumu saraksts}
|
||||
\addcontentsline{toc}{section}{Apzīmējumu saraksts}
|
||||
MAFIJA - tiešsaistes lomu spēles platforma;
|
||||
|
||||
Abonements - uz noteiktu laiku par maksu piešķirtās papildus lietotāja iespējas;
|
||||
|
||||
Karodziņš - Būla mainīgais, i.e., mainīgais, kas var būt vai nu patiess vai nu nepatiess;
|
||||
|
||||
PPS - programmatūras prasību specifikācija;
|
||||
|
||||
@ -8,7 +11,11 @@ ER modelis - entitāšu saišu modelis (angl. entity relationship model);
|
||||
|
||||
DPD - datu plūsmas diagramma;
|
||||
|
||||
LBPK - Uz lomu bāzēta piekļuves kontole;
|
||||
Spēles istaba - lietotāju kopa, kas ir saistīti vienas spēles ietvaros, i.e., spēles instance;
|
||||
|
||||
Sistēmas loma - sistēmas lietotāju grupa ar noteiktām privilēģijām;
|
||||
|
||||
Loma - spēlēs loma, kam piemīt noteiktās darbības un trūkumi;
|
||||
|
||||
Maksas siena - maksājums par lietotāju pieeju daļai no sistēmas piedāvātās funkcionalitātes;
|
||||
|
||||
|
||||
@ -1,26 +1,23 @@
|
||||
\subsection{Konceptuālais datu bāzes apraksts}
|
||||
Konceptuālajā modelī redzamās entītijas no konceptuālā ER modeļa (\ref{fig:conceptual_model} attēls):
|
||||
Konceptuālajā modelī redzamās entītātes no konceptuālā ER modeļa (\ref{fig:conceptual-model} attēls):
|
||||
\begin{itemize}
|
||||
\item Lietotājs - reģistrēts lietotājs, kas pieder noteiktai grupai;
|
||||
\item Lietotāju grupa - grupa ar saistītp atļauto darbību kopo;
|
||||
\item Lietotāju grupas darbība - noteikta darbību sistēmā;
|
||||
\item Attēls - datnes metadati un tās adrese, kas ir saistīta ar lietotāju vai spēles lomu;
|
||||
\item Maksas abonements - lietotāju maksas abonementa dati. Taču abonementa stāvokļa datu uzglabāšanu atbild maksājuma procesors, no kura ir iegūstama informācija, kā nākamās norēķina datums un vai abonements ir aktīvs.
|
||||
\item Maksas abonements - lietotāju maksas abonementa dati.
|
||||
\item Abonementa cena - cena par abonementu, kas darbojas noteiktā laika periodā.
|
||||
\item Spēles uzstādījums - vairāku spēles lomu kopa, kas ir izveidojamas arī publiski (maksas spēlētājiem)
|
||||
\item Spēles loma - spēlē izmantojamaās lomas apraksts, katrai lomai obligāti piemī trūkumi un darbības. Tā var tikt izveidota publiski (analoģiski spēles uzstādījumiem);
|
||||
\item Spēles loma - spēlē izmantojamās lomas apraksts, katrai lomai obligāti piemīt trūkumi un darbības. Tā var tikt izveidota publiski (analoģiski spēles uzstādījumiem);
|
||||
\item Lomas darbība - vienai vai vairākām spēles lomas piemītošās spēles darbības apraksts un spēlei specifiskie atribūti(/-s);
|
||||
\item Lomas trūkums - vienai vai vairākām spēles lomas piemītošā trūkuma apraksts;
|
||||
\item Spēlētājs - vienai virtuālai spēles istabai piederošais spēlētājs. Tam piemīt viena spēles loma un var būt vairākas spēles gaitā veiktās lomai atbilstošās darbības;
|
||||
\item Īsziņa - virtuālās istabas terzēšanā izveidotā īsziņa, kas tiek saistīta ar vienu spēlētāju un var atbildēt uz citu īsziņu izveides laikā;
|
||||
\item Īsziņa - virtuālās istabas terzēšanā izveidotā īsziņa, kas tiek saistīta ar vienu spēlētāju un var atbildēt uz citu īsziņu izveides laikā;
|
||||
\item Spēles notikums - spēlē notiekošie notikumi, kā spēles fāzes maiņa, izbalsošanas, slepkavības u.c. .
|
||||
\item Spēles vituāla istaba - vienas gaidāmas, tekošās vai pagātnē notikušas spēles, kam piemīt spēlētāji, spēles uzstādījumi, spēles notiukumi, izveidotājs (lietotājs maskas lietotāja grupā);
|
||||
\item Paziņojums - universāla (izmantojama iekš un ārpus spēles istabas) paziņojuma dati;
|
||||
\item Spēles virtuāla istaba - vienas gaidāmas, tekošās vai pagātnē notikušas spēles, kam piemīt spēlētāji, spēles uzstādījumi, spēles notikumi, izveidotājs (lietotājs maskas lietotāja grupā);
|
||||
\end{itemize}
|
||||
|
||||
|
||||
\begin{figure}[h]
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/requirements/img/conceptual_model.png}
|
||||
\includegraphics[width=\linewidth]{./src/img/KonceptualaisERModelis.png}
|
||||
\caption{Datu bāzes konceptuālais ER modelis}
|
||||
\label{fig:conceptual_model}
|
||||
\label{fig:conceptual-model}
|
||||
\end{figure}
|
||||
|
||||
@ -1,78 +1,98 @@
|
||||
\subsubsection{Funkciju sadalījums moduļos}
|
||||
Funkciju sadalījums moduļos ir aprakstīts tabulā (skat. \ref{tab:function_modules} tabula).
|
||||
Lietotāju kategorija apzīmē specifisku lietotāju grupu, kam funkcija piemīt.
|
||||
Jebkurš maksas lietotājs un administrators ir uzskatāms par reģistrētu lietotāju.
|
||||
Maksas lietotājs un administrators ir norādīts kā lietotāja kategorija, ja tā ir funckijas izmantošana ir domāta tikai šai grupai vai funkcijas darbība atšķiras šīm kategorijām.
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/1LīmeņaDPDSpēlesDatubāze.png}
|
||||
\caption{1. līmeņa spēles DPD}
|
||||
\label{fig:dpd-1-game}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/1LīmeņaDPDLietotājuDatubāze.png}
|
||||
\caption{1. līmeņa lietotāju DPD}
|
||||
\label{fig:dpd-1-user}
|
||||
\end{figure}
|
||||
\eject
|
||||
|
||||
|
||||
\begin{tabularx}{\linewidth}{|p{2.1cm}|X|p{2.7cm}|X|}
|
||||
\caption{Funkciju sadalījums pa moduļiem} \label{tab:function_modules} \\ \hline
|
||||
|
||||
\begin{tabularx}{\linewidth}{|p{2cm}|X|p{2.7cm}|X|}
|
||||
\caption{Funkciju sadalījums pa moduļiem} \label{tab:function_modules} \\
|
||||
\hline
|
||||
\textbf{Modulis} & \textbf{Funkcija} & \textbf{Identifikators} & \textbf{Lietotāja kategorija} \\
|
||||
\hline
|
||||
\textbf{Modulis} & \textbf{Funkcija} & \textbf{Identifikators} & \textbf{Lietotāja kategorija} \\ \hline
|
||||
\endfirsthead
|
||||
|
||||
\multicolumn{4}{c}%
|
||||
\raggedright{{\textit{\thetable{} \tablename} \textbf{turpinājums no iepriekšējās lapas}}} \\
|
||||
\hline
|
||||
\textbf{Modulis} & \textbf{Funkcija} & \textbf{Identifikators} & \textbf{Lietotāja kategorija} \\
|
||||
\hline
|
||||
\hline \multicolumn{4}{r}{Turpinājums no iepriekšējās lapas} \\ \hline
|
||||
\textbf{Modulis} & \textbf{Funkcija} & \textbf{Identifikators} & \textbf{Lietotāja kategorija} \\ \hline
|
||||
\endhead
|
||||
|
||||
\hline \multicolumn{4}{|r|}{{Turpinājums nākamajā lapā}} \\ \hline
|
||||
\hline \multicolumn{4}{r}{Turpinājums nākamajā lapā} \\ \hline
|
||||
\endfoot
|
||||
|
||||
\hline
|
||||
\endlastfoot
|
||||
|
||||
|
||||
% Table data here
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{10}{2cm}{Lietotāja modulis} & Lietotāja pieteikšanās & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja konta apstiprināšana & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja reģistrācija & \stepcounter{rownum}LMF\therownum & Nereģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja konta rediģēšana & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs, Maksas lietotājs, Administrātors \\ \cline{2-4}
|
||||
& Lietotāja konta rediģēšana & \stepcounter{rownum}LMF\therownum & Administrātors \\ \cline{2-4}
|
||||
& Lietotāja konta bloķēšana & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja konta atteikšanās & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Sava lietotāja konta datu pārskats & \stepcounter{rownum}LMF\therownum & Reģistrēts lietotājs, Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lietotāja datu pārskats & \stepcounter{rownum}LMF\therownum & Administrators \\ \cline{2-4}
|
||||
& Lietotāja konta dzēšāna & \stepcounter{rownum}LMF\therownum & Administrators \\ \hline
|
||||
\multirow{1}{2.1cm}{Reģistrācijas un pieteikšanās modulis} & Lietotāja reģistrācija & \hyperref[tab:mod-func-auth-reg]{\stepcounter{rownum}AMF\therownum} & Nereģistrēts lietotājs \\ \cline{2-4}
|
||||
& Apstiprinājuma ziņas atkārtotās izsūtīšanas pieteikums & \hyperref[tab:mod-func-auth-app]{\stepcounter{rownum}AMF\therownum} & Nereģistrēts lietotājs, Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Paroles atjaunošanas pieteikums & \hyperref[tab:mod-func-auth-pass-restore]{\stepcounter{rownum}AMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Paroles atjaunošana & \hyperref[tab:]{\stepcounter{rownum}AMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja pieteikšanās & \hyperref[tab:mod-func-auth-login]{\stepcounter{rownum}AMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja atteikšanās & \hyperref[tab:mod-func-auth-logout]{\stepcounter{rownum}AMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lietotāja konta apstiprināšana & \hyperref[tab:mod-func-auth-email-confirm]{\stepcounter{rownum}AMF\therownum} & Reģistrēts lietotājs \\ \hline
|
||||
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{4}{2cm}{Maksas abonamentu modulis} & Maksas par abonementu pieteikuma izveide & \stepcounter{rownum}MAMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Maksas abonementu uzskaite & \stepcounter{rownum}MAMF\therownum & Maksas lietotājs \\ \cline{2-4}
|
||||
& Maksas abonementa detaļu ieguve & \stepcounter{rownum}MAMF\therownum & Maksas lietotājs \\ \cline{2-4}
|
||||
& Maksas abonementa atcelšana & \stepcounter{rownum}MAMF\therownum & Maksas lietotājs \\ \hline
|
||||
\multirow{1}{2.1cm}{Lietotāju kontu modulis} & Lietotāju profilu pārskats & \hyperref[tab:mod-func-user-profiles]{\stepcounter{rownum}LAM\therownum} & Reģistrēts lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lietotāja konta datu pārskats & \hyperref[tab:mod-func-user-profile-data]{\stepcounter{rownum}LAM\therownum} & Reģistrēts lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lietotāja konta bloķēšana & \hyperref[tab:mod-func-user-block]{\stepcounter{rownum}LAM\therownum} & Administrators \\ \cline{2-4}
|
||||
& Lietotāja konta rediģēšana & \hyperref[tab:mod-func-user-edit]{\stepcounter{rownum}LAM\therownum} & Reģistrēts lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lietotāja konta dzēšāna & \hyperref[tab:mod-func-user-delete]{\stepcounter{rownum}LAM\therownum} & Reģistrēts lietotājs, Administrators \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{5}{2cm}{Tērzētavas modulis} & Jaunas īsziņas izveidošana & \stepcounter{rownum}TMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņas izdzēšana & \stepcounter{rownum}TMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņu uzskaite & \stepcounter{rownum}TMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Savu īsziņu redigēšana & \stepcounter{rownum}TMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņu dzēšana & \stepcounter{rownum}TMF\therownum & Administrators \\ \hline
|
||||
\multirow{1}{2.1cm}{Maksas abonamentu modulis} & Abonementa pieteikums & \hyperref[tab:mod-func-premium-app]{\stepcounter{rownum}MAMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Abonementu pārskats & \hyperref[tab:mod-func-premium-overview]{\stepcounter{rownum}MAMF\therownum} & Reģistrēts lietotājs, Maksas lietotājs \\ \cline{2-4}
|
||||
& Abonementa atcelšana & \hyperref[tab:mod-func-premium-cancel]{\stepcounter{rownum}MAMF\therownum} & Maksas lietotājs, Administrators \\ \hline
|
||||
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{14}{2cm}{Spēles istabas modulis} & Jaunas spēles istabas izveide & \stepcounter{rownum}SMF\therownum & Maksas lietotājs \\ \cline{2-4}
|
||||
& Spēles sākuma pieteikums & \stepcounter{rownum}SMF\therownum & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Spēles darbības veikšana & \stepcounter{rownum}SMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Virtuālās istabas stāvokļa maiņa & \stepcounter{rownum}SMF\therownum & Administrators \\ \cline{2-4}
|
||||
& Spēlētāja izslēgšana & \stepcounter{rownum}SMF\therownum & Administrators \\ \cline{2-4}
|
||||
& Spēles stāvokļa iegūšana & \stepcounter{rownum}SMF\therownum & Sistēma, Administrators \\ \cline{2-4}
|
||||
& Virtuālās istabas spēlētāju iegūšana & \stepcounter{rownum}SMF\therownum & Administrators \\ \cline{2-4}
|
||||
& Nākamā spēles stāvokļa noteikšana & \stepcounter{rownum}SMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Spēlētāja pievienošana & \stepcounter{rownum}SMF\therownum & Administrators \\ \cline{2-4}
|
||||
& Spēlētāja lomas iegūšana & \stepcounter{rownum}SMF\therownum & Sistēma \\ \cline{2-4}
|
||||
& Spēlētāja stāvokļa iegūšana & \stepcounter{rownum}SMF\therownum & Sistēma \\ \hline
|
||||
\multirow{1}{2.1cm}{Cenu modulis} & Cenas pievienošana & \hyperref[tab:mod-func-price-add]{\stepcounter{rownum}CMF\therownum} & Administrators \\ \cline{2-4}
|
||||
& Cenas rediģēšana & \hyperref[tab:mod-func-price-edit]{\stepcounter{rownum}CMF\therownum} & Administrators \\ \cline{2-4}
|
||||
& Cenu pārskats & \hyperref[tab:mod-func-price-overview]{\stepcounter{rownum}CMF\therownum} & Administrators \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{9}{2cm}{Spēles uzstādījumu modulis} & Jaunas lomas izveidošana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lomu uzskaite & \stepcounter{rownum}SUMF\therownum & Reģistrēts lietotājs, Adminitrators \\ \cline{2-4}
|
||||
& Lomas darbību uzskaite & \stepcounter{rownum}SUMF\therownum & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lomas rediģēšana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs, Adminitrators \\ \cline{2-4}
|
||||
& Lomas dzēšana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs, Adminitrators \\ \cline{2-4}
|
||||
& Jauna spēles uzstādījuma izveidošana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs, Adminitrators \\ \cline{2-4}
|
||||
& Spēles uzstādījuma dzēšana & \stepcounter{rownum}SUMF\therownum & Adminitrators \\ \cline{2-4}
|
||||
& Spēles uzstādījuma deaktivizēšana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs, Adminitrators \\ \cline{2-4}
|
||||
& Spēles uzstādījuma lomu iegūšana & \stepcounter{rownum}SUMF\therownum & Maksas lietotājs \\ \hline
|
||||
\multirow{1}{2.1cm}{Tērzēšanas modulis} & Jaunas īsziņas izveidošana & \hyperref[tab:mod-func-chat-create]{\stepcounter{rownum}TMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņas dzēšana & \hyperref[tab:mod-func-chat-delete]{\stepcounter{rownum}TMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņu uzskaite & \hyperref[tab:mod-func-chat-overview]{\stepcounter{rownum}TMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Īsziņu rediģēšana & \hyperref[tab:mod-func-chat-edit]{\stepcounter{rownum}TMF\therownum} & Reģistrēts lietotājs \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\parbox{2cm}{Saziņas modulis} & Apstiprinājuma ziņas izsūtīšana & \stepcounter{rownum}[ID]\therownum & Sistēma \\ \hline
|
||||
\multirow{1}{2.1cm}{Spēles istabas modulis} & Pieejamo pieslēgšanās spēles istabu pārskats & \hyperref[tab:mod-func-room-overview]{\stepcounter{rownum}SIMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Pieslēgšanās spēles istabai & \hyperref[tab:mod-func-room-connect]{\stepcounter{rownum}SIMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Atslēgšanās no spēles istabas pieteikums & \hyperref[tab:mod-func-room-disconnect]{\stepcounter{rownum}SIMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Jaunas spēles istabas izveide & \hyperref[tab:mod-func-room-create]{\stepcounter{rownum}SIMF\therownum} & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Spēles sākuma pieteikums & \hyperref[tab:mod-func-room-app]{\stepcounter{rownum}SIMF\therownum} & Maksas lietotājs \\ \cline{2-4}
|
||||
& Spēlētāja izslēgšana & \hyperref[tab:mod-func-room-kill]{\stepcounter{rownum}SIMF\therownum} & Administrators \\ \cline{2-4}
|
||||
& Spēlētāju pārskata iegūšana & \hyperref[tab:mod-func-room-player-overview]{\stepcounter{rownum}SIMF\therownum} & Sistēma, Reģistrēts lietotājs, Administrators \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{1}{2.1cm}{Spēles gaitas modulis} & Spēles darbības veikšana & \hyperref[tab:mod-func-progress-action]{\stepcounter{rownum}SGMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Spēles notikuma izveidošana & \hyperref[tab:mod-func-progress-create]{\stepcounter{rownum}SGMF\therownum} & Sistēma \\ \cline{2-4}
|
||||
& Spēles notikumu pārskats & \hyperref[tab:mod-func-progress-overview]{\stepcounter{rownum}SGMF\therownum} & Sistēma, Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Spēles stāvokļa pārskats & \hyperref[tab:mod-func-progress-state-overview]{\stepcounter{rownum}SGMF\therownum} & Sistēma, Reģistrēts lietotājs \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{1}{2.1cm}{Spēles lomu uzstādījumu modulis} & Lomas detaļu pārskats & \hyperref[tab:mod-func-role-details]{\stepcounter{rownum}SLMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lomu pārskats & \hyperref[tab:mod-func-role-overview]{\stepcounter{rownum}SLMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Lomas darbību pārskats & \hyperref[tab:mod-func-role-action-overview]{\stepcounter{rownum}SLMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Jaunas lomas izveidošana & \hyperref[tab:mod-func-role-create]{\stepcounter{rownum}SLMF\therownum} & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lomas rediģēšana & \hyperref[tab:mod-func-role-edit]{\stepcounter{rownum}SLMF\therownum} & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Lomas dzēšana & \hyperref[tab:mod-func-role-delete]{\stepcounter{rownum}SLMF\therownum} & Maksas lietotājs, Administrators \\ \hline
|
||||
\setcounter{rownum}{0}
|
||||
\multirow{1}{2.1cm}{Spēles uzstādījumu modulis} & Spēles uzstādījumu pārskats & \hyperref[tab:mod-func-setup-overview]{\stepcounter{rownum}SUMF\therownum} & Reģistrēts lietotājs \\ \cline{2-4}
|
||||
& Spēles uzstādījumu lomu pārskats & \hyperref[tab:mod-func-setup-role-overview]{\stepcounter{rownum}SUMF\therownum} & Reģistrēts lietotājs, Sistēma \\ \cline{2-4}
|
||||
& Jaunas spēles uzstādījuma izveidošana & \hyperref[tab:mod-func-setup-new]{\stepcounter{rownum}SUMF\therownum} & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Spēles uzstādījuma rediģēšana & \hyperref[tab:mod-func-setup-edit]{\stepcounter{rownum}SUMF\therownum} & Maksas lietotājs, Administrators \\ \cline{2-4}
|
||||
& Spēles uzstādījuma dzēšana & \hyperref[tab:mod-func-setup-delete]{\stepcounter{rownum}SUMF\therownum} & Maksas lietotājs, Administrators \\ \hline
|
||||
% ... continue for each row
|
||||
\end{tabularx}
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/requirements/img/DPD_1.png}
|
||||
\caption{1. līmeņa DPD}
|
||||
\label{fig:dpd_1}
|
||||
\end{figure}
|
||||
|
||||
@ -1,10 +1,7 @@
|
||||
\subsection{Funkcionālās prasības}
|
||||
\input{./src/requirements/functional-requirements/general-notices.tex}
|
||||
\subsubsection{Citas apakšnodaļas ar vispārīgu lietu aprakstu}
|
||||
% \input{./src/requirements/functional-requirements/general-notices.tex}
|
||||
% TODO: remove the following line
|
||||
% [Citas apakšnodaļas ar vispārīgu lietu aprakstu]
|
||||
|
||||
\input{./src/requirements/functional-requirements/function-modules.tex}
|
||||
|
||||
\subsubsection{Modulis A}
|
||||
[2. Līmeņa DPD modelis]
|
||||
\subsubsection{Pārējie Modulis X}
|
||||
[2. Līmeņa DPD modelis]
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/index.tex}
|
||||
|
||||
@ -0,0 +1,82 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja reģistrācija}
|
||||
{mod-func-auth-reg}
|
||||
{Lietotāja reģistrācija}
|
||||
{AMF01}
|
||||
{
|
||||
Funkcijas mērķis ir izveidot lietotāja kontu tā identifikācijai, turpmākās autentifikācijas un lietotāja darbību autentifikācijai un sistēmas lietotāja informācijas uzglabāšanai.
|
||||
Apstrādes procesā ievades dati tiek pārbaudīti attiecīgi noteiktajām prasībām, lai tie būtu jēdzīgi sistēmas kontekstā un atbilstu datubāzes uzglabātajiem formātiem.
|
||||
Paroles šifrēšanas procesā tiek izmantota jaucējfunkcija ar papildus drošības līdzekli - ``sāls pievienošanu'' - nejaušu simbolu virknes pievienošanu pirms šifrēšanas.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no nereģistrētiem lietotājiem pieejamās veidlapas. \\
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Pilns vārds - simbolu virkne ar garumu līdz 50 simboliem, kas var saturēt burtciparu simbolus, defises un atstarpes.
|
||||
\item Segvārds - simbolu virkne ar garumu no 6 līdz 20 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item E-pasta adrese - simbolu virkne ar garumu līdz 320 simboliem. Pieļautajiem simboliem un pieļaujamam formātam jāatbilst ``RFC 2822: Interneta ziņu formāts'' standarta prasībām.
|
||||
\item Dzimšanas datums - datums formatēts kā simbolu virkne.
|
||||
\item Parole - simbolu virkne ar garumu no 8 līdz 128 simboliem, kas var saturēt burtciparu simbolus, skaitļus, atstarpi, speciālos simbolus: izsaukuma zīmi, dubultpēdiņas, skaitļa zīmi, dolāra zīmi, procenta zīmi, ampersandu, pēdiņas, iekavas, figūriekavas, zvaigznīti, plusu, komatu, mīnusu, punktu, slīpsvītru, kolu, semikolu, salīdzinājuma zīmes, vienādības zīmi, jautājuma zīmi, “et” zīmi, slīpsvītru, pasvītru, vertikālo joslu, tildi. Minimālās drošības prasības: parole satur vismaz vienu lielo un mazo burtu, vienu ciparu.
|
||||
\item Paroles apstiprinājums - simbolu virkne. kas atbilst iepriekš minētās paroles prasībām.
|
||||
\end{enumerate}
|
||||
|
||||
Neobligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Profila attēls - attēla datne, kura paplašinājums ir viens no: JPEG, JPG, GIF, PNG, WEBP un izmērs nepārsniedz 1MB.
|
||||
\item Biogrāfiskā informācija - simbolu virkne garumā līdz 300 simboliem.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja tie nav, iegūst sarakstu ar neazpildītajiem laukiem, parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai parole un paroles apstiprinājums sakrīt.
|
||||
Ja nesakrīt, tad parāda 2. paziņojumu.
|
||||
\item Pārbauda, vai pilns vārds, segvārds, e-pasta adrese, parole satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 3. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai pilns vārds, segvārds, e-pasta adrese, biografiskā informācija, parole nepārsniedz noteikto garumu.
|
||||
Ja pārsniedz, tad iegūst pārsniegto garumu parametru sarakstu un parāda 4. paziņojumu ar attiecīgajiem laukiem un garumiem.
|
||||
\item Pārbauda, vai parole atbilst noteiktiem drošības prasībām.
|
||||
Ja tā tiem neatbilst, ta parāda 5. paziņojumu ar attiecīgām neizpildītajām prasībām.
|
||||
\item Pārbauda, vai dzimšanas datums atbilst minimālam vecumam reģistrācijai.
|
||||
Ja neatbilst, parāda 6. paziņojumu.
|
||||
\item Ja tika iesniegta biogrāfiskā informācija, aizvieto salīdzinājuma zīmes, ampersantu, dubultpēdiņas un pēdiņas ar ekvivalentu.
|
||||
\item Ja tika iesniegts attēls, tad pārbauda, vai datne atbilst atļautajiem datnes paplašinājumiem.
|
||||
Ja neatbilst, parāda 7. paziņojumu ar atļautiem datnes paplašinājumiem.
|
||||
\item Ja tika iesniegts attēls, tad pārbauda, vai datne nepārsniedz noteikto datnes lielumu.
|
||||
Ja pārsniedz, parāda 8. paziņojumu ar iesniegtās datnes lielumu un maksimāli atļauto datnes lielumu.
|
||||
Ja iesniegtā attēla paplašinājums nav PNG, tad datne tiek kovertēta šajā paplašinājumā.
|
||||
\item Mēģina sameklēt datubāzē lietotājus ar ievadīto e-pastu vai segvārdu.
|
||||
Ja tāds (/-i) pastāv, tad parāda 9. paziņojumu ar attiecīgo aizņemto lauku.
|
||||
\item Pievieno parolei nejauši noģenerēto simbolu virki, šifrē paroli ar jaucējfunkciju.
|
||||
\item Jauna lietotāja sagatavotie dati tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana nenotiek, parādīt 10. paziņojumu.
|
||||
\item Ģenerē e-pasta apstiprinājuma marķieri.
|
||||
Izveido saiti apstiprinājumam, iekļaujot e-pasta apstiprinājuma marķieri.
|
||||
\item Sagatavo e-pasta ziņas saturu no šablona, ievietojot tajā apstiprinājuma saiti.
|
||||
\item Pieprasa e-pasta aizsūtīšanu.
|
||||
Ja tā netiek apstiprināta, parāda 11. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts un kurā lapā lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Reģistrācijas apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item Parole un paroles apstiprinājums nesakrīt!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Parolei ir jāsatur: [neizpildīto paroles prasību saraksts]!
|
||||
\item Minimālais vecums reģistrācijai: [noteitks minimālais vecums reģistrācijai].
|
||||
\item Attēla datne ir aizliegts paplašinājums! Atļautie datnes paplašinājumi: [atļauto datnes paplašinājumu saraksts].
|
||||
\item Attēļa datne pārsniedz maksimāli atļauto lielumu! Maksimāli atļautais lielums: [maksimāli atļautais lielums].
|
||||
\item Lietotājs ar tādu [aizņemtā lauka nosaukums] jau eksistē!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\item Reģistrācija ir veiksmīga! Apstipriniet lietotāja kontu ar saiti, kas tiks aizsūtīta 1-10 minūšu laikā Jūsu norādītā e-pastā.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,44 @@
|
||||
\moduleFunctionTable
|
||||
{Apstiprinājuma ziņas atkārtotās izsūtīšanas pieteikums}
|
||||
{mod-func-auth-app}
|
||||
{Apstiprinājuma ziņas atkārtotās izsūtīšanas pieteikums}
|
||||
{AMF02}
|
||||
{
|
||||
Funckijas mērķis ir izsūtīt e-pasta apstiprinājumu atkārtoti lietotājam, kas jau veica reģistrāciju
|
||||
}
|
||||
{
|
||||
Ievades dati tiek iegūti no veidlapas datiem, kas tiek aizpildīta automātiski, ja lietotājs veic reģistrācijas procesu.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Lietotāja identifikators - sistēmā izmantots lietotāja identifikators - vesels pozitīvs skaitlis skaitlis, kas atbilst datubāzē glabājamā skaitliska identifikatora diapazonam.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai identifikators atbilst paredzētajam datu tipam.
|
||||
Ja neatbilst parāda 1. paziņojumu.
|
||||
\item Meklē lietotāju datubāzē pēc ievades datu identifikatora parametra.
|
||||
Ja tāds lietotājs neeksistē, parāda 1. paziņojumu.
|
||||
\item Iegūst no datubāzes atrastā lietotāja tā e-pasta adresi.
|
||||
\item Iegūst atrastā lietotāja tā e-pasta adresi.
|
||||
\item Ģenerē e-pasta apstiprinājuma marķieri.
|
||||
Izveido saiti apstiprinājumam, iekļaujot e-pasta apstiprinājuma marķieri.
|
||||
\item Sagatavo e-pasta ziņas saturu no šablona, ievietojot tajā apstiprinājuma saiti.
|
||||
\item Pieprasa e-pasta aizsūtīšanu.
|
||||
Ja tā netiek apstiprināta, parāda 1. paziņojumu.
|
||||
\item Ja e-pasta ziņas aizsūtīšana ir apstiprināta, parāda 2. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts un kurā lapā lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item E-pasta apstiprinājuma ziņas izsūtīšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Sistēmas iekšējā kļūda! Mēģiniet pārlādēt lapu vai mēģiniet vēlāk!
|
||||
\item Apstiprinājuma ziņa tiks izsūtīta 1-10 minūšu laikā.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,49 @@
|
||||
\moduleFunctionTable
|
||||
{Paroles atjaunošanas pieteikums}
|
||||
{mod-func-auth-pass-restore}
|
||||
{Paroles atjaunošanas pieteikums}
|
||||
{AMF03}
|
||||
{
|
||||
Funkcijas mērķis ir ļaut lietotājam atjaunot aizmirsto vai kompromitēto paroli, nodrošinot drošu paroles maiņas procesu, kas ietver unikāla marķiera izveidi, tā nosūtīšanu lietotāja e-pastā un tā pārbaudi.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
Ievades dati tiek saņemti no ievades lauciņiem, pieejami autentificētiem un neautentificētiem lietotājiem.
|
||||
\begin{enumerate}
|
||||
\item E-pasta adrese - simbolu virkne, kas atbilst ``RFC 2822: Interneta ziņu formāts'' standarta prasībām.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai e-pasta adrese eksistē datubāzē.
|
||||
Ja nē, parāda 1. paziņojumu.
|
||||
\item Ģenerē unikālu marķieri paroles atjaunošanai.
|
||||
\item Ieraksta jaunu marķieri lietotāja ierakstam, pievienojot tam derīguma laiku.
|
||||
\item Izveido saiti paroles atjaunošanai, iekļaujot marķieri.
|
||||
\item Nosūta saiti uz lietotāja e-pasta adresi.
|
||||
\item Lietotājs atver saiti.
|
||||
\item Pārbauda, vai saitē iekļautais marķieris ir derīgs un nav novecojis.
|
||||
Ja nederīgs vai novecojis, parāda 2. paziņojumu.
|
||||
\item Atver paroles atjaunošanas veidlapu.
|
||||
\item Lietotājs ievada jauno paroli.
|
||||
\item Pārbauda, vai jaunā parole atbilst drošības prasībām.
|
||||
Ja nē, parāda 3. paziņojumu.
|
||||
\item Paroles šifrēšanas procesā tiek izmantota jaucējfunkcija ar ``sāls pievienošanu.''
|
||||
\item Saglabā jauno paroli datubāzē un parāda 4. paziņojumu.
|
||||
\item Atzīmē veco marķieri kā izmantotu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Paroles atjaunošanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item E-pasta adrese nav reģistrēta!
|
||||
\item Saitei ir beidzies derīguma termiņš!
|
||||
\item Parolei ir jāsatur: [neizpildīto paroles prasību saraksts]!
|
||||
\item Paroles atjaunošana veiksmīga.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,48 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja pieteikšanās}
|
||||
{mod-func-auth-login}
|
||||
{Lietotāja pieteikšanās}
|
||||
{AMF05}
|
||||
{
|
||||
Autentificēt lietotāju, lai sistēma to uztver kā lietotāju ar konkrēto sistēmas lomu un atļauj turpmākās sistēmas lomas darbības sistēmā.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no pieteikšanās veidlapas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item E-pasta adrese vai segvārds - simbolu virkne, kas tiek pārbaudīta uz atbilstību e-pasta adreses formātam, kam jāatbilst ``RFC 2822: Interneta ziņu formāts'' standarta prasībām.
|
||||
Ja tā neabilst, tad tai jāatbilst sekojošām prasībām: simbolu virkne ar garumu no 6 līdz 20 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item Parole - simbolu virkne ar garumu no 8 līdz 128 simboliem, kas var saturēt burtciparu simbolus, skaitļus, atstarpi, speciālos simbolus:
|
||||
izsaukuma zīmi, dubultpēdiņas, skaitļa zīmi, dolāra zīmi, procenta zīmi, ampersandu, pēdiņas, iekavas, figūriekavas,
|
||||
zvaigznīti, plusu, komatu, mīnusu, punktu, slīpsvītru, kolu, semikolu, salīdzinājuma zīmes, vienādības zīmi, jautājuma zīmi, ``at'' zīmi, slīpsvītru, pasvītru, vertikālo joslu, tildi.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai e-pasta adrese vai segvārds un parole satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 1. paziņojumu ar laukiem un simboliem.
|
||||
\item Pārbauda, vai e-pasta adrese vai un parole nepārsniedz noteikto garumu.
|
||||
Ja satur, tad iegūst pārsniegto garumu parametru sarakstu un parāda 2. paziņojumu ar laukiem un garumiem.
|
||||
\item Iegūst lietotāja autorizācijas datus no datubāzes, meklējot lietotājus pēc segvārda vai e-pasta adreses.
|
||||
Ja tāds lietotājs netika atrasts, parāda 3. paziņojumu.
|
||||
\item Pievieno ievades datu parolei datubāzē glabājamāi sāls simbolu virkni.
|
||||
\item Pārbauda, vai lietotāja sniegtā paroles jaucējfunkcijas rezultāts sakrīt ar datubāzē glabātu vērtību.
|
||||
Ja paroles jaucējfunkcijas rezultāts nesakrīt ar datubāzē glabāto vērtību, parāda 4. paziņojumu.
|
||||
\item Ja sakrīt, ģenerē lietotāja sesijas marķieri.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts un kurā lapā lietotājs tiks pāradresēts, un ierakstīt sesijas marķieri lietotāja pārlūkprogrammas datu krātuvē.
|
||||
\begin{enumerate}
|
||||
\item Reģistrācijas apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\item Lietotāja sesijas marķieris.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item {}Lietotājs ar šādu segvārdu vai e-pastu netika atrasts vai parole nav pareiza!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,31 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja atteikšanās}
|
||||
{mod-func-auth-logout}
|
||||
{Lietotāja atteikšanās}
|
||||
{AMF06}
|
||||
{
|
||||
Funkcijas mērķis ir beigt lietotāja pārlūkprogrammas asociāciju ar noteiktu lietotāju kontu.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no lietotāja pārlūkprogrammas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Lietotāja sesijas marķieris - 16 simbolu gara virkne, kas tiek glabāta lietotāja pārlūkprogrammā.
|
||||
\end{enumerate}
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item No lietotāja pārlūkprogrammas tiek iegūts sesijas marķieris.
|
||||
\item Ja sesijas marķieris eksistē, tas tiek izdzēsts.
|
||||
Lietotājs tiek pāradresēts uz mājaslapas sākuma lapu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts un kurā lapā lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Atteikšanās apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{}
|
||||
@ -0,0 +1,45 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja konta apstiprināšana}
|
||||
{mod-func-auth-email-confirm}
|
||||
{Lietotāja konta apstiprināšana}
|
||||
{AMF07}
|
||||
{
|
||||
Funkcijas mērķis ir apstiprināt lietotāja konta e-pasta adrese, i.e., apstiprināt to, ka lietotājam pieder tā norādītā e-pasta adrese.
|
||||
}
|
||||
{
|
||||
Ievaddati tiek iegūti no apstiprinājuma vietrādes parametriem, ar kuras lietotājs piekļūst sistēmas funkcijai.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item E-pasta apstiprinājuma marķieris - 16 simbolu gara virkne, kas tiek iegūta no saites parametriem.
|
||||
\end{enumerate}
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai ievades datos ir e-pasta apstiprinājuma marķieris.
|
||||
Ja tā nav, tad parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai e-pasta adreses apstiprinājuma marķieris atbilst sagaidāmam garumam.
|
||||
Ja neatbilst, parāda 2. paziņojumu.
|
||||
\item Meklē datubāzē lietotājus ar iesniegto marķieri.
|
||||
Ja tāds lietotājs netiek atrasts, parāda 3. paziņojumu.
|
||||
Ja datubāzē atrastā lietotāja e-pasta apstiprināšanas karodziņš apzīmē apstiprinātu e-pastu, parāda 4. paziņojumu.
|
||||
\item Attiecīgā datubāzes ierakstam pamaina karodziņa stāvokli uz apstiprinātu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts.
|
||||
|
||||
\begin{enumerate}
|
||||
\item E-pasta adreses apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Apstiprināšanas saite nav korekta: marķieris nav norādīts! Mēģiniet vēlreiz vai pieprasiet atkārtotu apstiprinājuma ziņas izsūtīšanu!
|
||||
\item Apstiprināšanas saite nav korekta: marķieris nav korekts! Mēģiniet vēlreiz vai pieprasiet atkārtotu apstiprinājuma ziņas izsūtīšanu!
|
||||
\item Marķieris nav aktuāls vai nav korekts! Mēģiniet vēlreiz vai pieprasiet atkārtotu apstiprinājuma ziņas izsūtīšanu!
|
||||
\item E-pasts jau ir apstiprināts!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,16 @@
|
||||
\paragraph{Reģistrācijas un pieteikšanās modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/ReģistrācijasPieteikšanāsModulis.png}
|
||||
\caption{Reģistrācijas un pieteikšanās DPD}
|
||||
\label{fig:dpd-2-auth}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF04.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF05.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF06.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/auth/AMF07.tex}
|
||||
@ -0,0 +1,32 @@
|
||||
\moduleFunctionTable
|
||||
{Jaunas īsziņas izveidošana}
|
||||
{mod-func-chat-create}
|
||||
{Jaunas īsziņas izveidošana}
|
||||
{TMF01}
|
||||
{
|
||||
Funkcijas mērķis ir dot iespēju rakstiskā veidā sazināties spēlētājam ar citiem klātesošajiem spēlētājiem.
|
||||
}
|
||||
{
|
||||
Lietotājs ievada tekstu, ko vēlās izsūtīt citiem spēles dalībniekiem.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda vai ziņā ir ieraksts, ja nav tad ziņa netiek izsūtīta.
|
||||
\item Pārbauda rakstzīmju skaitu noteiktajā tekstā, vai tas nav par garu.
|
||||
\item Pārbauda, kurā tērzēšanas sadaļā ziņa ir izsūtīta, visiem spēlētājiem, noteiktam spēlētājam, vai noteiktām grupām ar spēlētājiem.
|
||||
\item Meklē vai vēlamajā tekstā nav vārdi, kas atrodas aizliegto vārdu sarakstā, piemēram lamuvārdi.
|
||||
\item Apstiprina spēlētāja ID un ziņa tiek izsūtīta ar noteiktā spēlētāja vārdu
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ziņa, ko rakstījis spēlētājs citiem spēlētājiem.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ziņā nav neviena simbola!
|
||||
\item Ziņa satur neatļautos vārdus.
|
||||
\item Notikusi kļūda ziņa nav izsūtīta.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,38 @@
|
||||
\moduleFunctionTable
|
||||
{Īsziņas izdzēšana}
|
||||
{mod-func-chat-delete}
|
||||
{Īsziņas izdzēšana}
|
||||
{TMF02}
|
||||
{
|
||||
Funkcija atbild par netīšām uzrakstītām ziņām, kuras spēlētāji vēlas izdzēst, pēc ziņu nosūtīšanas vai atbild par nekorektu vai neobjektīvi pareizu ziņu izdzēšanu.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēlētājs nospiež pogu dzēst.
|
||||
\item Spēlētājs apstiprina, ka ziņu vēlas izdzēst.
|
||||
\end{enumerate}
|
||||
Vai
|
||||
\begin{enumerate}
|
||||
\item Tērzētavā tiek ierakstīta nepiedienīga ziņa, istabas vadītājs nospiež ziņai pogu dzēst.
|
||||
\item Istabas vadītājs apstiprina, ka ziņu vēlas izdzēst
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Kad tiek nospiesta poga izdzēst, datubāzē tiek atrasta noteiktā ziņa, kurai uzspiesta izdzēšanas poga.
|
||||
\item Kad ziņa ir atrasta, tiek pārbaudīts spēlētāja ID, ja tas sakrīt, tad spēlētājam liek apstiprināt, ka tiešām ziņa ir jāizdzēš.
|
||||
\item Ja spēlētājs apstiprina dzēšanu, ziņa tiek izdzēsta, ja nē, tad netiek dzēsta.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Izdzēstā ziņa no ziņu uzskaites ir pazudusi.
|
||||
\item Parādās uzraksts par ziņas izdzēšanu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ziņa ir veiksmīgi izdzēsta!
|
||||
\item Ziņa netika izdzēsta!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,34 @@
|
||||
\moduleFunctionTable
|
||||
{Īsziņu uzskaite}
|
||||
{mod-func-chat-overview}
|
||||
{Īsziņu uzskaite}
|
||||
{TMF03}
|
||||
{
|
||||
Funkcija nepieciešama, lai uzskaitītu un parādītu visas uzrakstītās īsziņas visās tērzētavās.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēlētājs ierakstot ziņu, tā parādās uzskaitē, ko redz visi spēlētāji, kuriem ir piekļuve noteiktajai tērzētavai, kur ziņa tika izsūtīta.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēlētājs ieraksta ziņu.
|
||||
\item Tiek pārbaudīts kurā no tērzētavām ziņa ir ierakstīta.
|
||||
\item Pārbauda ziņas identifikatoru un lietotāja identitāti.
|
||||
\item Ziņa tiek ierakstīta uzskaitē, kur visi ar piekļuvi to var izlasīt.
|
||||
\item Tērzētavas uzskaitē ziņa redzama spēlētājiem paliek līdz 10 sekundēm.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēlētāja rakstītā ziņa.
|
||||
\item Pēc noteiktām sekundēm ziņa nodziest.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ziņa netika nosūtīta
|
||||
\item {}[Laiks]:[Spēlētāja vārds]: [Īsziņa]
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,36 @@
|
||||
\moduleFunctionTable
|
||||
{Īsziņu rediģēšana}
|
||||
{mod-func-chat-edit}
|
||||
{Īsziņu rediģēšana}
|
||||
{TMF04}
|
||||
{
|
||||
Funkcija nodrošina iespēju spēlētājam rediģēt jau izsūtītu ziņu tērzētavā.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Poga ``Rediģēt'' blakus ziņai.
|
||||
\item Rediģējamās ziņas ievades lauks.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēlētājs nospiež pogu ``Rediģēt'' blakus vēlamajai ziņai.
|
||||
\item Parādās ievades lauks ar esošās ziņas saturu.
|
||||
\item Spēlētājs rediģē tekstu un nosūta izmaiņas.
|
||||
\item Pārbauda ziņas identifikators un lietotāja identitāti.
|
||||
\item Aizstāj esošo tekstu ar jauno.
|
||||
\item Atjauno ziņu ar rediģēšanas laika zīmogu.
|
||||
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Rediģētā ziņa ar atjauninātu laika zīmolu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ziņa veiksmīgi rediģēta.
|
||||
\item Kļūda rediģējot ziņu.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
\paragraph{Terzēšanas modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/TerzēšanasModulis.png}
|
||||
\caption{Tēržēšanas DPD}
|
||||
\label{fig:dpd-2-chat}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/chat/TMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/chat/TMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/chat/TMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/chat/TMF04.tex}
|
||||
@ -0,0 +1,66 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles darbības veikšana}
|
||||
{mod-func-progress-action}
|
||||
{Spēles darbības veikšana}
|
||||
{SGMF01}
|
||||
{
|
||||
Funkcijas mērķis ir veikt spēles darbību lietotājiem, kas atrodas spēles istabā, saglabājot darbībau kā notikuma ierakstu.
|
||||
}
|
||||
{
|
||||
Ievade tiek iegūta no darbības spēles laikā.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Darbības identifikators - vesels pozitīvs skaitlis.
|
||||
\item Spelētāja identifikators - vesels pozitīvs skaitlis.
|
||||
\item Veicēja lietotāja identifikators - vesels pozitīvs skaitlis.
|
||||
\item Spēles istabas identifikators - vesels pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
|
||||
Neobligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Mērķa spēlētāju identifikatori - veselu pozitīvu skaitļu saraksts.
|
||||
Noklusētā vērtība: tukšs saraksts.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Meklē spēles istabu attiecīgā tabulā, izmantojot darbības identifikatoru.
|
||||
Ja spēles istaba netiek atrasta parāda 1. paziņojumu.
|
||||
Ja speles istabas stāvoklis neatbilst stāvoklim spēlei procesā, tad parāda 2. paziņojumu.
|
||||
\item Meklē spēles darbību attiecīgā tabulā, izmantojot darbības identifikatoru.
|
||||
Ja darbība netiek atrasta parāda 2. paziņojumu.
|
||||
\item Ja mērķa spēlētāju saraksts nav tukšs, meklē spēlētāju attiecīgajā tabulā, izmantot spēlētāja identifikatorus.
|
||||
Ja viens no mērķa spēlētājiem netiek atrasts parāda 2. paziņojumu.
|
||||
\item Meklē mērķa spēlētājus attiecīgajā tabulā, izmantot spēlētāja identifikatoru.
|
||||
Ja darbība netiek atrasta parāda 3. paziņojumu.
|
||||
\item Iegūst lietotāja identifikatoru no atrastā ieraksta.
|
||||
Pārbauda vai lietotāja identifikators sakrīt ar spēlētāja identifikatoru.
|
||||
Ja nesakrīt, parāda 2. paziņojumu.
|
||||
\item Iegūst lomas identifikatoru no atrastā ieraksta.
|
||||
Meklē lomu, izmantojot identifikatoru.
|
||||
Ja loma netiek atrasta, parāda 2. paziņojumu.
|
||||
\item Pārbauda, vai darbība ir ar lomu saistīta darbība.
|
||||
Ja tā nav, parāda 3. paziņojumu.
|
||||
\item Meklēt spēles notikumus datubāzē, noskaidro vai pēdējais pēc izveidošanas notikums aizliedz darbību vai to atļauj.
|
||||
Ja pēdējais nav atļaujošais notikums, parāda 2. paziņojumu.
|
||||
\item Izveido jaunu ierakstu darbību.
|
||||
Ja ieraksta veikšana neizdevās.
|
||||
Parāda 2. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir parādīt ar izpildīto darbību saistīto informāciju.
|
||||
\begin{enumerate}
|
||||
\item Darbības veikšanas apstiprinājuma teksts - simbolu virkne.
|
||||
\item Darbības stāvokļa kods - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēle ir beigusies, nevar veikt darbību!
|
||||
\item Sistēmas kļūda! Mēģiniet vēlreiz.
|
||||
\item Darbība nav atļauta jūsu lomai!
|
||||
\item Darbība nav atļauta šajā spēles fāzē!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,47 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles notikuma izveidošana}
|
||||
{mod-func-progress-create}
|
||||
{Spēles notikuma izveidošana}
|
||||
{SGMF02}
|
||||
{
|
||||
Funkcijas mērķis ir izveidot visiem spēlētājiem aktuālu spēles notikumu.
|
||||
Notikumi galvenokārt ir spēlētāju izraisīti.
|
||||
Taču daļa no notikumiem ir atkarīgi no laika un fāzes.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek iegūti no esošās spēles procesa konteksta.
|
||||
\begin{enumerate}
|
||||
\item izveidošanas laiks - simbolu virkni ar datumu noteiktā formatējumā;
|
||||
\item vai ir nakts - karodziņš;
|
||||
\item darbības identifikators - vesels pozitīvs skaitlis vai 0;
|
||||
\item spēlētāja identifikators - vesels pozitīvs skaitlis vai 0.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Meklē spēles istabu attiecīgā tabulā, izmantojot darbības identifikatoru.
|
||||
Ja spēles istaba netiek atrasta parāda 1. paziņojumu.
|
||||
\item Meklē spēles darbību datubāzē, izmantojot darbības identifikatoru.
|
||||
Ja spēles istaba netiek atrasta parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai datuma formāts ir korekts.
|
||||
Ja nav korekts, parāda X paziņojumu.
|
||||
\item Iegūst vēlāko notikumu nakts maiņas datubāzē.
|
||||
Ja netika atrasts neviens, tad pieņem, ka ir 0-tā nakts (neviena nakts vēl nav notikusi).
|
||||
\item Pārbauda, vai spēles notikumu identifikatori datubāzes ierakstā sakrīt ar sarakstā atrodamiem.
|
||||
\item Izveido jaunu notikuma ierakstu datubāzē, izmantojot sagatavotos datus.
|
||||
Ja izveidošana nenotika parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir apstiprināt notikuma izveidošanu.
|
||||
\begin{enumerate}
|
||||
\item Notikumu izveidošanas stāvokļa kods - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēles istaba ar identifikatoru [istabas identifikators] netika atrasta!
|
||||
\item Darbība ar identifikatoru [istabas identifikators] netika atrasta!
|
||||
\item Notikuma izveidošana neizdevās: nevar ierakstīt datubāzē!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles notikumu pārskats}
|
||||
{mod-func-progress-overview}
|
||||
{Spēles notikumu pārskats}
|
||||
{SGMF03}
|
||||
{
|
||||
Funkcijas mērķis ir iegūt informāciju par spēles notikumiem.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles istabas identifikators - vesels pozitīvs skaitlis.
|
||||
\item Paslēptā informācija - karodziņš.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Meklē spēles istabu attiecīgā tabulā, izmantojot darbības identifikatoru.
|
||||
Ja spēles istaba netiek atrasta parāda 1. paziņojumu.
|
||||
\item Ja pieprasītājs nav sistēma un ir pieprasīta paslēptā informācija un spēles istabas stāvoklis neapzīmē pabeigtu spēli, parāda 2. paziņojumu.
|
||||
\item Sāk veidot sarakstu ar notikumu vārdnīcām.
|
||||
\item No datubāzes iegūst spēles notikumu ierakstus.
|
||||
Katram notikumam iegūst veidu.
|
||||
\item Ja notikuma redzamības spēles procesā ir patiess, tad pievieno attiecīgo vārdnīcu sarakstam.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir par notikumiem nepieciešamās informācijas apkopošana vārdnīcā atkarībā no paslēptās informācijas ievades karodziņa.
|
||||
Ja tiek izvadīta paslēptā informācija, saraksts sastāvēs no vārdnīcām, kas sastāv no:
|
||||
\begin{enumerate}
|
||||
\item Notikuma veids - skaitlisks kods;
|
||||
\item Ietekmēto spēlētāju saraksts - veselu pozitīvu skaitļu saraksts.
|
||||
\end{enumerate}
|
||||
Ja paslēptā informācija izvadīta netiks, tad spēlētāju vārdnīca sastāvēs tikai no lomas identifikatora.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēles istaba ar identifikatoru [istabas identifikators] netika atrasta!
|
||||
\item Notikumu detalizēts pārskats nav pieejams spēles laikā!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,49 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles stāvokļa pārskats}
|
||||
{mod-func-progress-state-overview}
|
||||
{Spēles stāvokļa pārskats}
|
||||
{SGMF04}
|
||||
{
|
||||
Funkcijas mērķis par spēles tagadējo stāvokli, kas ietver spēlētāju stāvokli, nakts numuru un atļautās darbības.
|
||||
}
|
||||
{
|
||||
Paslēptā informācija nosaka, vai izvade saturēs lomu datus par spēlētājiem.
|
||||
Obligātie parametri:
|
||||
Spēles istabas identifikators - vesels pozitīvs skaitlis.
|
||||
Paslēptā informācija - karodziņš.
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Meklē spēles istabu attiecīgā tabulā, izmantojot darbības identifikatoru.
|
||||
Ja spēles istaba netiek atrasta parāda 1. paziņojumu.
|
||||
\item Iesāk vārdnīcas gatavošanu ar noteiktu informāciju.
|
||||
\item Vārdnīcai pievieno spēles stāvokli un nakts numuru.
|
||||
\item Ja paslēptās informācijas karodziņš ir patiesība, katram spēlētājam sameklē datubāzē attiecīgo lomu.
|
||||
Ja loma netika atrasta, parāda 2. paziņojumu ar attiecīgajiem spēlētāju identifikatoriem.
|
||||
Pievieno vārdnīcai spēlētāju vārdnīcu sarakstu, katram pievienojot lomas identifikatoru, dzīvības stāvokli un sakaru redzamības mainīgos.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir nepieciešamās informācijas apkopošana vārdnīcā.
|
||||
Ja tiek izvadīta paslēptā informācija, vārdnīca sastāvēs no atribūtiem:
|
||||
\begin{enumerate}
|
||||
\item Spēles stāvoklis - skaitlisks kods.
|
||||
\item Nakts numurs - vesels pozitīvs skaitlis.
|
||||
\item Spēlētāju vārdnīcu saraksts. Katra spēlētāja vārdnīca, kā atslēgas ir:
|
||||
\begin{enumerate}
|
||||
\item Lomas identifikators - veselu pozitīvu skaitli;
|
||||
\item Dzīvības stāvoklis - karodziņš;
|
||||
\item Mafijas sakaru redzamība - karodziņš;
|
||||
\item Vispārīgo sakaru redzamība - karodziņš;
|
||||
\end{enumerate}
|
||||
|
||||
\end{enumerate}
|
||||
Ja paslēptā informācija izvadīta netiks, tad spēlētāju vārdnīca sastāvēs tikai no lomas identifikatora.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēles istaba ar identifikatoru [istabas identifikators] netika atrasta!
|
||||
\item Spēlētāju ar identifikatoru: [spēlētāju identifikatori] netika atrasti!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
\paragraph{Spēles gaitas modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/SpēlesGaitasModulis.png}
|
||||
\caption{Spēles gaitas DPD}
|
||||
\label{fig:dpd-2-game-progress}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/game-progress/SGMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-progress/SGMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-progress/SGMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-progress/SGMF04.tex}
|
||||
@ -0,0 +1,41 @@
|
||||
\moduleFunctionTable
|
||||
{Lomas detaļu pārskats}
|
||||
{mod-func-role-details}
|
||||
{Lomas detaļu pārskats}
|
||||
{SLMF01}
|
||||
{
|
||||
Funkcijas mērķis ir izvadīt specificētās lomas pārskatu.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles lomas identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda vai lietotājs ir reģistrēts.
|
||||
Ja nav, izvada 1. paziņojumu.
|
||||
\item Sagatavo datubāzes pieprasījumu no spēles lomas tabulas.
|
||||
\item Pieprasījumam pievieno atlasīšanu pēc spēles lomas identifikatora.
|
||||
\item Sagatavo pieprasījuma lauku sarakstu.
|
||||
Saraksta pamatā ir nosaukums, apraksts, maksimāli pieļaujamais skaits spēlē, vai var tikt mafijas noslepkavots, vai ir lietotāja izveidots.
|
||||
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu.
|
||||
Ja pieprasījums neizdotas, parāda 2. paziņojumu.
|
||||
Ja spēles loma netika atrasta, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir spēles lomas datu izvadīšana.
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - nosaukums - simbolu virkne, apraksts - simbolu virkne, maksimāli pieļaujamais
|
||||
skaits spēlē - nenegatīvs skaitlis, vai var tikt mafijas noslepkavots - karodziņš, vai ir lietotāja izveidots - karodziņš.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\item Tāda spēles lomas nav atrasta! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
\moduleFunctionTable
|
||||
{Lomu pārskats}
|
||||
{mod-func-role-overview}
|
||||
{Lomu pārskats}
|
||||
{SLMF02}
|
||||
{
|
||||
Funkcijas mērķis ir izvadīt sarakstu ar visām pieejamajām lomām, to nosaukumiem.
|
||||
}
|
||||
{
|
||||
% TODO: Filters
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotājs ir reģistrēts. Ja nav, izvada 1. paziņojumu.
|
||||
\item Sagatavo datubāzes pieprasījumu no spēles lomas tabulas.
|
||||
\item Pieprasījumam pievieno atlasīšanu pēc filtra.
|
||||
\item Pieprasa ierakstu saskaitīšanu pēc filtra, izmantojot sagatavoto pieprasījumu.
|
||||
Ja rezultātu skaits ir $0$, tad parāda 4. paziņojumu.
|
||||
\item Aprēķina lappušu skaitu ar formulu: $L = ceil(Q / Q_l)$, $Q$ - rezultātu skaits, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Ja ievaddatos nav lappuses numurs vai tā pārsniedz aprēķināto lappušu skaitu, tad turpmāk lappuses numurs būs 1.
|
||||
\item Aprēķina ierakstu nobīdi ar formulu: $O = (N - 1) * Q_l$, kur $O$ - nobīde; $N$ - lappuses numurs, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Pievieno pieprasījumam nobīdi pēc aprēķinātās lappuses.
|
||||
\item Veic sagatavoto pieprasījumu, iegūstot lomas nosaukumu. Ja pieprasījums neizdotas, parāda 2. paziņojumu. Ja spēles loma netika atrasta, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir spēles lomu saraksta datu izvadīšana.
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - nosaukumi - simbolu virknes.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\item Tāda spēles lomas nav atrasta! Mēģiniet vēlreiz!
|
||||
\item Pēc jūsu meklēšanas uzvednes netika atrasts neviens lietotājs!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
\moduleFunctionTable
|
||||
{Lomas darbību pārskats}
|
||||
{mod-func-role-action-overview}
|
||||
{Lomas darbību pārskats}
|
||||
{SLMF03}
|
||||
{
|
||||
Funkcijas mērķis ir izvadīt visas darbības, kuras var izpildīt attiecīgā loma.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles lomas identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotājs ir reģistrēts. Ja nav, izvada 1. paziņojumu.
|
||||
\item Sagatavo datubāzes viens pret daudz pieprasījumu no spēles lomas tabulas uz lomas darbības tabulu.
|
||||
\item Sagatavo pieprasījuma lauku sarakstu. Saraksta pamatā ir lomas nosaukums, darbības nosaukums, vai darbība ir tūlītēja.
|
||||
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu. Ja pieprasījums neizdodas, parāda 2. paziņojumu. Ja spēles loma netika atrasta, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir spēles lomas darbības datu izvadīšana.
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - lomas nosaukums - simbolu virkne, virkne - lomas darbības nosaukums - simbolu virkne, vai lomas darbība ir tūlītēja - karodziņš.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\item Tāda spēles lomas nav atrasta! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,60 @@
|
||||
\moduleFunctionTable
|
||||
{Jaunas lomas izveidošana}
|
||||
{mod-func-role-create}
|
||||
{Jaunas lomas izveidošana}
|
||||
{SLMF04}
|
||||
{
|
||||
Funkcijas mērķis ir izveidot spēles lomu.
|
||||
Ievades dati tiek saņemti no maksas lietotājiem un administratoriem pieejamās veidlapas.
|
||||
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Nosaukums - simbolu virkne ar garumu līdz 64 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises.
|
||||
\item Apraksts - simbolu virkne ar garumu līdz 2048 simboliem.
|
||||
\item Neobligātie parametri:
|
||||
\item Maksimāli pieļaujamais skaits spēlē - nenegatīvs skaitlis, noklusētā vērtība - 1.
|
||||
\item Vai var tikt mafijas noslepkavots - karodziņš, noklusētā vērtība - patiess.
|
||||
\item Lomas darbības nosaukums - virkne - simbolu virkne ar garumu līdz 64 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises.
|
||||
\item Vai lomas darbība ir tūlītēja - virkne - karodziņš, noklusētā vērtība - nepatiess.
|
||||
\end{enumerate}
|
||||
Administratoram specifiskie ievaddati:
|
||||
\begin{enumerate}
|
||||
\item Vai ir lietotāju izveidota - karodziņš, noklusētā vērtība - patiess.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja nav, iegūst sarakstu ar neaizpildītajiem laukiem un parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai nosaukums un darbības nosaukums, ja ievadīts, satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 7. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai nosaukums, apraksts un darbības nosaukums, ja ievadīts, nepārsniedz noteikto garumu.
|
||||
Ja pārsniedz, tad iegūst pārsniegto garumu parametru sarakstu un parāda 2. paziņojumu ar attiecīgajiem laukiem un garumiem.
|
||||
\item Ja ir ievadīts maksimāli pieļaujamais skaits spēlē parametrs, pārbauda, vai skaitlis ir nenegatīvs, citādi parāda 6. paziņojumu.
|
||||
\item Ja ir ievadīts(/-i) lomas darbības nosaukums(/-i), tad izveidot daudz pret daudz attiecību tabulu starp spēles lomas un lomas darbības tabulām.
|
||||
\item Ja lietotājs nav administrators, iestatīt noklusēto vērtību ``vai ir lietotāju izveidota'' uz patiess.
|
||||
\item Mēģina sameklēt datubāzē spēles lomu ar ievadīto nosaukumu.
|
||||
Ja tāds pastāv, tad parāda 3. paziņojumu.
|
||||
\item Jaunas spēles lomas dati tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana notiek, parādīt 4. paziņojumu, citādi parādīt 5. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai spēles loma ir veiksmīgi saglabāta.
|
||||
\begin{enumerate}
|
||||
\item Lomas izveidošanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Uzstādījumi ar tādu nosaukumu jau eksistē! Samainiet nosaukumu un mēģiniet vēlreiz!
|
||||
\item Uzstādījumi veiksmīgi saglabāti!
|
||||
\item Sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\item Skaitlim jābūt nenegatīvam! Mēģiniet vēlreiz!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,68 @@
|
||||
\moduleFunctionTable
|
||||
{Lomas rediģēšana}
|
||||
{mod-func-role-edit}
|
||||
{Lomas rediģēšana}
|
||||
{SLMF05}
|
||||
{
|
||||
Funkcijas mērķis ir rediģēt spēles lomas.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no maksas lietotājiem un administratoriem pieejamās veidlapas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles lomas identifikators - pozitīvs skaitlis. Noklusētā vērtība - no konteksta spēles loma, kas tiek rediģēts, iegūtais identifikators.
|
||||
\item Nosaukums - simbolu virkne ar garumu līdz 64 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item Apraksts - simbolu virkne ar garumu līdz 2048 simboliem.
|
||||
\end{enumerate}
|
||||
|
||||
Neobligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Maksimāli pieļaujamais skaits spēlē - nenegatīvs skaitlis.
|
||||
\item Vai var tikt mafijas noslepkavots - karodziņš.
|
||||
\item Lomas darbības nosaukums - virkne - simbolu virkne ar garumu līdz 64 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises.
|
||||
\item Vai lomas darbība ir tūlītēja - virkne - karodziņš.
|
||||
\end{enumerate}
|
||||
|
||||
Administratoram specifiskie ievaddati:
|
||||
\begin{enumerate}
|
||||
\item Vai ir lietotāju izveidota - karodziņš.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators vai lietotāja identifikators, nesakrīt ar nesakrīt ar lietotāja identifikatoru, kurš izveidoja doto spēles lomu, parādīt 6. paziņojumu.
|
||||
\item Veido izmainīto datu sarakstu pēc turpmāk izmainītajiem laukiem.
|
||||
\item Pārbauda, vai nosaukums un darbības nosaukums, ja ievadīts, satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 8. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja nav, iegūst sarakstu ar neaizpildītajiem laukiem un parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai nosaukums un apraksts nepārsniedz noteikto garumu.
|
||||
Ja pārsniedz, tad iegūst pārsniegto garumu parametru sarakstu un parāda 2. paziņojumu ar attiecīgajiem laukiem un garumiem.
|
||||
\item Pārbauda, vai maksimāli pieļaujamais skaits spēlē ir nenegatīvs skaitlis.
|
||||
Ja nav, tad parāda 7. paziņojumu.
|
||||
\item Ja tika iesniegts atšķirīgs nosaukums, mēģina sameklēt datubāzē lomu ar ievadīto nosaukumu.
|
||||
Ja tāda pastāv, tad parāda 3. paziņojumu.
|
||||
\item Iepriekš izmainītos laukus pievieno izmainīto lauku sarakstam.
|
||||
\item Spēles uzstādījumu sagatavotie dati - lauki, kas ir rediģēto lauku sarakstā, tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana nenotiek, parādīt 5. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai spēles loma ir veiksmīgi rediģēta.
|
||||
\begin{enumerate}
|
||||
\item Lomas rediģēšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Loma ar tādu nosaukumu jau eksistē! Samainiet nosaukumu un mēģiniet vēlreiz!
|
||||
\item Loma veiksmīgi saglabāti!
|
||||
\item Lomas rediģēšana nav veiksmīga!
|
||||
\item Darbība nav autorizēta!
|
||||
\item Skaitlim jābūt nenegatīvam! Mēģiniet vēlreiz!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
\moduleFunctionTable
|
||||
{Lomas dzēšana}
|
||||
{mod-func-role-delete}
|
||||
{Lomas dzēšana}
|
||||
{SLMF06}
|
||||
{
|
||||
Funkcijas mērķis ir neatgriezeniski dzēst spēles lomu.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no maksas lietotājiem un administratoriem pieejamās veidlapas.
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles lomas identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators vai lietotājs, kurš izveidoja doto lomu, parādīt 1. paziņojumu.
|
||||
\item Pārbauda, vai loma ar tādu identifikatoru eksistē.
|
||||
Ja neeksistē, parāda 2. paziņojumu.
|
||||
\item Visas spēles lomas un lomas darbības daudz pret daudz starptabulas izdzēš.
|
||||
Ja izdzēšāna nav veiksmīga, parāda 4. paziņojumu.
|
||||
\item Spēles lomas ierakstu izdzēš.
|
||||
Ja izdzēšana ir veiksmīga, parāda 3. paziņojumu.
|
||||
Ja izdzēšāna nav veiksmīga, parāda 4. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt spēles lomas dzēšanas stāvokli.
|
||||
\begin{enumerate}
|
||||
\item Spēles lomas dzēšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Tāda spēles loma nav atrasta! Mēģiniet vēlreiz!
|
||||
\item Spēles loma ir veiksmīgi izdzēsta!
|
||||
\item Sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
\paragraph{Spēles lomu uzstādījumu modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/SpēlesLomuModulis.png}
|
||||
\caption{Spēles lomu uzstādījumu DPD}
|
||||
\label{fig:dpd-2-game-role}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF04.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF05.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/SLMF06.tex}
|
||||
@ -0,0 +1,40 @@
|
||||
\moduleFunctionTable
|
||||
{Pieejamo pieslēgšanās spēles istabu pārskats}
|
||||
{mod-func-room-overview}
|
||||
{Pieejamo pieslēgšanās spēles istabu pārskats}
|
||||
{SIMF01}
|
||||
{
|
||||
Funkcijas mērķis ir ļaut reģistrētiem lietotājiem apskatīt pieejamās spēles istabas.
|
||||
}
|
||||
{
|
||||
Funkcijai nav paredzēti ievades parametri.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Tiek veikts pieprasījums Lietotāju kontu modulim identificēt lietotāju.
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs netiek identificēts, tad tiek atgriezts 2. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Spēles istabu datubāzei tiek nosūtīts pieprasījums ar Lietotāja identitāti.
|
||||
\item Spēles istabu datubāze atbild ar Pieejamo spēles istabu datiem.
|
||||
\begin{enumerate}
|
||||
\item Ja atbilde netiek saņemta, tad tiek atgriezts 3. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Atgrieztie dati tiek sakārtoti, norādot katras istabas nosaukumu, aktīvo lietotāju skaitu, maksimālo lietotāju skaitu un spēles konfigurāciju.
|
||||
\begin{enumerate}
|
||||
\item Ja dati neietver nevienu pieejamu istabu, tad tiek atgriezts 1. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Realizēto pārskatu atgriež lietotājam.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Saskarnē tiek izvietots pārskatāms saraksts ar visām lietotājam pieejamajām spēles istabām un to raksturojošajiem parametriem,
|
||||
tas ir, nosaukumu, aktīvo lietotāju skaitu, maksimālo lietotāju skaitu, spēles konfigurāciju.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item ``Nav pieejamu istabu'' Brīdinājums par lietotājam pieejamajām spēles istabām
|
||||
\item ``Autorizācijas kļūda'' - Brīdinājums par identifikācijas mēģinājumu.
|
||||
\item ``Tehniskas problēmas'' - Brīdinājums par sistēmas stāvokli
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,52 @@
|
||||
\moduleFunctionTable
|
||||
{Pieslegšanās spēles istabai}
|
||||
{mod-func-room-connect}
|
||||
{Pieslegšanās spēles istabai}
|
||||
{SIMF02}
|
||||
{
|
||||
Funkcijas mērķis ir ļaut reģistrētiem lietotājiem pievienoties izvēlētajai spēles istabai.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Istabas identifikācijas kodu
|
||||
\end{enumerate}
|
||||
Neobligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Istabas piekļuves parole - simbolu virkne no 6 - 12 simboliem [prasības].
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Tiek veikts pieprasījums Spēles istabu datubāzei ar Spēles istabas identifikācijas datiem.
|
||||
\begin{enumerate}
|
||||
\item Ja istaba ir atrasta un ja tās piekļuves kritēriji ietver paroli, tad tiek atgriezts dialogs piekļuves paroles iesniegšanai, kas tiek pievienoti pieprasījumam.
|
||||
\begin{enumerate}
|
||||
\item Ja piekļuves parole nesakrīt ar istabas kritērijiem, tad tiek atgriezts 3. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Ja istabas lietotāju skaits ir sasniedzis maksimālo lietotāju skaitu, tad tiek atgriezts 2. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Spēles istabas datubāze atbild ar Spēles istabu spēlētāju datiem un Spēlētāju stāvokļu datiem.
|
||||
\begin{enumerate}
|
||||
\item Ja atbilde netiek saņemta, tad tiek atgriezts 4. paziņojums.
|
||||
\end{enumerate}
|
||||
\item Atgrieztie dati tiek sakārtoti Spēles istabas pārskata izkārtojumā un lietotājs tiek pāradresēts uz attiecīgās istabas saiti. Tiek atgriezts 1. paziņojums.
|
||||
\begin{enumerate}
|
||||
\item Ja pāradresācijas procesā rodas kļūda, tad tiek atgriezts 4. paziņojums.
|
||||
\end{enumerate}
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir noteikt vai lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Pieslēgšanās stāvoklis - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item ``Pievienošanās istabai ir veiksmīga!'' - Apstiprinošs paziņojums
|
||||
\item ``Istabā nav brīvu vietu!'' - Brīdinājums par Spēles istabas stāvokli
|
||||
\item ``Nepareiza piekļuves parole!'' - Brīdinājums par piekļuves mēģinājumu
|
||||
\item ``Tehniskas problēmas'' - Brīdinājums par sistēmas stāvokli
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
\moduleFunctionTable
|
||||
{Atslēgšanās no spēles istabas pieteikums}
|
||||
{mod-func-room-disconnect}
|
||||
{Atslēgšanās no spēles istabas pieteikums}
|
||||
{SIMF03}
|
||||
{
|
||||
Funkcijas mērķis ir ļaut reģistrētiem lietotājiem atslēgties no pašreizējās spēles istabas.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Lietotāja identifikators - vesels pozitīvs skaitlis.
|
||||
\item Spēles istabas identifikators - vesels pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Meklē spēles istabas ierakstu datubāzē, izmantojot identifikatoru.
|
||||
Ja to neatrod, parāda 1. paziņojumu.
|
||||
\item Meklē spēlētāja ierakstu datubāzē.
|
||||
Ja to neatrod, parāda 2. paziņojumu.
|
||||
\item Lietotāja aktīvuma karogs tiek nomainīts uz nepatiesu.
|
||||
Ja ierakstīšana neizdodas, parāda 4. paziņojumu.
|
||||
\item Ja atslēgšanās ir veiksmīga, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades mērķis ir noteikt vai lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Atslēgšanās stāvoklis - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Spēles istaba nav atrasta! Mēģiniet vēlreiz.
|
||||
\item Spēlētājs nav atrasts! Mēģiniet vēlreiz.
|
||||
\item Sistēmas kļūda! Mēģiniet vēlreiz!
|
||||
\item Veiksmīgi atslēgts no istabas.
|
||||
\item Tehniskas problēmas, mēģiniet vēlāk.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,32 @@
|
||||
\moduleFunctionTable
|
||||
{Jaunas spēles istabas izveide}
|
||||
{mod-func-room-create}
|
||||
{Jaunas spēles istabas izveide}
|
||||
{SIMF04}
|
||||
{
|
||||
Maksas lietotājiem ļauj izveidot jaunu spēles istabu ar noteiktiem iestatījumiem
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lietotājs ievada istabas nosaukumu
|
||||
\item Lietotājs izvēlas spēles uzstādījumus
|
||||
\item Nospiež ``Izveidot jaunu istabu''.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Autorizācijas pārbaude, vai lietotājam ir maksas versija.
|
||||
\item Ievades formas parādīšana istabas nosaukuma, maksimālo spēlētāju skaitu un citiem iestatījumiem
|
||||
\item Formas datu validācija un istabas izveide.
|
||||
\item Lietotājs tiek automātiski pievienots jaunizveidotajai istabai.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Lietotājs tiek novirzīts uz jaunizveidotās istabas saskarni.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item ``Istaba veiksmīgi izveidota.''
|
||||
\item ``Istaba nevarēja tikt izveidota, mēģiniet vēlāk.''
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,31 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles sākuma pieteikums}
|
||||
{mod-func-room-app}
|
||||
{Spēles sākuma pieteikums}
|
||||
{SIMF05}
|
||||
{
|
||||
Istabas izveidotājam ir iespēja sākt spēli istabā, kuru ir izveidojis
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Maksas lietotājs ir autorizējies un atrodas spēles istabā.
|
||||
\item Nospiež ``Sākt spēli'', tiek padots istabas identifikators.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai istabā ir nepieciešamais spēlētāju skaits.
|
||||
\item Sākuma pieteikums tiek nosūtīts visiem istabas dalībniekiem.
|
||||
\item Ja vairākums apstiprina, spēle sākas.
|
||||
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Spēles saskarne ar sākuma informāciju par spēli.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item ``Spēle sāksies pēc dalībnieku apstiprinājuma.''
|
||||
\item ``Spēles sākums nav iespējams, nepietiek dalībnieku.''
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,30 @@
|
||||
\moduleFunctionTable
|
||||
{Spēlētāja izslēgšana}
|
||||
{mod-func-room-kill}
|
||||
{Spēlētāja izslēgšana}
|
||||
{SIMF06}
|
||||
{
|
||||
Administrators var izslēgt spēlētāju no spēles istabas.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Administrators izvēlas spēlētāju, ko vēlas izslēgt.
|
||||
\item Nospiež ``Izslēgt spēlētāju''.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda administratora autorizāciju.
|
||||
\item Atrast izvēlēto spēlētāju datubāzē.
|
||||
\item Spēlētājam tiek bloķēta pieeja konkrētajai istabai
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Administrators redz paziņojumu par veiksmīgu izslēgšanu.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item ``Spēlētājs veiksmīgi izslēgts.''
|
||||
\item "Izslēgšana neveiksmīga, mēģiniet vēlreiz.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
\moduleFunctionTable
|
||||
{Spēlētāju pārskata iegūšana}
|
||||
{mod-func-room-player-overview}
|
||||
{Spēlētāju pārskata iegūšana}
|
||||
{SIMF07}
|
||||
{
|
||||
Funkcija ļauj administratoram iegūt pārskatu par visiem spēlētājiem noteiktā virtuālā istabā.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotājs ir autorizēts. Ja nē, parāda 1. paziņojumu.
|
||||
\item Iegūst spēlētāju sarakstu no datubāzes.
|
||||
\item Ja sistēmas lietotājs: veic notikumu aprēķinus un pārbauda uzvaras nosacījumus.
|
||||
\item Ja administrators: sagatavo datu sarakstu ar iespēju atsaukties uz konkrētu lietotāju.
|
||||
\item Ja reģistrēts lietotājs vai maksas lietotājs, tad sagatavo un atgriež identificētās istabas spēlētāju sarakstu
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja reģistrēts lietotājs vai maksas lietotājs, tad saskarne ar spēlētāju sarakstu
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Neizdevās iegūt spēlētāju sarakstu. Mēģiniet vēlreiz!
|
||||
\item Sistēmas iekšēja kļūda. Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,16 @@
|
||||
\paragraph{Spēles istabas modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/SpēlesIstabasModulis.png}
|
||||
\caption{Spēles istabas DPD}
|
||||
\label{fig:dpd-2-game-room}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF04.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF05.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF06.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/SIMF07.tex}
|
||||
@ -0,0 +1,40 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles uzstādījumu pārskats}
|
||||
{mod-func-setup-overview}
|
||||
{Spēles uzstādījumu pārskats}
|
||||
{SUMF01}
|
||||
{
|
||||
Funkcijas mērķis ir sniegt pārskatu par spēles uzstādījumiem.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotājs ir reģistrēts.
|
||||
Ja nav, izvada 1. paziņojumu.
|
||||
\item Sagatavo datubāzes pieprasījumu no spēles uzstādījumu tabulas.
|
||||
\item Pieprasījumam pievieno atlasīšanu pēc spēles uzstādījuma identifikatora.
|
||||
\item Sagatavo pieprasījumu lauku sarakstu.
|
||||
Saraksta pamatā ir nosaukums, apraksts, vai ir pamata, vai ir aktīvs, izveidošanas laiks.
|
||||
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu.
|
||||
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
|
||||
Ja spēles uzstādījums netika atrasts, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir spēles virtuālās istabas uzstādījumu datu izvadīšana.
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - nosaukums - simbolu virkne, apraksts - simbolu virkne, ir pamata - karodziņš, ir aktīvs - karodziņš, izveidošanas laiks - datums formatēts kā simbolu virkne
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz!
|
||||
\item Tāds spēles uzstādījums nav atrasts! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,42 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles uzstādījuma lomu pārskats}
|
||||
{mod-func-setup-role-overview}
|
||||
{Spēles uzstādījuma lomu pārskats}
|
||||
{SUMF02}
|
||||
{
|
||||
Funkcijas mērķis ir sniegt pārskatu par spēles uzstādījumu lomām.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotājs ir rēģistrēts. Ja nav, izvada 1. paziņojumu.
|
||||
\item Sagatavo datubāzes pieprasījumu no spēles uzstādījumu tabulas.
|
||||
\item Pieprasījumam pievieno atlasīšanu pēc spēles uzstādījuma identifikatora.
|
||||
\item Sagatavo pieprasījumu lauku sarakstu. Saraksta pamatā ir spēles uzstādījumu lomu nosaukumi.
|
||||
\item Pieprasa ierakstu saskaitīšanu, izmantojot sagatavoto pieprasījumu.
|
||||
Ja rezultātu skaits ir $0$, tad parāda 4. paziņojumu.
|
||||
\item Aprēķina lappušu skaitu ar formulu: $L = ceil(Q / Q_l)$, $Q$ - rezultātu skaits, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Ja ievaddatos nav lappuses numurs vai tā pārsniedz aprēķināto lappušu skaitu, tad turpmāk lappuses numurs būs 1.
|
||||
\item Aprēķina ierakstu nobīdi ar formulu: $O = (N - 1) * Q_l$, kur $O$ - nobīde; $N$ - lappuses numurs, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Pievieno pieprasījumam nobīdi pēc aprēķinātās lappuses.
|
||||
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu. Ja pieprasījums neizdodas, parāda 2. paziņojumu. Ja spēles uzstādījums netika atrasts, parāda 3. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir spēles virtuālās istabas uzstādījumu datu izvadīšana.
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - lomas nosaukums - simbolu virkne.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\item Tads spēles uzstādījums nav atrasts! Mēģiniet vēlreiz
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,47 @@
|
||||
\moduleFunctionTable
|
||||
{Jauna spēles uzstādījuma izveidošana}
|
||||
{mod-func-setup-new}
|
||||
{Jauna spēles uzstādījuma izveidošana}
|
||||
{SUMF03}
|
||||
{
|
||||
Funkcijas mērķis ir izveidot spēles virtuālās istabas uzstādījumus, turpmākai izmantošanai spēlē.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no maksas lietotājiem un administratoriem pieejamās veidlapas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Nosaukums - simbolu virkne ar garumu līdz 128 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item Apraksts - simbolu virkne ar garumu līdz 2048 simboliem.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja nav, iegūst sarakstu ar neaizpildītajiem laukiem un parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai nosaukums un darbības nosaukums, ja ievadīts, satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 6. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai nosaukums un apraksts nepārsniedz noteikto garumu.
|
||||
Ja pārsniedz, tad iegūst pārsniegto garumu parametru sarakstu un parāda 2. paziņojumu ar attiecīgajiem laukiem un garumiem.
|
||||
\item Mēģina sameklēt datubāzē uzstādījumus ar ievadīto nosaukumu.
|
||||
Ja tāds pastāv, tad parāda 3. paziņojumu.
|
||||
\item Jaunas spēles uzstādījumi dati tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana notiek, parādīt 4. paziņojumu, citādi parādīt 5. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai spēles uzstādījumi ir veiksmīgi saglabāti.
|
||||
\begin{enumerate}
|
||||
\item Uzstādījumu izveidošanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Uzstādījumi ar tādu nosaukumu jau eksistē! Samainiet nosaukumu un mēģiniet vēlreiz!
|
||||
\item Uzstādījumi veiksmīgi saglabāti!
|
||||
\item Sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,65 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles uzstādījuma rediģēšana}
|
||||
{mod-func-setup-edit}
|
||||
{Spēles uzstādījuma rediģēšana}
|
||||
{SUMF04}
|
||||
{
|
||||
Funkcijas mērķis ir rediģēt spēles virtuālās istabas uzstādījumus.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no maksas lietotājiem un administratoriem pieejamās veidlapas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu identifikators - pozitīvs skaitlis.
|
||||
Noklusētā vērtība - no konteksta spēles uzstādījumu, kas tiek rediģēts, iegūtais identifikators.
|
||||
\item Nosaukums - simbolu virkne ar garumu līdz 128 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item Apraksts - simbolu virkne ar garumu līdz 2048 simboliem.
|
||||
\end{enumerate}
|
||||
|
||||
Administratoram specifiskie ievaddati:
|
||||
\begin{enumerate}
|
||||
\item Vai ir pamata - karodziņš, noklusētā vērtība - nepatiess.
|
||||
\item Izveidošanas laiks - datums formatēts kā simbolu virkne, noklusētā vērtība - tagadējais laiks.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators vai lietotāja identifikators, nesakrīt ar nesakrīt ar lietotāja identifikatoru, kurš izveidoja doto spēles uzstādījumu, parādīt 6. paziņojumu.
|
||||
\item Veido izmainīto datu sarakstu pēc turpmāk izmainītajiem laukiem.
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja nav, iegūst sarakstu ar neaizpildītajiem laukiem un parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai nosaukums un darbības nosaukums, ja ievadīts, satur tikai pieļaujamos simbolus.
|
||||
Ja nesatur, tad iegūst izmantotos neatļautos simbolus, tad parāda 9. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai nosaukums un apraksts nepārsniedz noteikto garumu.
|
||||
Ja pārsniedz, tad iegūst pārsniegto garumu parametru sarakstu un parāda 2. paziņojumu ar attiecīgajiem laukiem un garumiem.
|
||||
\item Ja tika iesniegts atšķirīgs nosaukums, mēģina sameklēt datubāzē uzstādījumus ar ievadīto nosaukumu.
|
||||
Ja tāds pastāv, tad parāda 3. paziņojumu.
|
||||
\item Iepriekš izmainītos laukus pievieno izmainīto lauku sarakstam.
|
||||
\item Ja lietotājs ir administrators, pārbauda, vai datumam ir korekts formāts.
|
||||
Ja nav, parāda 7. paziņojumu. Pārbauda, vai datums ir pagātnē vai tagad.
|
||||
Ja datums ir nākotnē, parāda 8. paziņojumu.
|
||||
Sagatavotiem datiem pievieno administratoriem specifiskās.
|
||||
\item Spēles uzstādījumu sagatavotie dati - lauki, kas ir rediģēto lauku sarakstā, tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana nenotiek, parādīt 5. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt spēles uzstādījumu rediģēšanas stāvokli.
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu rediģēšanas apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Uzstādījumi ar tādu nosaukumu jau eksistē! Samainiet nosaukumu un mēģiniet vēlreiz!
|
||||
\item Uzstādījumi veiksmīgi saglabāti!
|
||||
\item Spēles uzstādījumu rediģēšana nav veiksmīga!
|
||||
\item Darbība nav autorizēta!
|
||||
\item Nekorekts datums! Datuma formāts: [nepieciešamais datuma formāts].
|
||||
\item Izveidošanas datums nedrīkst būt nākotnē!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
\moduleFunctionTable
|
||||
{Spēles uzstādījuma dzēšana}
|
||||
{mod-func-setup-delete}
|
||||
{Spēles uzstādījuma dzēšana}
|
||||
{SUMF05}
|
||||
{
|
||||
Funkcijas mērķis ir neatgriezeniski dzēst spēles virtuālās istabas uzstādījumus.
|
||||
}
|
||||
{
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu identifikators - pozitīvs skaitlis.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators vai lietotājs, kurš izveidoja dotos uzstādījumus, parādīt 1. paziņojumu.
|
||||
\item Pārbauda, vai uzstādījumi ar tādu identifikatoru eksistē.
|
||||
Ja neeksistē, parāda 2. paziņojumu.
|
||||
\item Pārbauda, vai uzstādījums pašlaik ir aktīvs.
|
||||
Ja ir, parāda 3. paziņojumu.
|
||||
\item Uzstādījumu ierakstu izdzēš.
|
||||
Ja izdzēšana ir veiksmīga, parāda 4. paziņojumu.
|
||||
Ja izdzēšana nav veiksmīga, parāda 5. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt spēles uzstādījumu dzēšanas stāvokli.
|
||||
\begin{enumerate}
|
||||
\item Spēles uzstādījumu dzēšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Tāds spēles uzstādījums nav atrasts! Mēģiniet vēlreiz!
|
||||
\item Spēles uzstādījumi pašlaik tiek izmantoti. Mēģiniet vēlreiz vēlāk.
|
||||
\item Spēles uzstādījumi ir veiksmīgi izdzēsti!
|
||||
\item Sistēmas iekšēja kļūda! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
\paragraph{Spēles uzstādījumu modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/SpēlesUzstādījumuModulis.png}
|
||||
\caption{Spēles uzstādījumu DPD}
|
||||
\label{fig:dpd-2-game-setup}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/SUMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/SUMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/SUMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/SUMF04.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/SUMF05.tex}
|
||||
@ -0,0 +1,9 @@
|
||||
\input{./src/requirements/functional-requirements/modules/auth/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/user/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/premium-user/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/price/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/chat/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-room/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-progress/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-role/index.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/game-setup/index.tex}
|
||||
@ -0,0 +1,59 @@
|
||||
\moduleFunctionTable
|
||||
{Abonementa pieteikums}
|
||||
{mod-func-premium-app}
|
||||
{Abonementa pieteikums}
|
||||
{MAMF01}
|
||||
{
|
||||
Funckcijas mērķis ir izveidot maksājuma pieteikumu maksas abonementam, izveidojot maksas abonementa ierakstu datubāzē maksājuma apstiprināšanas gadījumā.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek iegūti no lietotāja maksājuma pieteikuma veidlapas, apmaksājot maksas abonementu.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Kartes īpašnieka vārds.
|
||||
Simbolu virkne, kas var saturēt lielo un mazos burtus (a-z, A-Z) no \emph{ASCII} simbolu kopas, atstarpes, defīzes, apostrofus.
|
||||
Maksimālais simbolu skaits ir 100 simboli.
|
||||
\item Kartes numurs - simbolu virkne, kas sastāv no cipariem un ir 16 simbolus gara.
|
||||
\item Kartes derīguma termiņš - datums, kas sastāv no gada un mēneša.
|
||||
Pieļaujamas tikai termiņi, kas nav pirms tekošā mēneša.
|
||||
\item Kartes drošības kods.
|
||||
Simbolu virkne no 3 cipariem.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai datubāzē neeksistē aktīvs abonements, kas ir saistīts ar lietotāju, kas veido maksājuma pieteikumu.
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja tie nav, iegūst sarakstu ar neazpildītajiem laukiem, parāda 1. paziņojumu.
|
||||
\item Pārbauda, vai visi obligātie lauki satur tikai pieļaujamos simbolus.
|
||||
Ja satur, tad iegūst izmantotos neatļautos simbolus, tad parāda 2. paziņojumu ar attiecīgajiem laukiem un izmantotajimem aizliegtiem simboliem.
|
||||
\item Pārbauda, vai visi obligātie lauki nepārsniedz noteikto garumu.
|
||||
Ja satur, tad iegūst pārsniegto garumu parametru sarakstu un parāda 3. paziņojumu ar attiecīgi laukiem un garumiem.
|
||||
\item Pārbauda, vai kartes numura pirmie 4 cipari atbilst vienai no bankām, ko apstrādā maksājumu apstrādātājs.
|
||||
Ja neatbilst, parāda 4. paziņojumu.
|
||||
\item Pārbauda, vai kartes derīguma termiņš ir pēc tekošā mēneša.
|
||||
Ja tas ir pirms, parāda 4. paziņojumu.
|
||||
\item No datubāzes iegūst aktuālo šodienas cenu par abonementu.
|
||||
\item Sagatavo datus pieparsījumam, kas iekļauj maksājuma datus.
|
||||
Pārveido tos maksājuma apstrādātāja pieprasītā formātā un to šifrē, izmantojot maskājumu apstrādātāja \emph{API}.
|
||||
\item Pieprasa abonementa izveidošanu, sazinoties ar maksājumu apstrādātāju.
|
||||
Ja atbildē izveidošana netiek apstiprināta, parāda 4. paziņojumu.
|
||||
\item Ja abonementa izveidošana ir apstiprināta, izveido ierakstu ar abonementa datiem datubāzē ar maksājuma procesora atbildē saņemtu klienta identifikatoru.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Abonementa izveidošanas apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\item Abonēšana ir veiksmīga!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,50 @@
|
||||
\moduleFunctionTable
|
||||
{Abonementu pārskats}
|
||||
{mod-func-premium-overview}
|
||||
{Abonementu pārskats}
|
||||
{MAMF02}
|
||||
{
|
||||
Funkcijas mērķis ir lietotājiem rādīt informāciju par maskas esošiem un bijušiem maksas abonementiem. Šī pārskata dati tiek kārtoti un filtrēti neobligātā kārtā.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no vietrāža parametriem.
|
||||
Neobligātie parametri:
|
||||
Lappuses numurs - pozitīvs skaitlis.
|
||||
Stāvokļa filtra opcija (kods) - skaitlis, kas pieņem vairākas vērtības: 0 - filtru nepielietot, pārējie iespējamie abonementa stāvokļi.
|
||||
Kārtošanas opcija (kods) - skaitlis, kas pieņem 2 vērtības: 0 - rezultātus nekārtot, 1 - rezultātus kārtot augoši.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Sagatavo datubāzes pieprasījumu no maksas abonementiem.
|
||||
\item Ja pastāv stāvokļa filtra opcija, kā vērtība nav nulle, pievieno pieprasījumam nosacījumu atlasīšanai pēc stāvokļa.
|
||||
\item Ja pastāv kārtošanas opcija un tā nav 0, pieprasījumam pievieno rezultātu kārtošanas nosacījumu.
|
||||
\item Iegūst lietotāja lomu sistēmā.
|
||||
Ja lietotājs nav administrators, pieprasījumam pievieno nosacījumu, ka abonementa ierakstiem jābūt saistītiem ar lietotāju.
|
||||
\item Pieprasa ierakstu saskaitīšanu, izmantojot sagatavoto pieprasījumu.
|
||||
Ja rezultātu skaits ir 0, tad parāda 1. paziņojumu.
|
||||
\item Aprēķina lappušu skaitu ar formulu: $L = ceil(Q / Q_l)$, $Q$ - rezultātu skaits, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Ja ievaddatos nav lappuses numurs vai tā pārsniedz aprēķināto lappušu skaitu, tad turpmāk lappuses numurs būs 1.
|
||||
\item Aprēķina ierakstu nobīdi ar formulu: $O = (N - 1) * Q_l$, kur $O$ - nobīde; $N$ - lappuses numurs, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Pievieno pieprasījumam nobīdi pēc aprēķinātās lappuses.
|
||||
\item Veic sagatavoto pieprasījumu, iegūstot abonementa sākuma laiku, beigu laiku, stāvokli, nākamā maksājuma laiku, maksājumu atstrādāja klienta identifikators.
|
||||
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir parādīt pārskata, ņemot vērā filtrus un kārtošanu, ja tas tika pieprasīts.
|
||||
Kā arī dot informāciju abonementa abonementa atcelšanai.
|
||||
|
||||
Izvades dati:
|
||||
\begin{enumerate}
|
||||
\item Pārskata ieraksta dati: vairāki ieraksti, kas sastāv no 2 datumiem - sākuma un beigu laiks (kas varētu neeksistēt),
|
||||
abonementa stāvoklis - skaitlisks kods, kas apzīmē tekošo stāvokli abonementam, maksājumu atstrādāja klienta identifikators - skaitlis.
|
||||
\item Lapu skaits - pozitīvs skaitlis.
|
||||
\item Tekošā lappuse - pozitīvs skaitlis, kas ir mazāks vai vienāds par lapu skaitu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Netika atrasts neviens abonements!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,36 @@
|
||||
\moduleFunctionTable
|
||||
{Abonementa atcelšana}
|
||||
{mod-func-premium-cancel}
|
||||
{Abonementa atcelšana}
|
||||
{MAMF03}
|
||||
{
|
||||
Funkcijas mērķis ir atcelt lietotājam, kam ir aktīvs maksas abonementi.
|
||||
Maksājuma procesora abonements tiks atcelts, kā rezultātā no lietotāja vairs nebūs iekasēti maksājumi.
|
||||
Abonementa stāvoklis sistēmā būs apzīmēts kā atcelts.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek iegūti no darbības abonementu pārskatā.
|
||||
Obligātie parametri:
|
||||
Maksājuma procesora klienta identifikators - pozitīvs skaitlis.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Sameklē datubāzē maksas abonementa ierakstu, pēc maksas apstrādātāja klienta identifikatora.
|
||||
Ja tāds neeksistē, parāda 1. paziņojumu.
|
||||
\item Izmantojot maksājumu apstrādātāja klienta numuru, pieprasa abonementa atcelšanu, izmantojot maksājuma procesora \emph{API}.
|
||||
Ja maksājuma procesora atbilde norāda, ka atcelšana neizdevusies, parāda 2. paziņojumu.
|
||||
\item Ja maksājuma procesora atbilde norāda, ka abonementa atcelšana ir veiksmīga, attiecīgā datubāzes ieraksta stāvokli nomaina uz stāvokli, kas apzīmē atceltu abonementu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai atcelšana bija veiksmīga.
|
||||
\begin{enumerate}
|
||||
\item Abonementa atcelšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Maksas apstrādātāja klienta identifikators neeksistē!
|
||||
\item Neizdevās atcelt abonementu! Mēģiniet vēlreiz vēlāk vai sazinieties ar tehniskās palīdzības specialistu.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
\paragraph{Maksas abonementu modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/MaksasAbonementaModuls.png}
|
||||
\caption{Maksas abonementu DPD}
|
||||
\label{fig:dpd-2-premium-user}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/premium-user/MAMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/premium-user/MAMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/premium-user/MAMF03.tex}
|
||||
@ -0,0 +1,36 @@
|
||||
\moduleFunctionTable
|
||||
{Cenas pievienošana}
|
||||
{mod-func-price-add}
|
||||
{Cenas pievienošana}
|
||||
{CMF01}
|
||||
{
|
||||
Funkcija atbild par jaunu digitālo produktu cenu pievienošanai, piemēram, maksas konta iegādei.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no cenas izveidošanas veidlapas.
|
||||
|
||||
Obligāti parametri:
|
||||
\begin{enumerate}
|
||||
\item Cena - pozitīvs decimālskaitlis.
|
||||
\item Sākuma laiks - datums simbola virknes formātā.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda vai lietotājam ir administratora tiesības.
|
||||
\item Ierakstot jauno cenu notiek tās datu validācija un pārbaude.
|
||||
\item Ja validācija ir sekmīga dati tiek ievadīti un saglabāti lietotāja datubāzē.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Cenas izveidošanas stāvokļa kods - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Cena ir pievienota un saglabāta.
|
||||
\item Cena nav saglabāta.
|
||||
\item Nav notikusi sinhronizācija ar naudas kontu.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,37 @@
|
||||
\moduleFunctionTable
|
||||
{Cenas rediģēšana}
|
||||
{mod-func-price-edit}
|
||||
{Cenas rediģēšana}
|
||||
{CMF02}
|
||||
{
|
||||
Funkcija nodrošina iespēju rediģēt jau esošu produktu cenas.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no cenas rediģēšanas veidlapas.
|
||||
|
||||
Obligāti parametri:
|
||||
\begin{enumerate}
|
||||
\item Cena - pozitīvs decimālskaitlis;
|
||||
\item Sākuma laiks - datums simbola virknes formātā.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda vai lietotājam ir administratora tiesības.
|
||||
\item Rediģējot jau esošu cenu un izmaina tās vērtību.
|
||||
\item Notiek rediģētās vērtības validācija un pārbaude.
|
||||
\item Ja validācija ir apstiprināta, tad rediģētā cena tiek saglabāta un aizstāj veco cenu, kas tiek dzēsta.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Cenas izveidošanas stāvokļa kods - skaitlisks kods.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Cena ir saglabāta.
|
||||
\item Cena nav saglabāta.
|
||||
\item Nav notikusi sinhronizācija ar naudas kontu.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
\moduleFunctionTable
|
||||
{Cenu pārskats}
|
||||
{mod-func-price-overview}
|
||||
{Cenu pārskats}
|
||||
{CMF03}
|
||||
{
|
||||
Funkcija dod iespēju apskatīt visas šobrīd aktuālās un neaktuālās produktu cenas.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no vietrāža parametriem.
|
||||
|
||||
Obligāti parametri:
|
||||
\begin{enumerate}
|
||||
\item Kārtošanas karodziņš.
|
||||
\item Cenu kategorija.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda vai lietotājam ir administratora tiesības.
|
||||
\item Tiek nolasīti atlasītie dati un izvadīti no datubāzes.
|
||||
\item Dati tiek apstrādāti nolasīšanas sagatavošanai.
|
||||
\item Tiek izveidota saskarne, ko var pārskatīt administrators.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Saraksts ar atlasītajām cenām
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Cenu uzskaite nav pieejama.
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
\paragraph{Cenu modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/CenuModulis.png}
|
||||
\caption{Cenu DPD}
|
||||
\label{fig:dpd-2-price}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/price/CMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/price/CMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/price/CMF03.tex}
|
||||
@ -0,0 +1,48 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāju profilu pārskats}
|
||||
{mod-func-user-profiles}
|
||||
{Lietotāju profilu pārskats}
|
||||
{LAMF01}
|
||||
{
|
||||
Funkcijas mērķis ir lietotājiem rādīt citu lietotāju profilu publisku informāciju (profilu).
|
||||
Funkcijas ietvaros var tikt veikta neobligāta meklēšana pēc noteiktiem lietotāja profilu atribūtiem.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no veicamās darbības.
|
||||
|
||||
Neobligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Meklēšanas uzvedne - simbolu virkne ar garumu līdz 50 simboliem bez atļauto simbolu ierobežojumiem.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Sagatavo datubāzes pieprasījumu no lietotāju tabulas.
|
||||
\item Ja meklēšanas uzvedne nav tukša simbolu virkne, tad pieprasījumam pievieno meklēšanas nosacījumu meklēšanai pēc pilna vārda, segvārda un biogrāfijas.
|
||||
\item Pieprasa ierakstu saskaitīšanu, izmantojot sagatavoto pieprasījumu.
|
||||
Ja rezultātu skaits ir $0$, tad parāda 1. paziņojumu.
|
||||
\item Aprēķina lappušu skaitu ar formulu: $L = ceil(Q / Q_l)$, $Q$ - rezultātu skaits, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Ja ievaddatos nav lappuses numurs vai tā pārsniedz aprēķināto lappušu skaitu, tad turpmāk lappuses numurs būs 1.
|
||||
\item Aprēķina ierakstu nobīdi ar formulu: $O = (N - 1) * Q_l$, kur $O$ - nobīde; $N$ - lappuses numurs, $Q_l$ - ierakstu skaits vienā lappusē.
|
||||
\item Pievieno pieprasījumam nobīdi pēc aprēķinātās lappuses.
|
||||
\item Veic sagatavoto pieprasījumu, iegūstot abonementa segvārdu, izveidošanas laiku (lietotāja pievienošanās laiku), attēla datnes adreses.
|
||||
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
|
||||
\item Ja attēls datnes adrese neeksistē, tad iegūst noklusētā attēla datnes adresi.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir parādīt pārskata, ņemot meklēšanas uzvedni, ja tā tukša.
|
||||
|
||||
Izvades dati:
|
||||
\begin{enumerate}
|
||||
\item Pārskata ieraksta dati: vairāki ieraksti, kas sastāv no segvārda, lietotāja konta izveidošanas laika (lietotāja pievienošanās laiku).
|
||||
\item Lapu skaits - pozitīvs skaitlis.
|
||||
\item Tekošā lappuse - pozitīvs skaitlis, kas ir mazāks vai vienāds par lapu skaitu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pēc jūsu meklēšanas uzvednes netika atrasts neviens lietotājs!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,52 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja konta datu pārskats}
|
||||
{mod-func-user-profile-data}
|
||||
{Lietotāja konta datu pārskats}
|
||||
{LAMF02}
|
||||
{
|
||||
Funkcijas mērķis ir reģistrētiem lietotājiem iegūt konta savu informāciju, kas ietver gan publisko informāciju, gan privāto.
|
||||
Administratoriem informācija ir iegūstamā par jebkuru lietotāju.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no vietrāža parametriem, caur kuru tiek piekļūts funkcijai.
|
||||
Alternatīvi, dati tiek iegūti no konteksta.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Konta datu lietotāja identifikators - pozitīvs skaitlis.
|
||||
Noklusētā vērtība - no konteksta lietotāja (kas piekļūst funkciju) iegūtais identifikators.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Sagatavo datubāzes pieprasījumu no lietotāju tabulas.
|
||||
\item Iegūst lietotāja lomu sistēmā.
|
||||
Ja lietotājs nav administrators, pieprasījumam pievieno nosacījumu, ka abonementa ierakstiem jābūt saistītiem ar lietotāju.
|
||||
\item Ja apskatāmo datu kontu lietotāja identifikators nesakrīt ar lietotāja identifikatoru, tad parāda 1. paziņojumu.
|
||||
\item Pieprasījumam pievieno atlasīšanu pēc lietotāja identifikatora.
|
||||
\item Sagatavo pieprasīto lauku sarakstu.
|
||||
Saraksta pamatā ir pilns vārds, segvārds, biogrāfijas informācija, konta izveidošanas laiks, attēls (datnes adrese).
|
||||
Ja pieprasītajā lietotājs ir administrators, tad pie šī saraksta pievieno arī e-pasta adresi, e-pasta apstiprinājuma informāciju, konta stāvokli.
|
||||
\item Veic sagatavoto pieprasījumu, pieprasot iepriekš sagatavoto lauku sarakstu, attēla datnes adreses.
|
||||
Ja pieprasījums neizdodas, parāda 2. paziņojumu.
|
||||
Ja lietotājs netika atrasts, parāda 3. paziņojumu.
|
||||
\item Ja attēls datnes adrese neeksistē, tad iegūst noklusētā attēla datnes adresi.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir lietotāja konta datu izvadīšana.
|
||||
To saturs ir atkarīgs no pieprasītāja lietotāja lomas sistēmā.
|
||||
|
||||
\begin{enumerate}
|
||||
\item Vārdnīca - pilns vārds - simbolu virkne, segvārds - simbolu virkne, biogrāfijas informācija - simbolu virkne, konta izveidošanas laiks - datums simbolu virknes formātā, attēls - datnes adrese.
|
||||
Ja pieprasītais lietotājs ir administrators, tad vārdnīca ir arī e-pasta adrese - simbolu virkne, e-pasta apstiprinājuma stāvoklis - simbolu virkne, konta stāvoklis - simbolu virkne.
|
||||
\end{enumerate}
|
||||
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\item Tāds lietotājs nav atrasts! Mēģiniet vēlreiz!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,35 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja konta bloķēšana}
|
||||
{mod-func-user-block}
|
||||
{Lietotāja konta bloķēšana}
|
||||
{LAMF03}
|
||||
{
|
||||
Mērķis ir bloķēt lietotāja kontu, ja notikuši drošības vai cita veida noteikumu pārkāpumi.
|
||||
}
|
||||
{
|
||||
Ievades datus iegūst no veicamās darbības.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Lietotāja identifikators
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Pārbauda, vai lietotāja identifikators eksistē datubāzē.
|
||||
\item Pārbauda administratora autorizāciju.
|
||||
\item Maina lietotāja konta statusu uz ``bloķēts''.
|
||||
\item Reģistrē bloķēšanas laiku un administratora identifikatoru.
|
||||
\item Nosūta paziņojumu lietotājam.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Konta bloķēšanas stāvoklis.
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Konts veiksmīgi bloķēts!
|
||||
\item Neeksistējošs lietotāja identifikators!
|
||||
\item Nepietiekams autorizācijas līmenis, lai veiktu šo darbību!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,97 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja konta rediģēšana}
|
||||
{mod-func-user-edit}
|
||||
{Lietotāja konta rediģēšana}
|
||||
{LAMF04}
|
||||
{
|
||||
Funkcijas mērķis ir rediģēt lietotāju konta datus, kas ir rediģējami.
|
||||
Administratoriem rediģēt dažus laukus, kuru rediģēšana nav pieejama lietotājiem, kas nav admistratori.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no reģistrēto lietotāju pieejamās veidlapas.
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Konta datu lietotāja identifikators - pozitīvs skaitlis.
|
||||
Noklusētā vērtība - no konteksta lietotāja (kas piekļūst funkciju) iegūtais identifikators.
|
||||
\item Pilns vārds - simbolu virkne ar garumu līdz 50 simboliem, kas var saturēt burtciparu simbolus, defises un atstarpes.
|
||||
\item Segvārds - simbolu virkne ar garumu no 6 līdz 20 simboliem, kas var saturēt burtciparu simbolus, skaitļus, defises, pasvītras, apostrofus.
|
||||
\item E-pasta adrese - simbolu virkne ar garumu līdz 320 simboliem.
|
||||
Pieļautajiem simboliem un pieļaujamam formātam jāatbilst ``RFC 2822: Interneta ziņu formāts'' standarta prasībām.
|
||||
\item Dzimšanas datums - datums formatēts kā simbolu virkne.
|
||||
\item Neobligātie parametri:
|
||||
\item Vecā parole - simbolu virkne, kas atbilst iepriekš minētām paroles prasībām.
|
||||
\item Jaunā parole - simbolu virkne, kas atbilst iepriekš minētām paroles prasībām.
|
||||
\item Jaunās paroles apstiprinājums - simbolu virkne, kas atbilst iepriekš minētām paroles prasībām.
|
||||
\item Administratoram specifiskie obligātie parametri:
|
||||
\item E-pasta apstiprinājuma karogs - karodziņš, noklusētā vērtība - nepatiess.
|
||||
\item Izveidošanas laiks - datums formatēts kā simbolu virkne, noklusētā vērtība - tagadējais laiks.
|
||||
\item Konta stāvokļa kods - skaitlisks kods, kas atbilst noteiktam lietotāja konta stāvoklim, noklusētā vērtība - 0.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators un lietotāja identifikators nesakrīt ar pieprasītāja lietotāja identifikatoru, parādīt 1. paziņojumu.
|
||||
\item Veido izmainīto datu sarakstu pēc turpmāk izmainītiem laukiem.
|
||||
\item Pārbauda, vai visi obligātie lauki ir iesniegti.
|
||||
Ja nav, iegūst sarakstu ar neizpildītajiem laukiem, parāda 2. paziņojumu.
|
||||
\item Pārbauda, vai pilns vārds, segvārds, e-pasta adrese, parole satur tikai pieļaujamos simbolus.
|
||||
Ja satur, tad iegūst izmantotos neatļautos simbolus, tad parāda 4. paziņojumu ar attiecīgi laukiem un simboliem.
|
||||
\item Pārbauda, vai pilns vārds, segvārds, e-pasta adrese, biogrāfiskā informācija, parole nepārsniedz noteikto garumu.
|
||||
Ja satur, tad iegūst pārsniegto garumu parametru sarakstu un parāda 5. paziņojumu ar attiecīgi laukiem un garumiem.
|
||||
\item Pārbauda, vai dzimšanas datums atbilst noteiktam minimālam lietotāja vecumam.
|
||||
Ja neatbilst, parāda 7. paziņojumu.
|
||||
\item Pārbauda, vai parole un paroles apstiprinājums sakrīt.
|
||||
Ja nesakrīt, tad parāda 3. paziņojumu.
|
||||
\item Ja tika iesniegta biogrāfiskā informācija, aizvieto salīdzinājuma zīmes, ampersandu, dubultpēdiņas un pēdiņas ar izbēgšanas simboliem.
|
||||
\item Ja jaunā parole tika iesniegta, pārbauda, vai parole atbilst noteiktiem drošības prasībām.
|
||||
Ja tā tiem neatbilst, tā parāda 6. paziņojumu ar attiecīgām neizpildītajām prasībām.
|
||||
\item Pievieno parolei nejauši noģenerēto simbolu virkni, šifrē paroli ar jaucējfunkciju.
|
||||
\item Ja tika iesniegts attēls, tad pārbauda, vai datne atbilst atļautajiem datnes paplašinājumiem.
|
||||
Ja neatbilst, parāda 8. paziņojumu ar atļautiem datnes paplašinājumiem.
|
||||
\item Ja tika iesniegts attēls, tad pārbauda, vai datne nepārsniedz noteikto datnes lielumu.
|
||||
Ja pārsniedz, parāda 9. paziņojumu ar iesniegtās datnes lielumu un maksimāli atļauto datnes lielumu.
|
||||
Ja iesniegtā attēla paplašinājums nav PNG, tad datne tiek konvertētas šajā paplašinājumā.
|
||||
\item Ja tika iesniegts atšķirīgs segvārds, mēģina sameklēt datubāzē lietotājus ar ievadīto segvārdu.
|
||||
Ja tāds (/-i) pastāv, tad parāda 10. paziņojumu ar attiecīgo aizņemto lauku.
|
||||
\item Ja tika iesniegts atšķirīgs e-pasts, mēģina sameklēt datubāzē lietotājus ar ievadīto e-pastu.
|
||||
Ja tāds (/-i) pastāv, tad parāda 10. paziņojumu ar attiecīgo aizņemto lauku.
|
||||
\item Iepriekš izmainītos laukus pievieno izmainīto lauku sarakstam.
|
||||
\item Ja lietotājs ir administrators.
|
||||
Pārbauda, vai datumam ir korekts formāts.
|
||||
Ja nav, parāda 12. paziņojumu.
|
||||
Pārbauda, vai datums ir pagātnē vai tagad.
|
||||
Ja datums ir nākotnē, parāda 13. paziņojumu.
|
||||
Sagatavotiem datiem pievieno administratoriem specifiskās.
|
||||
\item Ja lietotājs ir administrators, pārbauda vai stāvokļa kods atbilst definētiem stāvokļa kods.
|
||||
Ja neatbilst, parāda 14. paziņojumu.
|
||||
\item Lietotāja konta sagatavotie dati - lauki, kas ir rediģēto lauku sarakstā, tiek ierakstīti datubāzē.
|
||||
Ja ierakstīšana ir veiksmīga, pārādīt 15. paziņojumu.
|
||||
Ja ierakstīšana nenotiek, parādīt 11. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt rediģēšanas konta stāvokli.
|
||||
\begin{enumerate}
|
||||
\item Konta rediģēšanas apstiprinājuma stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Lauks: [neaizpildīto lauku saraksts] netika aizpildīts (/-i)!
|
||||
\item Parole un paroles apstiprinājums nesakrīt!
|
||||
\item {}[Parametra nosaukums] nedrīkst saturēt: [izmantoto parametra neatļauto simbolu saraksts]!
|
||||
\item {}[Parametra nosaukums] nedrīkst pārsniegt [noteikto parametra maksimālo simbolu skaits]!
|
||||
\item Parolei ir jāsatur: [neizpildīto paroles prasību saraksts]!
|
||||
\item Minimālais vecums reģistrācijai: [noteikts minimālais vecums reģistrācijai].
|
||||
\item Attēla datne ir aizliegts paplašinājums! Atļautie datnes paplašinājumi: [atļauto datnes paplašinājumu saraksts].
|
||||
\item Attēla datne pārsniedz maksimāli atļauto lielumu! Maksimāli atļautais lielums: [maksimāli atļautais lielums].
|
||||
\item Lietotājs ar tādu [aizņemtā lauka nosaukums] jau eksistē!
|
||||
\item Notika sistēmas iekšējā kļūda! Mēģiniet vēlreiz vēlāk!
|
||||
\item Nekorekts datums! Datuma formāts: [nepieciešamais datuma formāts].
|
||||
\item Izveidošanas datums nedrīkst būt nākotnē!
|
||||
\item Lietotāja stāvokļa kods nav korekts!
|
||||
\item Konta rediģēšana ir veiksmīga!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,42 @@
|
||||
\moduleFunctionTable
|
||||
{Lietotāja konta dzēšana}
|
||||
{mod-func-user-delete}
|
||||
{Lietotāja konta dzēšana}
|
||||
{LAMF05}
|
||||
{
|
||||
Funkcijas mērķis ir dzēst lietotāju kontus, lai to konta informācija būtu neatgriezeniski izdzēsta.
|
||||
}
|
||||
{
|
||||
Ievades dati tiek saņemti no reģistrēto lietotāju pieejamās darbības.
|
||||
Alternatīvi, dati tiek iegūti no konteksta (autentificēta lietotāja identifikators).
|
||||
|
||||
Obligātie parametri:
|
||||
\begin{enumerate}
|
||||
\item Konta datu lietotāja identifikators - pozitīvs skaitlis.
|
||||
Noklusētā vērtība - no konteksta lietotāja (kas piekļūst funkciju) iegūtais identifikators.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Ja lietotājs nav administrators, parādīt 1. paziņojumu.
|
||||
\item Pārbauda, vai lietotājs ar tādu identifikatoru eksistē.
|
||||
Ja neeksistē, parāda 2. paziņojumu.
|
||||
\item Lietotāja ierakstu izdzēš.
|
||||
Ja izdzēšana ir veiksmīga, parāda 3. paziņojumu.
|
||||
Ja izdzēšana nav veiksmīga, parāda 4. paziņojumu.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
Izvades datu mērķis ir noteikt, vai lietotājs tiks pāradresēts.
|
||||
\begin{enumerate}
|
||||
\item Lietotāja konta dzēšanas stāvoklis - kods ar noteiktu stāvokli.
|
||||
\end{enumerate}
|
||||
}
|
||||
{
|
||||
\begin{enumerate}
|
||||
\item Darbība nav autorizēta!
|
||||
\item Tāds lietotājs nav atrasts! Mēģiniet vēlreiz!
|
||||
\item Sistēmas iekšējā kļūda! Mēģiniet vēlreiz!
|
||||
\item Lietotāja deaktivizēšana ir veiksmīga!
|
||||
\end{enumerate}
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
\paragraph{Lietotāju kontu modulis}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{./src/img/LietotājuKontuModulis.png}
|
||||
\caption{Lietotāju kontu DPD}
|
||||
\label{fig:dpd-2-user}
|
||||
\end{figure}
|
||||
|
||||
\input{./src/requirements/functional-requirements/modules/user/LAMF01.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/user/LAMF02.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/user/LAMF03.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/user/LAMF04.tex}
|
||||
\input{./src/requirements/functional-requirements/modules/user/LAMF05.tex}
|
||||
|
Before Width: | Height: | Size: 354 KiB |
|
Before Width: | Height: | Size: 419 KiB |
@ -1,4 +1,4 @@
|
||||
\section{Programmatūras prasību specifikācija}
|
||||
\input{./src/requirements/conceptual-description.tex}
|
||||
\input{./src/requirements/functional-requirements/index.tex}
|
||||
\input{./src/requirements/nonfunctional-requirements/index.tex}
|
||||
% \input{./src/requirements/nonfunctional-requirements/index.tex}
|
||||
|
||||
1
src/test.tex
Normal file
@ -0,0 +1 @@
|
||||
\pagebreak
|
||||
50
src/utils/function-table.tex
Normal file
@ -0,0 +1,50 @@
|
||||
% \newcommand{\moduleFunctionTable}[9]{
|
||||
% \begin{tabularx}{\linewidth}{|X|}
|
||||
% \caption{#1}\label{tab:#2} \\ \hline
|
||||
% \endfirsthead
|
||||
%
|
||||
% \hline \multicolumn{1}{r}{Turpinājums no iepriekšējās lapas} \\ \hline
|
||||
% \endhead
|
||||
%
|
||||
% \hline \multicolumn{1}{r}{Turpinājums nākamajā lapā} \\ \hline
|
||||
% \endfoot
|
||||
%
|
||||
% \hline
|
||||
% \endlastfoot
|
||||
%
|
||||
% \textbf{Funkcijas nosaukums} \\ \hline
|
||||
% #3 \\ \hline
|
||||
% \textbf{Funkcijas identifikators} \\ \hline
|
||||
% #4 \\ \hline
|
||||
% \textbf{Ievads} \\ \hline
|
||||
% #5 \\ \hline
|
||||
% \textbf{Ievade} \\ \hline
|
||||
% #6 \\ \hline
|
||||
% \textbf{Apstrāde} \\ \hline
|
||||
% #7 \\ \hline
|
||||
% \textbf{Izvade} \\ \hline
|
||||
% #8 \\ \hline
|
||||
% \textbf{Paziņojumi} \\ \hline
|
||||
% #9 \\ \hline
|
||||
% \end{tabularx}
|
||||
% }
|
||||
|
||||
|
||||
\newcommand{\moduleFunctionTable}[9]{
|
||||
\subparagraph{#1} \label{tab:#2}
|
||||
\textbf{Funkcijas nosaukums}: #3
|
||||
|
||||
\textbf{Funkcijas identifikators}: #4
|
||||
|
||||
\textbf{Ievads}: #5
|
||||
|
||||
\textbf{Ievade}:
|
||||
|
||||
#6
|
||||
|
||||
\textbf{Apstrāde}: #7
|
||||
|
||||
\textbf{Izvade}: #8
|
||||
|
||||
\textbf{Paziņojumi}: #9
|
||||
}
|
||||
1
src/utils/index.tex
Normal file
@ -0,0 +1 @@
|
||||
\input{./src/utils/function-table.tex}
|
||||