Table of Contents

Semestrální práce - Místní knihovna

Členové týmu

  • Tomáš Borovička
  • Ondra Stuchlík
  • Aleš Hübl
  • Láďa Stára
  • Jára Fibichr

První prezentace

Na .pptx mi to hlásilo nepovolenou příponu, takže dávám jako zip: 01_uvodni_studie.zip

Organizace práce

Zvolili jsme postup kompletního zkopírování struktury Mišovičova vzorového dokumentu z wiki:

Práci navrhujeme rozdělit následovně:

  • Podmínky proveditelnosti a jejich zhodnocení
  • Obchodní případ (podnikatelské zhodnocení)
  • Kontextová analýza problémové domény
  • Analýza klientů cílového software
  • Prvotní přístup k architektuře cílového software
  • Prvotní přístup k prostředí nasazení
  • Prvotní přístup k použití vývojového prostředí
  • Analýza požadavků
  • Mapování funkčních/nefunkčních požadavků na případy užití
  • Diagram tříd

Úvodní studie

1. Úvod

V České republice existuje v téměř každém městě aspoň jedna městská knihovna. Městské knihovny mají dlouhou tradici, ale bohužel jich mnoho zaspalo dobu a neposkytují moderní služby.

Problémová doména

  • Naše studie se zabývá malou městskou knihovnou ve městě s cca 20 000 obyvateli.
  • Registrujeme přibližně 3000 pravidelných čtenářů.
  • V katalogu máme cca 50 000 knih.
  • V knihovně pracuje celkem 5 zaměstnanců.
  • Spolupracujeme s 10 vydavatelstvími.

Organizační struktura

Organizační struktura je velmi jednoduchá. Knihovnu vede Vedoucí knihovny a pod něj spadají Knihovnice a Skladník.

Skupiny procesů

Identifikovali jsme následující skupiny procesů:

  • Řízení výpůjček - Vše co se týká půjčování knih - tedy, půjčování, vracení, upozorňování na konec výpůjčky, udělování penále, atd.
  • Nákup knih.
  • Management skladu.
  • Správa katalogů.
  • Meziknihovní interakce - Spolupráce s jinými knihovnami.
  • Agenda čtenářů - registrace, prodlužování členství, blokace účtu, atd.
  • Správa partnerských vydavatelství - správa vztahů s vydaveteli.
  • Správa zaměstnanců.
  • Účetnictví.

Zásah IS na skupiny procesů

  • Procesy, které budeme komputerizovat
    • Řízení výpůjček
    • Agenda čtenářů
    • Správa katalogů
    • Management skladu
  • Procesy, které zůstanou nekomputerizovány
    • Nákup knih
    • Meziknihovní interakce
    • Správa partnerských vydavatelství
    • Účetnictví
    • Správa zaměstnanců

Fáze zahájení

1. Podmínky proveditelnosti a jejich zhodnocení

Momentálně neexistuje integrovaný systém městských knihoven,který by splňoval požadavky kladené vedoucím Místní knihovny. Ale požadovaný systém by měl být otevřený a připravený na spolupráci s produkty třetích stran, jakou by například mohl být centrální informační systém, pro integraci knihoven v celé ČR. Takový systém, je ale zatím v nedohlednu a naše městská knihovna potřebuje nutně modernizovat.

2. Obchodní případ (podnikatelské zhodnocení)

Udržení stávajícího stavu, kdy se veškeré výpujčky zaznamenávají tužkou na papír a katalogy jsou pouze v tištěné formě, je nemožné. Pokračování v tomto stylu by znamenalo přijmutí dalších zaměstnanců a tím i neůměrný růst nákladů. Městská knihovna by také měla reprezentovat město a býti příkladem pro mladé lidi a vést je ke vzdělavání.

Současný stav

  • Čtenáři nemohou vzdáleně provádět akce jako
    • Rezervace knih
    • Prodlužování výpůjček
    • Stav svých výpůjček
  • Papírová evidence knih a výpůjček
  • Katalogy pouze v tištěné podobně

Výhody komputerizace

  • Vzdálený přístup čtenářů
  • Vyhledávání knih elektronickou formou
  • Zefektivnění interních procesů knihovny

