Janajev - Adam - specifikacia

From Princípy tvorby software

Jump to: navigation, search

E-learningový systém "Set Elaborate Rate". - Systémová špecifikácia

Contents

Úvod

Cieľ projektu

Projekt S.E.R. (v1.1) je používateľsky prístupná e-learningová aplikácia, ktorá pomocou zapojenia internetu sprostredkováva vedúcim možnosť prehľadne organizovať a vyhodnocovať kurz. Učiteľom napomáha pri výuke a ostatným zainteresovaným osobám - študentom, rodičom, prípadne iným - zjednodušuje prístup k informáciám o štúdiu.

Tento dokument špecifikuje požiadavky a funkcionalitu systému.

Dodržanie konvencií

Dôležité slová budú označené zvýrazneným textom. Systém "Set Elaborate Rate" sa bude zjednodušene označovať akronymom "S.E.R.".

Cieľová skupina

Tento dokument je určený pre viacero cieľových skupín.

  • Sekcie 1: Všeobecný popis a 2: Úvod sú hrubým náčrtom aplikácie, teda sú určené hlavne pre manažérov či iným potencionálnym záujemcom o nákup softvéru, ktorým postačí získať predstavu o aplikácií S.E.R.
  • V sekcií 3: Požiadavky na externé rozhrania sa nachádzajú požiadavky pre systém a mala by zaujímať najmä investorov a analytikov.
  • Sekcia 4: Funkcie systému je určená hlavne pre analytikov a programátorov, ktorým detailne popisuje schopnosti a limity nášho systému.

Rozsah projektu

Systém S.E.R. má hneď niekoľko využití. Základná funkcionalita pokrýva výuku samotnú. Učitelia si budú môcť pripraviť online podklady pre výuku, ako aj zadávať interaktívne testy a domáce úlohy, čím sa značne zníži čas pri vyhodnocovaní.

Ďalej bude systém poskytovať žiakom, rodičom a iným ľudom s dostatočným oprávnením poskytovať prehľad o testoch, aktivite a štúdiu vôbec. Okrem iného S.E.R. slúži ako komunikačný portál pre ľudí, koho sa štúdium týka.

Referencie

On-line verzia špecifikácie tu: [1]

Template, podľa ktorého sa tento dokument písal: [2]

Všeobecný popis

Perspektíva

S.E.R. je nový e-learningový systém, ktorý má čo najpohodlnejšie poskytovať najmä tieto dve požiadavky: organizáciu kurzu a prehľad kurzu.

Z organizačného hľadiska má poskytnúť vedúcemu pohodlný systém na vytvorenie kurzu a jednoduchý, ale pritom dostatočne silný nástroj, ktorý mu umožní vytvárať úlohy pre účastníkov kurzu. Študentom umožní jednoduchý prístup k materiálom a spôsob odovzdávania vypracovaných úloh. Projekt bude tiež v štatistickej sekcií poskytovať prehľadné informácie o behu kurzu a o jednotlivých študentoch.

Cieľom e-learningových aplikácií býva pokus o zapojenie nových internetových technológii do procesu výučby a tým zlepšiť prístupnosť a možnosť komunikácie, S.E.R. si kladie rovnaký cieľ.

Funkcie systému

  • Registrácia a administrácia profilu používateľov.
  • Poskytovanie rôznych úrovní prístupu (hosť, študent, rodiť, učiteľ, riaditeľ).
  • Definovať relácie medzi užívateľmi (učiteľ má priradených študentov, študent môže mať priradeného rodiča)
  • Vytváranie rôznych typov zadaní - lekcia, test, projekt - a ich prideľovanie učiteľom.
  • Vytváranie vlastných testov a priradenie ich deťom rodičmi.
  • Odovzdávanie, prípadne on-line vypracovávanie jednotlivých priradených zadaní.
  • Vyhodnotenie vypracovaných úloh.
  • Prehľadnú štatistiku úspešnosti a aktivity v kurze jedného alebo nejakej množiny študentov.
  • Možnosť jednoduchej a rýchlej komunikácie pomocou chatu.
  • Výmenu vytvorených úloh medzi učiteľmi.

