Brňák - Holeš - Kubovič - specifikacia
From Princípy tvorby software
Contents |
Dochádzkový/Prístupový systém pre školu
Špecifikácia projektu
Vytvorili: Milan Holeš, Ján Brňák, Lukáš Kubovič
13. marec 2010
Verzia 1.0
Introduction
Purpose
Zámer tohto dokumentu je prezentovať detailný popis Dochádzkového systému pre školu. Tento dokument popisuje účel, vlastnosti a funkcionalitu systému, systémového rozhrania a jeho jednotlivých komponentov, čo bude systém robiť, ako bude systém reagovať na vonkajšie podnety, pod akými obmedzeniami bude pracovať.
Document Conventions
Tento dokument v jednotlivých kapitolách postupne popisuje systém, systémové rozhrania, funkcionalitu a požiadavky pre správny beh systému.
Intended Audience and Reading Suggestions
Tento dokument je určený vývojárom, testerom a taktiež aj technickému personálu aplikácie Dochádzkového systému, ale aj pre pracovníkov školy pre ktorých je systém vyvíjaný.
Product Scope
Dochádzkový systém popisovaný v tomto dokumente, je určený na evidenciu príchodov a odchodov pracovníkov, učiteľov a žiakov školy na základe komunikácie čítačiek čipových kariet s čipovými kartami jednotlivých zamestnancov respektíve žiakov školy. Systém povoľuje osobe s čipovou kartou vstup do miestností v škole podľa pridelených práv a zároveň monitoruje pozíciu osoby v budove školy resp. miestnosť, v ktorej sa osoba aktuálne nachádza. Je možné aj evidovať budúcu neprítomnosť žiaka alebo aj učiteľa aj bez nutnosti návštevy školy. Pri evidovanej neprítomnosti učiteľa, v systéme sa určí suplovanie. Na základe týchto informácií je možné vygenerovať zoznam neprítomných žiakov a ostatných zamestnancov školy.
References
Overall Description
Product Perspective
Údaje o užívateľoch, ospravedlneniach či miestnostiach sú uchovávané vo vlastnej databáze. Systém je postavený na technológiach PHP + MySQL, XHTML, CSS, JavaScript (AJAX).
Product Functions
Systém obsahuje nasledovnú funkcionalitu:
- Systém eviduje príchody a odchody všetkých osôb
- Rodičia žiaka môžu cez internet nahlásiť neprítomnosť respektíve oneskorenie
- Na základe pridelených práv povoľuje vstup do miestností
- Generuje zoznam neprítomných učiteľova žiakov školy
- Riaditeľ školy môže kontrolovať kde sa osoby nachádzajú, respektíve kto sa nachádza v danej miestnosti
User Classes and Characteristics
Žiak:
- Prihlásenie do žiackej časti webstránky systému
- Generovanie zoznamu neprítomných učiteľov a ich suplujúcich náhrad
- Vstup do miestností
Učiteľ:
- Prihlásenie do učiteľskej časti webstránky systému
- Generovanie zoznamu neprítomných žiakov
- Vstup do miestností
Rodič:
- Prihlásenie do rodičovskej časti webstránky systému
- Ospravedlnenie žiaka cez formulár na webstránke systému
Pracovník školy:
- Zapnutie/Vypnutie čítačiek čipových kariet jednotlivých miestností
- Vstup do miestností
Riaditeľ:
- Generovanie zoznamu prítomných/neprítomných osôb
- Prihlásenie do CMS zóny webstránky systému a úprava obsahu webstránky
- Sledovanie pohybu osôb v miestnosti
- Správa užívateľov (pridanie/zrušenie užívateľa, prideľovanie práv na vstup do miestností užívateľom)
- Prideľovanie suplujúcich učiteľov
- Vstup do miestností
Administrátor:
- Prihlásenie do CMS zóny webstránky systému a úprava obsahu webstránky
- Zapnutie/Vypnutie čítačiek čipových kariet jednotlivých miestností
- Správa užívateľov (pridanie/zrušenie užívateľa, prideľovanie práv na vstup do miestností užívateľom)
- Vydanie karty
- Vstup do miestností
Operating Environment
Systém beží na školskom serveri. Po budove školy sú rozmiestnené čítačky čipových kariet, ktoré komunikujú so serverom, ktorý ukladá špecifické údaje jednotlivých užívateľov do databázy.
Server s databázou, do ktorej sa budú zaznamenávať príchody a odchody žiakov a zamestnancov
- pripojenie na internet
- SUSE Linux Enterprise Server 10 a vyššie
- Oracle Database 9 a vyššie
- Apache HTTP Server 2.0 a vyššie
Klient
- pripojenie na internet
- akýkoľvek internetový prehliadač podporujúci HTML a Javascript
Design and Implementation Constraints
Webová stránka systému musí byť kompatibilná a plne funkčná na všetkých bežne používaných internetových prehliadačoch. Prístup k informáciám môže byť spomalený pri väčšom zaťažení systému.
User Documentation
- užívateľský manuál prístupný cez webovú stránku systému
- príučka používania čipových kariet pre žiakov a zamestnancov
- on-line pomoc pri riešení problémov so systémom
External Interface Requirements
User Interfaces
Užívatelia k systému pristupujú cez webovú stránku, ktorá je zobrazovaná v internetovom prehliadači. Stránka bude prístupná po prihlásení. Bude rozdelená na dve časti; menu a časť s obsahom. Po prihlásení sa užívateľovi zobrazia dostupné informácie na základe typu užívateľa a jeho pridelených práv(študent,zamestnanec,učiteľ,rodič,administrátor). Jednotlivé položky užívateľského rozhrania sú prehľadne rozdelené a pristupuje sa k nim cez jednoúrovňovú navigáciu kvôli jednoduchosti a rýchlosti prístupu ku konkrétnym údajom. Menu v prípade, že je prihlásený študent obsahuje možnosti na zmenu údajov o užívateľovi, prezeranie dochádzky, prezeranie suplovania. Prihlásený rodič má navyše možnosť pre ospravedlnenie neúčasti/meškania.V prípade, že je prihlásený riaditeľ, bude mať možnosť zistiť pomocou vyhľadávacieho formulára, kto sa kde nachádza a obsadenie miestností.. Administrátor má prístupný user management pre registráciu, úpravu a rušenie užívateľov, ale aj pre celkovú správu systému.
Hardware Interfaces
Hlavnú časť systému tvorí server, na ktorom systém pracuje, uchováva databázu a PHP rozhranie. Pripája sa na wifi-router cez lan kábel. Jednotlivé miestnosti školy a hlavné vchody do školy sú vybavené čitačkami čipových kariet. Užívateľ pri vstupe do školy alebo do konkrétnej miestnosti priloží svoju čipovú kartu k čítačke, ktorá zaznamená príchod respektíve odchod v databáze. Systém pri vstupe do miestnosti, do ktorej nemá užívateľ pridelené práva, vyhodnotí vstup ako neoprávnený a konkrétne dvere sa neotvoria.
Software Interfaces
Dochádzkový systém využíva Apache server. Pomocou PHP skriptov a HTML šablón je vygenerovaná webová stránka systému. Obsah a nastavenia tejto webstránky je umožnený zmeniť užívateľom s dostatočnými právami cez CMS systém. Čítačka čipových kariet zasiela správy serveru spravujúcemu čipové karty. Pri požiadavke na vstup do miestnosti, server odpovedá správou ALLOWED (prístup povolený), DENIED (prístup odmietnutý) alebo ERROR (chyba pri čítani karty). Všetky údaje o užívateľoch, ospravedlneniach, miestnostiach či obsah webstránky sú uchovávané v MySQL databáze
Communications Interfaces
Komunikácia webového rozhrania bude fungovať na báze HTTPS alebo HTTP. Pripojenie medzi čítačkami a hlavným počítačom bude šifrované: Typ zabezpečenia: WPA, Typ šifrovania: TKIP
System Features
Prihlásenie do systému
Description and Priority
Prihlásenie užívateľa do systému prebieha cez prihlasovací formulár na webstránke systému
Stimulus/Response Sequences
- 1. vyplnenie prihlasovacieho mena a hesla
- 2. stlačenie tlačidla "LOGIN"
- 3. overenie prihlasovacích údajov
- 4. zobrazenie obsahu stránky
Functional Requirements
REQ-1: Osoba musí byť registrovaný užívateľ
Generovanie zoznamu neprítomných osôb
Description and Priority
Softvér má funkciu generovania zoznamu oneskorencov a záškolákov, ktorá je určená pre učiteľov a riaditeľa školy alebo zoznam neprítomných učiteľov a následného suplovania. Zoznam sa generuje z databázy príchodov a odchodov.
Stimulus/Response Sequences
užívateľská rola Žiak:
- 1. prihlásenie do systému
- 2. položka 'Neprítomný učitelia' v navigácii
- 3. vygenerovanie požadovaného zoznamu
- 4. zobrazenie zoznamu na klientskom počítači
užívateľská rola Učiteľ:
- 1. prihlásenie do systému
- 2. položku 'Neprítomný žiaci' v navigácii
- 3. vygenerovanie požadovaného zoznamu
- 4. zobrazenie zoznamu na klientskom počítači
užívateľská rola Riaditeľ, Administrátor:
- 1. prihlásenie do systému
- 2. položka 'Neprítomný žiaci', alebo 'Neprítomný učitelia' v navigácii
- 3. vygenerovanie požadovaného zoznamu
- 5. zobrazenie zoznamu na klientskom počítači
Functional Requirements
REQ-1: Osoba musí byť registrovaný užívateľ
REQ-2: Osoba musí byť prihlásená v systéme
Ospravedlnenie žiaka alebo učiteľa
Description and Priority
Neprítomnosť prípadne oneskorenie žiaka môže rodič alebo aj učiteľ v systéme ospravedlniť.
Stimulus/Response Sequences
- 1. prihlásenie do systému
- 2. položka 'Ospravedlnenie' v navigácii
- 3. vyplnenie požadovaných údajov
- 4. spracovanie formulára a uloženie údajov do databázy
Functional Requirements
Dostupné pre: učiteľ, rodič.
REQ-1: Osoba musí byť registrovaný užívateľ
REQ-2: Osoba musí byť prihlásená v systéme
REQ-3: Osoba musí mať dostatočné práva na ospravedlnenie
Vstup do miestností
Description and Priority
Povolenie / zamietnutie jednotlivým osobám vstup do miestností pri priložení ich čipovej karty k čítačke podľa prístupových práv určených administrátorom.
Stimulus/Response Sequences
- 1. priloženie karty k čítačke
- 2. overenie totožnosti osoby a jej práva na vstup do miestnosti
- 3. povolenie/zamietnutie prístupu do miestnosti
- 4. uloženie času vstupu a pozíciu osoby do databázy
Functional Requirements
REQ-1: Osoba musí byť registrovaný užívateľ
REQ-2: Osoba musí vlastniť platnú čipovú kartu
Správa obsahu webstránky systému
Description and Priority
Zmena obsahu, vzhľadu a nastavení web stránky pomocou CMS systému.
Stimulus/Response Sequences
- 1. prihlásenie do systému
- 2. položka 'Nastavenia' v navigácii
- 3. výber v navigácii typ položky ktorú chce užívateľ editovať
- 5. server vráti zoznam všetkých položiek daného typu
- 6. výber konkrétnej položky, ktorej obsah sa bude editovať
- 7. zobrazenie obsahu položky
- 8. uloženie zmeny položky kliknutím na 'Uložiť'
- 9. uloženie/pridanie/vymazanie položky
Functional Requirements
Dostupné pre: riaditeľ, administrátor.
REQ-1: Osoba musí byť registrovaný užívateľ
REQ-2: Osoba musí byť prihlásená v systéme
REQ-3: Osoba musí mať práva meniť obsah systému
Monitorovanie pozícií osôb
Description and Priority
Riaditeľ má prístup ku interaktívnemu sledovaniu pohybu osôb v miestnostiach a monitorovanie jednotlivých miestností.
Stimulus/Response Sequences
- 1. prihlásenie do systému
- 2. položka 'Pozícia osôb' v navigácii
- 3. vyplnenie formulára s údajmi osôb
- 4. vygenerovanie zoznamu osôb a ich aktuálnych pozícií
Functional Requirements
Dostupné pre: riaditeľ.
REQ-1: Osoba musí byť prihlásená v systéme
REQ-2: Osoba musí mať práva na monitorovanie osôb
Správa užívateľov
Description and Priority
Pridávanie/upravovanie/vymazávanie užívateľov v systéme administrátorom.
Stimulus/Response Sequences
- 1. prihlásenie do systému
- 2. položka 'Správa užívateľov' v navigácii
- 3. vygenerovanie zoznamu všetkých registrovaných užívateľov
- 4. výber užívateľa na editovanie/pridanie nového užívateľa/vymazanie užívateľa
- 5. zobrazenie formulára pre konkrétnu činosť
- 6. uloženie nových údajov
Functional Requirements
Dostupné pre: riaditeľ, administrátor.
REQ-1: Osoba musí byť prihlásená v systéme
REQ-2: Osoba musí mať práva na spravovanie užívateľov
Other Nonfunctional Requirements
Performance Requirements
Systém bude umiestnený na serveri s vysokorýchlostným pripojením. Systém musí zvládať spracovať prichodiace správy s rekciou do 1 sekundy od priloženia čipovej karty. Jeden terminál musí zvládnuť počas 10 min obslúžiť 120 ľudí.
Security Requirements
Server je zabezpečený proti neautorizovanému zapisovaniu a mazaniu údajov. Čítanie údajov je len čiastočne obmedzené, kvôli súkromným údajom osôb a pozíciám osôb v budove. Komunikácia serveru s pripojenými užívateľmi je zabezpečená pomocou HTTPS protokolu.
Software Quality Attributes
- Prispôsobivosť : systém dovoľuje administrátorovi meniť prístupové práva miestností, či pridávanie nových užívateľov.
- Dostupnosť : systém beží non-stop.
- Korektnosť, spoľahlivosť : systém beží korektne, v prípade poruchy sa dá resetnúť. Systém sa zálohuje.
Business Rules
Reset/vypnutie/pozastavenie činnosti systému môže vykonať len poverená osoba. Systém bude bežať nonstop. Každé ráno sa systém aktivuje a na konci každého dňa poverená osoba resetuje celý systém.