3. Kontextová analýza problémové domény

Městská knihovna není izolovaný subjekt, a proto je třeba dobře popsat její okolí a interakce s ním.

Vnější kontextová analýza

Knihovna navenek interaguje zejména ze třemi subjekty:

  • Čtenáři
  • Vydavatelství
  • Ostatní knihovny

Schema vnější interakce názorně ukazuje následující diagram:

Vnitřní kontextová analýza

Jednotlivé skupiny procesů interagují mezi sebou. Viz. následující diagram:
pozn.: Vyznačené skupiny procesů jsou ty, jež budou komputerizovány.

4. Analýza klientů cílového software

Z kontextové analýzy vyplývá, že hlavním klientem IS budou čtenáři, kteří tvoří majoritní část interakce knihovny se svým okolím. Ale zaměstnanci knihovny budou IS využívat k interním procesům, jako jsou správa katalogů, management skladu a agenda čtenářů.

5. Prvotní přístup k architektuře cílového software

Informační systém bude řešen formou webové aplikace. Tím se zajistí jednoduchá přístupnost jak zevnitř knihovny(pro interní procesy), tak i z vnějšku(pro veřejnost). Tato forma má také výhodu v tom, že se může knihovna aktivně prezentovat na internetu svými webovými stránkami, jejichž součástí tento IS bude.

Jednoznačnými výhodami tohoto řešení jsou snadná škálovatelnost, uživatelé systému nemusí instalovat žádný software a aplikace je multiplatformí - tak jako téměř celý internet.

  • Architektura
    • Klient – server
    • Vrstevnatá
    • Komponentová
  • Přístupné přes webový prohlížeč
  • Výhoda – multiplatformní řešení
  • HW požadavky
    • Pronájem serveru
    • Nákup PC do knihovny

6. Prvotní přístup k prostředí nasazení

Jelikož základem celé aplikace bude báze dat, kterou bude IS využívat, bude vyžadována informační infrastruktura napojená na internet. Tuto infrastrukturu si budeme pronajímat.

Taková infrastruktura musí splňovat tyto základní požadavky:

  • Napojení na síť internet.
  • Prostor pro umístění báze dat na serveru.
  • Uložení a provozování IS na serveru.
  • Zajištění ochrany informací a softwaru.

Dále musí být přímo v knihovně přístup k síti internet(wifi) a několik PC, které budou moct využívat zaměstnanci i návštěvníci knihovny.

7. Prvotní přístup k použití vývojového prostředí

Informační systém bude vzhledem ke své klient-server a komponentové struktuře řešen objektovým přístupem a tím pádem bude potřeba využít i objektové vývojové prostředí s možností tvorby takovýchto aplikací.

Rozhodli jsme se využít platformu firmy Microsoft, .Net Framework v jeho nejnovější verzi(4.0). Pro tuto platformu je naprosto přirozené použít silně objektový jazyk C# a webovou platformu ASP.Net. Nejlepším vývojovým nástrojem pro tyto účely je Microsoft Visual Studio, které lze zdarma využívat v express verzi. Použijeme jeho zatím poslední verzi z roku 2010.

8. Analýza požadavků

Něco jsem tu nadhodil. Dělím požadavky už rovnou do balíčků, pokud sohlasíte pokračujte dál stejně, pokud ne pošlete mail a domluvíme se jak na to. T

Když vás napadne nějaký nefunkční požadavek, tak ho hned napište, ať jich máme alespoň 5.

Funkční(business) požadavky

Nefunkční(softwarové) požadavky

Specifikace funkčních(business) požadavků

Package 1: Správa katalogů

Správa katalogů knih řízena počítačem.

Knihovník dělá veškerou obsluhu správy katalogů na počítači. Při zavedení nové knihy musí vyplnit formulář založení nové knihy do katalogu - ten spočívá ve vyplnění všech důležitých informací o knize, včetně jejího umístění v knihovně. Při změně atributů knihy, například přeřazení do jiného katalogu, či zařazení do více katalogu, musí vyplnit změnový formulář. Stejně tak při odstranění knihy z katalogu, je nutné vyplnit vyřazovací formulář knihy z katalogu. V katalogu knihovník zaznamenává i případná poškození knihy uživatelem, či stav běžného opotřebení. Vždy při vracení knihy, je možné zjistit stav knihy před výpůjčkou.

