Janajev - Adam - specifikacia
From Princípy tvorby software
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.
- 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
- Polia formuláru sú: meno, priezvisko, e-mail, rola
- 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
- implementovanie zachytávania pohybu a sledovania aktivity v kurze, s vhodnou množinovou informácií, aby výpis mal aj nejakú informačnú hodnotu
- skript musí vedieť rozoznať rolu používateľa a podľa toho generovať výstup
- generovanie niekoľkých typov grafov
- 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:
- test - množina úloh, s výberom správnej možnosti alebo na doplnenie odpovede
- úloha - úlohy na vypracovanie a odovzdanie, väčšinou riešenie na cviku spolu s vyučujúcim
- 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
- Administrátor a riaditeľ si môže prezrieť všetky vytvorené a vypracované zadania v kurze
- Učiteľ a rodič si môžu prezrieť svoje vytvorené a priraďovať ich študentom / deťom.
- Učiteľ a rodič môže ohodnotiť odovzdané zadania
- Ak ide o skupinové zadanie, tak učiteľ zadefinuje max. veľkosť skupiny
- Učitelia si môžu posielať zadania medzi sebou
- Študent si môže prezrieť svoje priradené zadania, začať ich riešiť a nakoniec ich odovzdať
- V prípade skupinového zadania si vie skupiny vybrať a prihlásiť sa do nej
- Š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
- Kontrola rôl v systéme, aby bol generovaný korektný výstup pre používateľa
- 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
- zobrazenie účastníkov kurzu = možných účastníkov konverzácie
- 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.