Používateľské skupiny a ich charakteristika

Hosť

Nezaregistrovaný používateľ, nemôže nijak zasahovať do systému a sú mu poskytnú len základné informácie o kurze.

Administrátor

Má plnú kontrolu na administráciou kurzu a používateľov. Pridáva, modifikuje alebo odstraňuje používateľov, môže spolu s učiteľmi meniť nastavenia a informácie kurzu. Jednotlivým študentom môže meniť priradenie (k učiteľom, k rodičom) alebo ich zaraďovať do skupín.

Riaditeľ

Ako najvyššia byrokratická postava má riaditeľ prehľad o výsledkoch a aktivite všetkých účastníkov kurzu.

Učiteľ

Podobne ako riaditeľ má štatistický prehľad, ale len o svojich priradených študentoch a o vlastnej aktivite. Tá sa týka vytvárania rôznych typov zadaní, ich následné zverejnenie a priradenie študentom a nakoniec možnosť ich vyhodnotenia. Pri skupinových zadaniach zadefinuje počet členov skupiny. Tiež môže študentom priraďovať rodičov a účastniť diskusií na IM.

Študent

Študent má možnosť prezerať si a vypracovať jednotlivé priradené zadania a pozrieť si štatistiku svojich už odovzdaných úloh. Môže sa účastniť diskusie v chate. V prípade skupinového zadania môže študent do skupiny pridať / odobrať. Tiež iného užívateľa označiť za svojho rodiča.

Rodič

Rodič môže vytvárať vlastné test. Ak bol označený ako rodiť nejakého iného používateľa, tak vidí výsledky tohto študenta a môže mu priraďovať vytvorené testy. Má povolené komunikovať prostredníctvom IM.

Operačné prostredie

Serverová časť aplikácie bude bežať na serveroch organizácie poskytujúcich daný kurz, predpokladá sa podpora serverov Windows či Linux. Pre úspešný beh aplikácie musí byť na serveri nainštalovaná SQL databázy a taktiež server-side skriptovací jazyk PHP. Klientská časť bude dostupná pomocou všetkých bežných internetových prehliadačov, ako sú napríklad Mozilla Firefox, Chrome, Opera, Internet Explorer či iné. Zvyšné popisy operačného prostredia nájdete v sekciách "Hardwareové rozhranie" a "Softwareové rozhranie".

Dizajnové a implementačné obmedzenia

Výstupy budú zobrazované pomocou xHTML a naštýlované pomocou kaskádových štýlov. Pokiaľ klient nebude mať zablokovaný JavaScript na svojej strane, tak výstupy budú generované postupne - čím sa zabezpečí, že klient vidí okamžite výstup. Keď je JavaScript vypnutý, tak sa len bude kontrolovať dĺžka odozvy databázy, v prípade dlhého trvania (viac než niekoľko sekúnd) bude požiadavka prerušená a používateľovi sa vygeneruje chybová hláška.

Užívateľská dokumentácia

K aplikácii bude pre koncových používateľov poskytovaný celistvý a podrobný pomocník, ktorému bude venovaná celá jedna časť (podstránka) systému. Pre učiteľov, ktorí chcú rýchlo rozbehať kurz bude poskytovaný aj jednoduchý krátky manuál vo forme XML súborov, ktorý bude umožňovať prepínanie medzi xHTML výstupom či obyčajným textovým. Tieto budú distribuované spolu s aplikáciu.

Požiadavky na externé rozhrania

Používateľské rozhranie

Aplikácia bude využívať klasický 3 columns layout.

Navrhnutý 3 column layout
Navrhnutý 3 column layout
  • 1. Registračná a prihlasovacia čast stránky.
  • 2. Navigácia k stránke (pre rôznych užívateľov obsahuje menu rôzne položky podľa privilégií).
  • 3. Samotný obsah (testy, výsledky, osobné správy, ...)
  • 4. Táto časť obsahuje informácie o poslednej návšteve, čas, posledné príspevky k diskusiám, priemery ku konkrétnym testom a iné užitočné informácie, zavisiace na aktuálne otvorenej stránke.
  • 5. Miesto pre copyright