Zjištění zda je kniha v nějakém katalogu.

Uživatel může zjistit, zda se kniha, kterou poptává vyskytuje v nějakém katalogu knihovny. Uživatel musí být přihlášen do systému a vybrat kriteria podle kterých se má kniha vyhledávat. Systém mu vrátí knihy, které se shodují se zadanými požadavky a ve kterých katalozích se vyskytují.

Informace o změnách v katalozích.

Uživatele se mohou nechat informovat o změnách v katalozích. Zejména jde o nové knihy zařazené do katalogů, který uživatele zajímá, např. každý týden, měsíc, rok si nechají zaslat jaké knihy přibyly/ubyly ve vybraném katalogu/zích.

Package 2: Řízení výpůjček

Rezervovace dokumentu

Systém umožňuje registrovaným čtenářům knihovny předem rezervovat dokumenty určené k absenčnímu půjčování. Rezervací myslíme udělení přednostního práva k vypůjčení tak, aby si žádný jiný uživatel nemohl danou knihu vypůjčit. Rezervaci lze vytvořit libovolně dopředu, platí však omezení počtu rezervovaných dokumentů. Rezervovat lze jak knihu volnou (k dispozici na skladě nebo v regálu), tak i půjčenou. V tomto případě je čtenáři, který má dokument zapůjčen, znemožněno další prodlužování výpůjčky. V systému lze rezervace provádět po vyhledání příslušného záznamu dokumentu.

Půjčování dokumentu

Absenční půjčování dokumentů se provádí osobní návštěvou knihovny čtenářem. Čtenář si buď vyhledá knihu přímo v knihovních regálech nebo je mu doručena ze skladu. Na přepážce knihovny se čtenář nejprve autentizuje. Následně knihovník přečte čárový kód dokumentu a tím identifikuje konkrétní dokument. Na vyžádání lze čtenáři vystavit potvrzení o vypůjčení - výpůjční lístek. V systému se dokument zařadí mezi vypůjčené a zároveň se nastaví nejpozdější datum vrácení (podle nastavení systému - tj. např. 30 dní od data výpůjčky). Dokument lze vypůjčit pouze v případě, že čtenář nemá záporný zůstatek na svém uživatelském účtu. V takovém případě lze vypůjčení provést až po jeho vyrovnání.

Vrácení dokumentu

Při vrácení čtenář fyzciky doručí dokument do knihovny. Zde předá vypůjčený dokument knihovníkovi, který po identifikaci dokumentu a autentizaci čtenáře provede odstranění položky ze seznamu vypůjčených dokumentů čtenáře. Knihovník dále zkontroluje stav dokumentu a porovná jej se stavem uvedeným v záznamu dokumentu. V případě prokazatelného zhoršení fyzického stavu dokumentu může knihovník udělit pokutu, která se ihned promítne do čtenářova účtu (nebude si tak moci půjčovat další dokumenty, dokud účet nevyrovná).

Další možnosti

- storno rezervace - prodloužení výpůjčky - objednávka meziknihovní výpůjčky - poslání upomínky - přesáhnutí doby výpůjčky - zobrazení vypůjčených knih - zobrazení rezervovaných knih

Package 3: Agenda čtenářů

Možnost evidence účtů čtenářů

Systému bude umožňovat, aby každému registrovanému čtenáří místní knihovny byl vytvořen v systému uživatelský účet. Tento účet bude obsahovat základní nacionále o registrované osobě rozšířené o metadata, která budou využívána systémem. Pokud tedy knihovnu navštíví stávající čtenář, který bude chtít zřídit elektronický přístup do systému, nebo nový čtenář, který se bude chtít zaregistrovat, knihovník bude mít možnost založit tomuto čtenáři účet. K tomuto účtu pak budou v systému vázány všechny informace týkající se daného čtenáře.

Správa penalizací za nevrácené výpůjčky

