Sucha - Hucko - Zajacova - navrh
From Princípy tvorby software
System Design Document for "Dochádzkový systém pre školu"
Contents
|
Všeobecný prehľad
Identifikácia
Tento počítačový systém je určený pre školský sektor, v ktorom by mal uľahčiť monitorovanie prítomnosti študentov v škole a na hodinách a taktiež aj prítomnosť zamestnancov školy v miestnostiach. Zrýchli aj systém ospravedlňovania absencií študentov na hodinách.
Prehľad systému
Účelom systému je automatizovať a zjednodušovať správu prístupov do miestností a dochádzky študentov v základných, stredných, špeciálnych a prípadne i v iných školských zariadeniach.
Používateľmi systému sú:
- Žiak (študent)
Musí si prevziať kartu, aby mohol vchádzať do školy a miestností, a tým pádom, aby mohol byť kontrolovaný. Môže si prezerať svoju dochádzku. - Učiteľ
Ospravedlňuje neúčasti na hodinách niektorých žiakov a môže si pozrieť aktuálnu dochádzku na jeho hodiny žiakmi. - Rodič
Môže si pozerať dochádzku svojich detí a taktiež ospravedlniť ich nedochvíľnosť alebo vynechanie hodiny. - Riaditeľ
Je kontrolno-riadiacou funkciou. Z toho vyplýva, že musí mať prehľad kde sa kto nachádza v každom momente. Má právomoci ako učiteľ, ale ešte môže navyše prideľovať povolenia na vstupy do miestností. - Iný pracovník školy
Napríklad vrátnik, alebo upratovačka - majú špecifické miestnosti do ktorých môžu vstúpiť len v určitý čas a pod. - Administrátor
Má práva ako riaditeľ, ale nemôže udeľovať ospravedlnenia žiakom, o navyše môže pridávať nových ľudí do systému a má kontrolu nad všetkými účastníkmi systému.
Relevantné dokumenty
Špecifikácia "Dochádzkový/Prístupový systém pre školu"
Parametre pre design systému
Výber systémovej konfigurácie
Časťami systému sú terminály na pracovisku, čipové karty pre používateľov, databázový server a aplikačný server, ktorý umožňuje rýchle a stabilné vykonávanie aplikácie. Klientom je povolený prístup cez webové rozhranie, ktoré môžu využiť klasicky pomocou webového prehliadača podporujúceho JavaScript, HTML, CSS a správne zobrazovanie štandardných obrázkov. Voľba konfigurácie klient-server umožňuje úsporu prostriedkov na používateľských počítačoch, tiež jednoduchšie riešenie bezpečnostných požiadaviek či celkovú správu systému.
Obmedzenia systému
Aj keď tento systém je navrhnutý dobre, tak má isté nedostatky, ako napríklad strata čipovej karty, alebo poškodenie čipovej karty, kedy musí daná osoba nahlásiť stratu čo najskôr, aby jej bola vydaná nová karta - vtedy musí dostať dočasnú kartu. Ďalej môže byť problém s výpadkami serveru (pre výpadok prúdu, poškodenie hardvéru počítača, atď..), kde musí byť existujúci záložný systém, na ktorom sa udržiava presná kópia aktuálnej databázy. Obmedzenie zo strany používateľov (napríklad rodičov) môže vyplynúť aj z nutnosti mať zakúpené internetové pripojenie, ak používateľ nechce ísť osobne do školy.
Iné dôležité systémové parametre
Pri návrhu tohto systému je potrebné dodržať určité požiadavky, ako napríklad nezávislosť na hardvéri serveru, operačného systému alebo webového prehliadača u používateľov.
Taktiež ohľadom bezpečnosti systému, je potrebné aby neprenikli žiadne osobné informácie mimo tento systém, alebo iným osobám ako privilegovaným.
Design systému
Komponenty
Komponent Systém školy
Tvorí jadro celého systému. Spravuje databázu, Snímače kariet a ponúka interface pre užívateľov.
Komponent Snimače kariet
Zabezpečuje monitorovanie vstupov a výstupv do miestnosti a školy. Zaznamenaný vstup alebo výstup posiela Systému školy, ktorý ho spracuje.
Komponent Snimače kariet povolujúce vstup
Zabezpečujú, aby do vybraných miestností mali povolené vstúpiť len oprávnené osoby. Ich úlohou nie je zaregistrovat vstup resp výstup, ale iba povoliť vstup do miestnosti.
Komponent User_interface
User_interface zabezpečuje užívateľské rozhranie pre Systém školy pre osoby oprávnené robiť s Dochádzkovým/Prístupovým systémom pre školu samozrejme len v rozmedzí oprávnení.
Databáza
Nasledujúci obrázok ukazuje návh databázy a vzťahov medzi tabulkamy Systemu
Triedy
Návrh tried obsahuje všetky hlavné triedy Dochádzkového/Prístupového systému pre školu. Uvedené premenné možno chápať ako "properties", teda s metódami Set a Get. Triedy sú navrhnuté podľa Užívateľských skupín v špecifikácii. Základom Systému je trieda Škola. Tá obsahuje všetky dôležité súčasti systému, databázu. Na ňu sa ďalej napájajú Užívatelské rozhrania(User-interface), kde každé obsahuje prihláseného užívateľa, podľa typu užívateľa(viď diagram tried a špecifikácia).
Objekty
Žiak, ktorý neprišiel na slovenčinu:
Interakcia
Sequence diagram
Priebeh komunikácie pri žiadaní o povolenia o vstup, do obmedzenej miestnosti Žiadateľ priloží kartu na terminál ten ju načíta, následne si overí kartu s údajmi uloženými v databáze. V prípade že sa údaje nezhodujú vyhlási terminál kartu za neplatnú. Ak porovnanie s DB prebehlo v poriadku overí si ešte či karta má právo na vstup pozrením sa na u seba uložené práva pre miestnosť, a následne povolí alebo odmietne žiadateľovi vstup.
Activity diagram
Príklad práce systému: Postupnosť udalosti ktorá sa vyskytuje pri ospravedlňovaní absencie.
Užívateľ sa prihlási do systému, ten si overí prihlasovacie údaje a ak sú nesprávne vyzve užívateľa k novému prihláseniu. Po úspešnom prihlásení sa podľa typu užívateľa rozhodne buď zobraziť zoznam žiakov učiteľa, zoznam tried a predmetov pre riaditeľa, zoznam deti alebo zoznam absencii pre, pričom z ostatných možnosti sa postupne prepracuje k zoznamu absencii. Po vybratí konkrétnej je zobrazený formulár, ktorý užívateľ následne vyplní a odošle, systém následne overí správnosť a prítomnosť potrebných údajov a oznámi prijatie odmietnutie ospravedlnenia
Statechart diagram
Na tomto diagrame je zobrazený kolobeh existencie hodiny. Najskôr niekto vytvorí hodinu, kde zadá učiteľa, názov hodiny a ostatné atribúty. Potom túto hodinu treba prideliť nejakému konkrétnemu času v rozvrhu - tým sa hodina stáva aktívnou. Pokiaľ nenastane čas začatia hodiny, tak je hodina v stave neprebiehajúca a čaká na udalosť začatia hodiny. Keď nastane táto udalosť, hodina je v stave prebiehajúca, pričom v tomto stave zbiera informácie z terminálov o príchodoch a odchodoch študentov a učiteľov na hodinu. Keď čas hodiny vyprší, tak prejde zas do stavu neprebiehajúca. Ak už hodina nie je aktuálna, tak sa dá odstrániť z rozvrhu alebo úplne vymazať a tým sa ukončí jej existencia.
Collaboration diagram
Tento diagram znázorňuje ako prebieha vyhodnotenie prístupu do miestnosti. Najskôr sa načíta karta na terminály. Potom z tohto terminálu sa pošlú potrebné údaje o karte do databázy, kde sa zistí, či je karta ešte platná. Následne vyhodnotenie tejto karty sa pošle naspäť na terminál. Ak karta bola neplatná, tak sa pošle signál o neplatnosti karty. Ak je platná, tak sa zistí, či má karta potrebné práva na vstup do miestnosti a podľa výsledku sa pošle signál.
Interakcie medzi komponentmi
Požiadavky jednotlivých komponentov
Komponent Systém školy
Tvorí jadro celého systému. Spravuje databázu, Snímače kariet a ponúka interface pre užívateľov, preto musí byť neuveritelne výkonný s čo najkratšou odozvou. Mal by byť pravidelne zálohovaný a bežať súčasne so svojou kópiou.
Komponent Snímače kariet
Vzhľadom na predpokladaný veľký počet vstupov a výstupov, bolo by vhodné aby nezaťažoval systém každým vstupom, ale ukladal si vstupu a výstupy a posielal ich systému v istých časový intervaloch.
Komponent Snímače kariet povolujúce vstup
Mal by mať v sebe zabudovaný zoznam oprávnených užívateľov, ktorý sa bude priebežne aktualizovať.
Komponent User_interface
Tvorí prístup k celému systému a zároveň tvorí jeho najzraniteľnejšie miesto, preto by mal byť kladený maximálny dôraz na bezpečnosť.
Databáza
Mala by byť pravidelne zálohovaná a bežať súčasne so svojou kópiou. Treba si uvedomiť, že bude vysoko zaťažená budú sa nej vykonávať rozsiahle dotazy.
Charakteristika rozhraní
Rozhranie Rodiča
Úvodné zobrazenie prihláseného rodiča:
Vymeškané hodiny konkrétneho dieťaťa spolu s možnosťou ospravedlnenia hodín:
Rozhranie Učiteľa
Úvodné zobrazenie prihláseného učiteľa:
Ostatné rozhrania
Ostatné rozhrania sú podobné, v prípade záujmu prosím kontaktujte náš tím.