Chybové hlášky a upozornenia sa budú zobrazovať cez celú užívateľskú plochu (prekrývajúc).

Hardwareové rozhranie

Všetky požiadavky na hardware závisia od predpokladaného počtu používateľov a nedjú sa všeobecne definovať. Môžu sa predpokladať iba minimálne požiadavky, a to je v prípade našej e-learningovej aplikácií stroj schopný pripojenia na inernet, spĺňajúci softwareové požiadavky.

Teda minimálne

  • CPU: Intel Pentium 150 MHz, alebo rýchlejší
  • Pamäť: 64 MB, alebo viac
  • Hard Disk: 50 MB, alebo viac

Softwareové rozhranie

  • Operačný Systém: Windows/Linux/Mac OS
  • Kompatibilný webserver (napríklad Apache 1.3.2)
  • PHP 4.0, alebo viac
  • MYSQL 5.1, alebo viac

Komunikačné rozhranie

Dostupnosť je v prípade web aplikácie najväčšou výhodou. Postačí štandartný web-browser podporujúci Web 2.0. Podstatnou požiadavkou je povolený JavaScript. (napr ľubovoľný Mozilla Firefox, Internet Explorer 7.0 a viac, Opera, ..)

Funkcie systému

Administrácia používateľa

Pridať používateľa

Popis a priorita

Administrátor pridá používateľa do systému, zadá základné údaje a pridelí mu rolu.

Priorita: 9.

Odpoveď systému

Systém skontroluje korektnosť zadaných údajov, ak je niekde chyba, tak bude na ňu administrátor upozornení chybovou hláškou. Pokiaľ všetko prebehlo v poriadku, tak účet je vytvorený, ale ešte neaktivovaný. Na zadaný e-mail bude poslaný verifikačný e-mail, ktorým si používateľ bude informovaný o svojich prihlasovacích údajoch a bude si ním môcť konto aktivovať. Všetko je ukončené hláškou o úspešnosti úkonu.

Funkčné požiadavky

  1. Polia formuláru sú: meno, priezvisko, e-mail, rola
  2. Je implementovaná kontrola vyplnenia a správnosti údajov

Upraviť používateľa

Popis a priorita

Administrátor či samotný používateľ vie upraviť svoje základné údaje v systéme.

Priorita: 9.

Odpoveď systému

Systém skontroluje korektnosť zadaných údajov, ak je niekde chyba, tak bude na ňu administrátor upozornení chybovou hláškou. Pokiaľ všetko prebehlo v poriadku, tak údaje budú upravené a uložené. Aplikácia sa nakoniec presmeruje na detail používateľa.

Funkčné požiadavky

Základné spoločné údaje pre všetky role (zvýraznené položky sú povinné):

  • Meno, priezvisko, nickname, e-mail, avatar

Študent:

  • Meno rodiča, meno učiteľa (v prípade viacerých budú údaje oddelené čiarkou)

Učiteľ:

  • Pridelení študenti

Rodič:

  • Pridelené deti
  • Administrátor vie meniť všetky údaji všetkým a vie meniť aj ich rolu
  • Je implementovaná kontrola všetkých údajov, ktoré si to vyžadujú.

Vymazať používateľa

Popis a priorita

Administrátor vie neaktívneho alebo pravidlá porušujúceho používateľa vymazať.

Priorita: 5.

Odpoveď systému

Pri prezeraní detailu klienta sa administrátorovi zobrazí možnosť dané konto zrušiť. Ak má povolení JavaScript tak sa ho ešte raz spýta, či to chce naozaj vykonať. Po vykonaní bude konto zrušené.

Funkčné požiadavky

Systém musí vedieť rozlíšiť, že si profil prezerá administrátor a dať mu teda možnosť konto vymazať.