Systém bude ke každému uživatelskému účtu čtenáře evidovat veškérá penále, která se uživatelům vytvoří, pokud nestihnou vrátit vypůjčenou publikaci ve stanovené výpůjční lhůtě. Pokud k takové situaci dojde, systém zaznamená přislušnou penalizační položku, která bude v systému viditelná jak pro čtenáře, tak pro knihovníka, a uživatel bude povinen tuto penalizaci zaplatit. Po zaplacení příslušné částky bude mít knihovník možnost penalizaci označit jako zaplacenou.

Správa stavu uživatelských účtů

Systém umožní u každého učtu čtenáře zaznamenat, zda je účet aktivní, nebo blokovaný. Pokud určitý čtenář nebude dodržovat pravidla určená knihovnou, např. jeho počet penalizací překročí stanovenou mez, nezaplatí do předem určeného termínu čtenářský poplatek apod., bude mít knihovník možnost účet čtenáře zablokovat. Takový čtenář pak nebude mít do systému knihovny přístup. Pokud čtenář napraví své přestupky, např. doplatí příslučná penále, uhradí člensky poplatek apod, knihovník bude moct účet opět zaktivnit.

Package 4: Management skladu

Vyskladnění položek

Proces vyskladnění publikací ze skladu bude řízen pomocí systému. Skladník bude využívat systém pro získání informací o požadavcích na sklad. Systém bude zobrazovat požadavky i umístění požadované publikace. Při vydání publikace bude položka odečtena ze seznamu skladovaných publikací.

Uskladnění položek

Řízení procesu uskladnění publikací bude podporováno systémem. Každá položka určená pro uskladnění bude přidána do seznamu skladu. Systém určí nejvhodnější místo pro uložení.

Vyhledávání položek ve skladu

Systém bude umožňovat vyhledávat položky dle zadaných klíčových slov. Bude umožňovat globální pohled na stav skladu (zaplněná kapacita, uložení různých druhů publikací, apod.).

Specifikace nefunkčních požadavků

Povinná registrace.
Povinné přihlašování.
Systém bude umožňovat přístup přes webové rozhraní.
Bezpečná komunikace prostřednictvím protokolu HTTPS

Pro zajištění ochrany uživatelských přístupových údajů bude aplikace využívat zabezpečenou verzi HTTP protokolu, tedy HTTPS. Důvodem je fakt, že v dnešní době mnoho uživatelů interaguje s webovými aplikacemi prostřednictvím nezabezpečených wifi sítí ve veřejných prostorech, kde je pro útočníka při absenci zabezpečení komunikace jednoduché zachytit uživatelovy přístupové údaje.

Dostupnost aplikace z nejpoužívanějších webových prohlížečů

Aplikace bude přístupná nejen z PC, ale i z mobilních platforem (Andoid, WM, IPhone) a bude kompatibilní se všemi nejpoužívanějšími webovými prohlížeči od následujících verzí: MS Internet Explorer 8, Mozilla Fierfox 3.6, Google Chrome 10, Opera 11, Opera Mini, Opera Mobile, Safari 5.

Spolupráce systému se čtečkami čipů

Všechny položky v knihovně budou opatřeny elektronickým čipem. Pro tyto čipy knihovna bude využívat čtečky čipů k načítání knih do systému. Systém musí být schopen spolupracovat s těmito čtečkami.

9. Mapování funkčních/nefunčních požadavků na případy užití

Tabulky/obrázky mapování požadavků na případy užití

Mapování požadavků z balíčku Správa katalogů na případy užití:

Mapování požadavků z balíčku Správa výpůjček na případy užití:

Mapování požadavků z balíčku Agenda čtenářů na případy užití:

Mapování požadavků z balíčku Management skladu na případy užití:

Diagramy případů užití a jejich scénáře

Necháme ty use-casy každý ve své stránce. Ve výsledném dokumentu to přijde sem.

Poznámky

(J:ara-T:omas-O:ndra-L:ada):

  • J: Neni jednotna terminologie - napr. (na ruznych mistech) položka-dokument-kniha
  • J: Neni jednotna uroven detailu tech aktivity diagramu + odddeleni na swim lanes v jednom diagramu.

- ani jedno by snad nemuselo vadit…

Fáze ROZPRACOVÁNÍ pro Místní knihovnu

1. Diagram tříd

