Brňák - Holeš - Kubovič - specifikacia

From Princípy tvorby software

Jump to: navigation, search

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

Webová stránka PTS

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.

Príloha

USE-CASE model

Use-case model (JPG)

Personal tools