Informácie o používateľovi

Zobrazenie profilu používateľa

Popis a priorita

Klient si vie pozrieť informácie vybraného používateľa.

Priorita: 5

Odpoveď systému

Po zvolení možnosti sa používateľovi zobrazí stránka s informáciami.

Funkčné požiadavky

  • Systém umožňuje pozerať informácie o jednotlivých používateľoch

Zobrazenie logov aktivity používateľa

Popis a priorita

Zobrazenie logov pohybu na stránke a aktivity v kurze. Keďže pôjde časom o dostatočne veľká kvantum dát, tak aplikácia z nich urobí všelijaké pekné grafy. Prístup rozdelený podľa roly používateľa.

  • Administrátor a riaditeľ vidia pohyb po stránke a aktivitu každého účastníka kurzu
  • Učiteľ vidí svoju aktivitu a aktivitu svojich študentov
  • Rodič vidí svoje priradené dieťa / deti
  • Študent vidí len svoje aktivity

Priorita: 6

Odpoveď systému

Pre aktérov, ktorí majú prístup k logom viacerých, sa najprv zobrazí zoznam na výber. Po vybraní už je to spoločné a zobrazí sa výsek z výpisu - s možnosťou zobrať ho celý alebo nechať vygenerovať grafy.

Funkčné požiadavky

  1. implementovanie zachytávania pohybu a sledovania aktivity v kurze, s vhodnou množinovou informácií, aby výpis mal aj nejakú informačnú hodnotu
  2. skript musí vedieť rozoznať rolu používateľa a podľa toho generovať výstup
  3. generovanie niekoľkých typov grafov
  4. možnosť vyselektovať si nejaký vybraný úsek dát - podľa času od do, či sledovať len nejakú aktivitu

Práca so zadaniami

Vytvorenie

Popis a priorita

Učiteľ má právo vytvárať všetky typy zadaní a konkrétne:

  1. test - množina úloh, s výberom správnej možnosti alebo na doplnenie odpovede
  2. úloha - úlohy na vypracovanie a odovzdanie, väčšinou riešenie na cviku spolu s vyučujúcim
  3. projekt - dlhodobá úloha, ktorá sa odovzdáva

Rodič má právo vytvárať testy.

Priorita: 9

Odpoveď systému

Tvorca kurzu zadá jednak nejak základný popis a informácie o zadaní a hlavne zadá úlohy na vypracovanie. Pokiaľ vstup nie je korektný, tak je o tom podaná chybová hláška a používateľovi sa chyba vyznačí.

Funkčné požiadavky

  • základné info: názov zadania, druh zadania, popis zadania, popis hodnotenia, deadline
  • kontrola vstupov

Upravovanie zadania

Popis a priorita

Vytvorené zadanie môže obsahovať chyby, tvorca má teda možnosť zadanie opraviť.

Priorita: 3

Odpoveď systému

Tvorca pri prezeraní zadania objavil chybu, môže si teda zvoliť možnosť editovania. Zobrazí sa mu znovu formulár ako pri vytváraní a tam môže prenastaviť všetky potrebné údaje.

Funkčné požiadavky

Ako pri vytváraní

Manažment zadaní

Popis a priorita

  1. Administrátor a riaditeľ si môže prezrieť všetky vytvorené a vypracované zadania v kurze
  2. Učiteľ a rodič si môžu prezrieť svoje vytvorené a priraďovať ich študentom / deťom.
  3. Učiteľ a rodič môže ohodnotiť odovzdané zadania
  4. Ak ide o skupinové zadanie, tak učiteľ zadefinuje max. veľkosť skupiny
  5. Učitelia si môžu posielať zadania medzi sebou
  6. Študent si môže prezrieť svoje priradené zadania, začať ich riešiť a nakoniec ich odovzdať
  7. V prípade skupinového zadania si vie skupiny vybrať a prihlásiť sa do nej
  8. Študent si môže pozrieť všetky svoje doposiaľ vypracované zadania