Napište každý seznam tříd, které se týkají vašeho balíčku, nejdříve bych udělal seznam a popis a pak se domluvíme na diagramy, Tom.

Seznam tříd a jejich popisů

Společné pro všechny package

Název třídyStručný popis třídy

Správa katalogů

Název třídyStručný popis třídy
Správce katalogu Třídá pro správu katalogů, umožňuje vytvářet a mazat katalogy.
Katalog Reprezentuje katalog knih/dokumentů.
Položka katalogu Položka katalogu může obsahovat více dokumentů - různé formy (tištěný, elektronický apod.)
Dokument Představuje dílo - knihu, časopis, článek, vědeckou práci apod.
Správce notifikací Třída pro práci s notifikacemi o novinkach pro uživatele.
Notifikace Třída reprezentuje notofikaci pro uživatele, má formu a katalogy o kterých notifikuje.
Čtenář Popis není součástí tohoto balíku.

Řízení výpůjček

Název třídyStručný popis třídy
Čtenář Třída reprezentující osobu, která si v knihovně půjčuje publikace. Seskupuje základní informace o osobě čtenáře.
Rezervace Třída reprezentující rezervaci čtenáře pro konkrétní položku Dokumentu.
Výpůjčka Třída reprezentující výpůjčku čtenáře pro konkrétní položku Dokumentu.
Položka Konkrétní výtisk určitého dokumentu. Může se nacházet ve skladu nebo přímo v regálech knihovny.
Dokument Představuje dílo - knihu, časopis, článek, vědeckou práci apod.
Package Sprava a katalogu, Rizeni vypujcek a Management skladu by mel pouzivat jednotnou terminologii (ja mam: Dokument (kniha, casopis, prace…) ma Polzky (jednotlive kopie Dokumentu)

Agenda čtenářů

Název třídyStručný popis třídy
Čtenář Třída reprezentující osobu, která si v knihovně půjčuje publikace. Seskupuje základní informace o osobě čtenáře.
Čtenářský účet Třída, jejíž instance je vytvořena ke každému čtenáři. Nese informace, které se netýkají přímo osoby čtenáře, ale jsou potřebné pro fungování aplikace - např. stav účtu, datum expirace, seznam penalizací apod.
Penále Čtenářova penalizace za porušení pravidel knihovny. Skládá se z jednotlivých Penalizačních položek.
Penalizační položka Pokuta za konkrétní přestupek, např. nevrácení publikace v termínu.
(Výpůjčka) POUZE POUŽÍVÁM V DIAGRAMU, ALE JEJÍ DEFINICI OČEKÁVÁM V BALÍKU ŘÍZENÍ VÝPŮJČEK

Management skladu

Název třídyStručný popis třídy
Skladník Třída reprezentující osobu, která přebírá a vykonává požadavky na sklad a manuálně přemísťuje skladované položky.
Správce požadavků Třída seskupující hlavní funkcionalitu skladu. Udržuje seznam požadavků a umožňuje s ním pracovat.
Požadavek Tato třída zastupuje veškeré příkazy vznášené na sklad (naskladnění/vyskladnění).
Položka Tato třída zastupuje veškeré skladované knihy, časopisy a jiné dokumenty, které mohou být uskladněny ve skladu. Tato třída udržuje pozici regálu, kde se kniha nachází.
Výpis Tato třída slouží k vytvoření pomocného seznamu položek a jejich umístění ve skladu, který může být vytištěn.
Sklad Tato třída udržuje seznam skladovaných položek.

Diagramy analytických tříd

Diagram tříd balíku Správa katalogů

Diagram tříd balíku Řízení výpůjček

Diagram tříd balíku Agenda čtenářů

Diagram tříd balíku Management skladu

Sekvenční diagramy

Sekvenční diagram akce Odstranění knihy/položky z katalogu (Správa katalogů)

Sekvenční diagram akce Přeřazení knihy/položky do jiného katalogu (Správa katalogů)

Sekvenční diagram akce (Řízení výpůjček)

Sekvenční diagram akce Zadat úhradu penále (Agenda čtenářů)

Sekvenční diagram akce: Vyskladnit položky (Management skladu)

school/fit/mipis/semestralwork.txt · Last modified: 2018-06-21 19:48 (external edit)
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0