reqs almost completed

This commit is contained in:
jorenchik
2024-10-20 18:05:16 +03:00
parent ff79a2cbdd
commit 4eb4fcfcfc
3 changed files with 115 additions and 22 deletions

View File

@@ -21,13 +21,18 @@
first-line-indent: 0cm,
[
/ API: lietojumprogrammu saskarne (angl. Application Program Interface);
/ Markdown: TODO;
/ Atzīmēšanas valoda: TODO;
// TODO: add all the terms
/ Atzīmēšanas valoda: dokumenta formatēšanas veids, kas iekļauj birkas un citus
simbolus, kas definē dokumenta struktūru un izskatu;
/ Markdown: populāra vienkārša teksta atzīmēšanas valoda, kas ir izmantota
dokumentu (parasti tīmekļa) veidošanai;
/ Transpilēšana: Programmēšanas valodas pārveidošana vienā abstrakcijas
līmenī citā valodā ar atšķirīgu abstrakcijas līmeni, kā arī valodas teskta
pārveidošana uz kādas programmas objektiem;
/ Vienkāršais teksts: teksta dati, kas reprezentē simbolus bez grafiskas reprezentācijas
vai citiem objektiem;
],
)
#pagebreak(weak: true)
= Ievads
@@ -73,9 +78,10 @@ savukārt, nosaka intervālu, pēc kura kartīte figurēs nākamā mācīšanās
Piemēram, grupas - ļoti viegli, vidēji, grūti, neizdevās -, kam atbilst 5
dienas, 3 dienas, 1 diena, 0 dienas attiecīgi. Jo lielāka ir subjektīva
piepūle, atbildot uz jautājumu vai risinot uzdevumu, jo tiek uzturēts garāks
pārtraukums pirms nākamās reizes, kad šī kartīte būs izmantota. Šī mācīšanās
metode ir atkārtošana ar intervāliem.
// TODO: add reference.
pārtraukums pirms nākamās reizes, kad šī kartīte būs izmantota. Šī mācīšanās
metode ir atkārtošana ar intervāliem. Mācīšanās metode vai līdzīgas metodes var
uzlabot atcerēšanas līmeni pēc mācīšanās (#link(<spaced-repetition-1>)[Alison
Voice and Arran Stirton, 2020]).
// Stuff mdemory does
Veidojot atmiņas kartītes manuāli tās var pazaudēt, var kļūdīties, sagatavojot
@@ -93,7 +99,7 @@ kartītes glabājas bez slēptas informācijas. Vienkārša teksta izmantošana
slēptas informācijas atbrīvo lietotāju no atkarības no šīs programmatūras ar
iespēju pārslēgties uz citu risinājumu ar dažām teksta izmaiņām.
// TODO: add someth??
// @Improve: add some text?;
// The name
Programmatūras produkta nosaukums ir "Mdemory", kas ir darināts nosaukums no
@@ -110,14 +116,15 @@ parāda produkta saistību ar atmiņu.
Ievadā tiek definēts nolūks darbības sfēra, aprakstīta galvenā programmatūras
produkta būtība un mērķi, saistītie dokumenti.
// apraksts: Vispārējs apraksts
// TODO
Vispārējā apraksta sadaļā tiek aprakstīts esošais stāvoklis, pāsūtītājs, produkta perspektīva,
galvenās darījumprasības, pieņēmumi un atkarības.
// apraksts: Programmatūras prasību specifikācija
// TODO
Programmatūras prasību specifikācijas sadaļā tiek aprakstīts risinājumā
izmantots karītes formāts un ar to saistītas datu struktūras, risinājuma datu
plūsmas, funkcijas un risinājuma nefunkcionālās prasības.
// apraksts: Programmatūras projektējuma apraksts
// TODO
// @Complete: apraksts -- Programmatūras projektējuma apraksts
// @Complete: Other things
#pagebreak(weak: true)
#set heading(numbering: "1.1.")
@@ -242,8 +249,6 @@ Secības jautājums.
==== Grupēšanas jautājums
// TODO
```
- Savienojiet planētas ar to īpašībām >
- Zeme:
@@ -261,11 +266,40 @@ Secības jautājums.
- Ir gredzeni
```
=== Jautājumu datu struktūra
=== Definētās datu strukturas
// TODO jautājumu veidi
==== Jautājumi
// TODO lappuse
Šajā apakšsadaļā ir aprakstītas datu struktūras, kas tiks izmantotas, aprakstot
risinājuma funkcijas.
Jautājumu datu struktūra satur informāciju par atmiņas kartīti ar papildus
informāciju, kas atbils noteiktam jautājuma veidam.
Pamatā jautājumam ir:
- Teksts -- simbola virkne;
- Ilgums, cik kartīte nebūs izmantota atkāl intervālu metodē -- pozitīvs daļu skaitlis;
Papildus informācija iedalās vairākos veidos.
+ Vairāku elementu veids:
- Veids -- uzskaitījums, kurš no - vairāku variantu, secības, vienkāršs -
jautājums ir;
- Saraksts ar objektiem, kas sastāv no simbolu
virknes un korektuma karodziņu;
+ Grupas veids:
- Saraksts ar objektiem, kas sastāv no:
- Nosaukuma -- simbolu virkne;
- Elementiem -- saraksts ar simbolu virknēm.
Lappuse ir ir saraksts ar referencēm uz vairākiem jautājuma objektiem, kam ir
noteikts lappuses skaitlis.
Datumam un laikam tiek izmanots sekojošs formāts -
<dienas_numurs>.<mēneša_numurs>.<gads> <stunda>:<minūte> -, piemēram,
"13.05.2024 12:02".
=== Funkciju sadalījums moduļos
@@ -370,9 +404,8 @@ definētas tabulās: #link(<PR01>)[PR01], #link(<PR02>)[PR02].
+ Datums un laiks;
],
[
+ Iegūst konfigurācijas vērtības, kas nosaka cik plats ir tabulācijas simbols
+ Iegūst konfigurācijas vērtības, kas nosaka cik garš ir tabulācijas simbols
un kāds ir maksimāls rindiņas platums pirms tiek veidots jaunās rindas simbols;
// TODO: define datetime format
+ Ja datums un laiks ir padots, pievieno datumu un laiku atbilsoši formātam;
+ Katram jautājumam veic sekojošo:
+ Pievieno jautājuma sākumu (jeb priekšu) ar intervāla skaitli, ja tāds ir;
@@ -877,6 +910,66 @@ Moduļa funkcijas tiek definētas tabulās:
],
) <KF03>
== Nefunkcionālās prasības
Šajā sadaļā tiks apskatītas risinājuma nefunkcionālās prasības.
=== Veikspējas prasības
Uz dinamisko veikspēju ir sekojošas prasības:
+ Failu transpilēšanas ātrums ir vismaz 50000 rindas sekundē;
+ Failu detranspilēšanas (saglabāšanas) ātrums ir vismaz 50000 rindas sekundē;
=== Atribūti
==== Lietojamība
Uz risinājuma lietojamību ir sekojošas prasības:
+ Visiem datiem jābūt maināmiem un redzamiem no vienkārša teksta failiem;
+ Bieži izmantojamām darbībām jābūt atbilstošiem tastatūras taustiņu īsceļiem;
// @Complete: add some additional points
==== Pirmkoda īpašības un uzturamība
Pirmkodam jābūt izstrādātam ar sekojošiem nosacījumiem:
+ Risinājuma pirmkods ir realizēts galvenokārt procedurālā stilā;
+ Transpilatora funkcionalitātes testu pārklājums ir 90%;
+ Saskarnes funkcionalitāte ir notestēta svarīgākās vietās (svarīgākās vietas
ir subjektīvs jēdziens, tāpēc to definēsim kā 20%).
==== Pārnesamība
Uz pārnesamību risinājumam ir sekojoša prasība: kartīšu failiem ir jābūt pārnesamiem
pārkopējot visu direktoriju uz citu mašīnu. Nosacījums saglabā atgriezinisko savietojamību
vienas galvenās versijas ietvaros.
==== Drošība
Uz drošību risinājumam ir sekojošas prasības:
+ Risinājuma pirmkods ir iekļauts kopā ar izpildāmo failu;
+ Risinājums nemodificē un nelasa failus, izņemot izmantotās bibliotēkas, failu
glabātuvi, standarta konfigurācijas vietu;
#pagebreak(weak: true)
= Programmatūras projektējuma apraksts
#pagebreak(weak: true)
#heading(numbering: none, "Izmantotā literatūra un avoti")
+ #hyperlink-source(
"Alison Voice and Arran Stirton",
[Spaced Repetition: towards more effective learning in STEM (2020).],
"https://web.archive.org/web/20171019211402/https://www.loc.gov/standards/datetime/ISO_DIS%208601-1.pdf",
datetime(
year: 2024,
month: 10,
day: 12,
),
)<spaced-repetition-1>