Priorita: 9

Odpoveď systému

V časti aplikácie zadania bude systém podľa rôznych rôl zobrazovať rôzne možnosti. Pomocou jednoduchého preklikania si používateľ zvolí to čo ho zaujíma a to sa mu vygeneruje na výstup

Funkčné požiadavky

  1. Kontrola rôl v systéme, aby bol generovaný korektný výstup pre používateľa
  2. Jednoduché a intuitívne interfejsy pre výber možností

Ostatná funkčnosť

Posielanie IM správ

Popis a priorita

Aplikácia umožní študentom, učiteľom a rodičom komunikovať v reálnom čase pomocou IM správ v samostatnom okne.

Priorita: 1

Odpoveď systému

V IM okne si používatelia môžu prezerať prijaté správy, buď všetky spolu, ale rozdelené podľa používateľa alebo môže rozbehnúť konverzáciu s používateľom, ktorého si vyberú zo zoznamu. Pokiaľ je vybraný používateľ momentálne nedostupný, tak sa mu správy zobrazia pri ďalšom prihlásení v jeho časti IM.

Funkčné požiadavky

  1. zobrazenie účastníkov kurzu = možných účastníkov konverzácie
  2. správy sa pošlú na server, skript sa musí teda reloadovať v rozumnom intervale

Priradenie rodiča

Popis a priorita

Administrátor, učiteľ môžu zmeniť a študent sám si môže zmeniť priradených rodičov

Priorita: 9

Odpoveď systému

Pri prezeraní detailov študenta sa povolaním osobám zobrazí možnosť upraviť informáciu o rodičoch študenta.

Funkčné požiadavky

Vedieť rozlišovať role používateľov

Upravenie informácií o kurze

Popis a priorita

Administrátor, učiteľ môžu zmeniť základné informácie o kurze.

Priorita: 9

Odpoveď systému

Informatívna stránka sa zobrazuje aj nezaregistrovaným používateľom, ktorý tak vidia základné informácie o kurze a kontakt na admina, aby sa prípadne mohli do systému prihlásiť. Tieto základné informácie môže editovať buď administrátor alebo pridelený učitelia v kurze.

Funkčné požiadavky

Vedieť rozlišovať role používateľov, na základe toho vygenerovať hlavnú stránku.

Iné, nie funkčné požiadavky

Výkonnostné požiadavky

Vzhľadom na to, že škála používateľov a frekventovanosti návštevnosti sa môže s rôznymi inštaláciami diametrálne líšiť, prosíme, aby developeri nepodceňovali hardwareové nároky na počet ich používateľov. Konkrétne, minimálne požiadavky uvedené v sekcií hardwareové a softwareové rozhranie dokážu uniesť do 100 ludí pristupujúcich k aplikácií naraz tak, aby aplikácia bežala bez problémov.

Bezpečnostné požiadavky

Vzhľadom na to, že aplikácia udržiava osobné veľmi osobné údaje, požaduje sa použitie podpísaného bezpečnostného ssl protokolu (https). Okrem iného by mali správcovia sreveru pravideľne inštalovať bežpečnostné záplaty na servery a PHP procesor.

Atribúty kvality softvéru

Portabilita

Systém S.E.R. je PHP aplikáciou bežiacou na internete, takže je vysoko portabilná.

Krivka učenia

Software je tvorený v prvom rade pre užívateľov a kladie na 'user-friendly' veľký dôraz, takže krivka učenia pre narábanie s softwareom by pre bežného užívateľa (žiak, rodič) nemala zabrať viac ako pár minút. Učiteľom, ktorí nemajú skúsenosti so spravovaním aplikácií môže trvať pár dní, kým sa naučia so systémom pracovať. Avšak počítačovo gramotným učiteľom zvládnutie systému nezaberie viac ako pár hodín. Administrátori by si mali podrobne preštudovať špecifikáciu softwaru.

Prílohy

Use Case diagram

Use Case diagram
Use Case diagram
Personal tools