1 Informační systémy Teorie Ivana Rábová Ústav informatiky MZLU PEF Tel:2 Informační systém (IS) je komplex informací, lidí, použitých informačních te...
Informační systémy Teorie Ivana Rábová Ústav informatiky MZLU PEF Tel: 545132224 E-mail: [email protected]
Základní pojmy
Informace jsou data, kterým jejich uživatel přisuzuje určitý význam a které uspokojují konkrétní objektivní informační potřebu svého příjemce. Informace tedy vznikají z dat až v okamžiku jejich užití. (Informace představuje vypovídací schopnost dat, vzniká zpracováním dat a je cílem tohoto zpracování.)
„Systém je komplex prvků nacházejících se ve vzájemné interakci”, Bertalanfy. Informační systém (IS) je komplex informací, lidí, použitých informačních technologií, organizace práce, řízení chodu systému (zabezpečuje propojení na prostředí) a metod sloužících ke sběru, přenosu, uchování a dalšímu zpracování dat za účelem tvorby a prezentace informací. IS Je nějakým způsobem organizován a začleněn do organizační struktury podniku, má určité ekonomické charakteristiky a musí být určitým způsobem řízen jak v době jeho budování tak v době jeho fungování.
Základní pojmy
Informační technologie (IT) chápeme jako souhrn technických a programových prostředků včetně jejich metodického a znalostního zázemí, sloužících ke zpracování a poskytování informací. Dnes častěji ICT jako Informační a komunikační technologie. IS/ICT v běžném životě oba pojmy splývají. IS reprezentuje potřebu informací, zatímco ICT představuje uspokojení této potřeby.
Informační strategie je dokument průběžně teoreticky ověřovaný a modifikovaný, jehož úkolem je stálá integrace IS/ICT s globální strategií podniku.
Aplikační software - ASW
Aplikační software (aplikační programové vybavení) - systém, jehož cílem je počítačová podpora částí informačních systémů. – Individuální ASW - specifické aplikační systémy pro individuálního zákazníka (organizaci) dle jeho požadavků. – Technologicky orientovaný ASW - OIS – Věcně orientovaný ASW – TASW (typový ASW)
TASW - modulový princip architektury, vysoká parametrizace, komplexnost a vysoká vnitřní složitost, vnitřní integrace s OIS, integrace datové základny.
Trendy v oblasti IS/ICT
Otevřené systémy, které jsou standardizovány mezinárodními organizacemi a konsorcii (např. W3C, IEEE, ISO, OMG, …), členy takových skupin jsou často velcí a významní hráči na IT trhu (IBM, Microsoft, SUN, Oracle..), je možné odebírat a přidávat další funkce. Třívrstvá architektura ASW (prezentační, aplikační a datová vrstva). Distribuované zpracování založené na klient -server architektuře. Outsourcing - správa IS externí firmou. Jde o zajišťování činností
spojených s informatikou dodavatelsky, tedy formou externích služeb (Outsourcing rozvoje IS, provozu IS a totální outsourcing). Od ISP k ASP (Internet System Providing, Aplication Service Providing), kdy uživatel řeší potřeby automatizace svých činností prostřednictvím pronájmu aplikací jako služby od ASP operátora za poplatek.
Informační strategie Smyslem informační strategie je podpořit realizaci cílů organizace a podnikových procesů pomocí IS/ICT. Vytvářet informační strategii znamená uskutečnit 3 důležité kroky: Analyzovat a zhodnotit současný stav IS/ICT. Definovat cílový stav IS/ICT. Navrhnout postup, jak dosáhnout cílového stavu za současných podmínek. Řešitelem bývá tým pracovníků vedený odpovědným manažerem často za pomoci externích pracovníků a konzultantů. Tým nejen dokument informační strategie vytvoří, ale dále ho udržuje v aktuální podobě, o dokumentu se průběžně komunikuje. Součástí dokumentu bývá architektura IS/ICT.
Informační strategie K čemu slouží informační strategie? Je klíčovým podkladem určujícím rozvoj společnosti v oblasti IS/ICT. Je důležitým zdrojem pro zpracování poptávky pro dodavatele komponent IS/ICT. Definuje vazby mezi projekty IS/ICT a ostatními např. výrobními projekty a inovacemi. Urychluje řešení implementace IS/ICT. Je podkladem pro plánování financí na IS/ICT. Je vhodný dokument při jednáních se strategickými partnery.
Architektura IS/IT - definice
Architektura IS/IT je grafické a písemné vyjádření celkové koncepce IS/IT, která v sobě zahrnuje základní představu o: – struktuře IS v návaznosti na organizační strukturu podniku, – funkcích, které bude IS zabezpečovat v návaznosti na procesy podniku, – provozu a bezpečnosti celého systému, – vazbách na okolí. Architektura IS dále: – Vytváří relativně stabilní rámec řešení IS/IT. – Je významným komunikačním prostředkem mezi tvůrci a vedením podniku. – Zajišťuje stabilitu vývoje IS/IT při rychlém technologickém vývoji IT. – Význam ekonomický - minimalizuje náklady na chybně zadané projekty a rekonstrukce.
Globální a dílčí architektura IS/IT
Globální architektura - hrubý návrh IS/ICT, zachycuje jednotlivé komponenty IS/ICT a jejich vzájemné vazby, obsahuje základní stavební bloky IS/ICT. Dílčí architektury jsou detailnější návrhy IS/ICT. Na základě globální architektury se navrhují tyto dílčí architektury: funkční, procesní, datovou, technologickou, softwarovou, hardwarovou.
Globální architektura
stavební
bloky Externí DB a informační služby
EIS
Zákazníci
Celopodnik.analýzy
Dodavatelé Finance
Obchod
Výroba
Zdroje
MIS
Banky
Správa, lidské zdroje, marketing, legislativa, jakost
Pojišťovny
Finanční řízení: analýzy, plánování, modelování, zdroje Hlavní kniha
Státní správa: - finanční úřad - celnice - ČSÚ - atd.
Pokladna Závazky
Pohledávky
PAM Majetek Controlling MTZ
Prodej
ED I
Sklady Přeprava
S OI
Nákup
TPS Provoz: komplexní řízení zakázek a komplexní řízení výroby
Konstrukce - CAD
TPV - technologie
Kapacitní plánování
Operativní řízení výroby
Dílenské řízení výroby
Služby: - montáže, - servis
TPS
TPS (Transakční a produkční systém) je operativní částí IS, operace jsou závislé na charakteru podniku, nejspecifičtější blok IS. Jeho úkolem je pořizovat a aktualizovat data, udržovat evidence, poskytovat základní přehledy o činnosti podniku, zde se tvoří data pro ostatní vrstvy podnikového IS. Je důkladně vypracován na základě standardizovaných postupů. Je robustní, spolehlivý, s rychlou odezvou, provádí rutinní funkce (k provozu se používají spolehlivé a odzkoušené IT). Datové modely jsou jednoduché.
MIS a EIS
MIS (Management Information System) je blok určený pro řízení podniku na taktické úrovni, jeho funkce jsou podobné pro podniky různých typů. Procesy jsou integrovány do tří linií: (obchodně - logistická (nákup, prodej, MTZ, sklady...), finančně - účetní (účetnictví, majetek, pokladna, mzdy…), průřezová (organizace a správa, personalistika, marketing, legislativa …) EIS (Executive Informaion Systém) je blok určený pro strategické řízení podniku. Získává data z ostatních úrovní IS a z externích zdrojů, data agreguje a vytváří časové řady a vzájemné vazby, trendy, prognózy. Je zaměřen na delší časový úsek do minulosti i budoucnosti. Vyznačuje se specifickými nároky na prezentaci informací, na využití multimédií, na složité algoritmy pro nejrůznější analýzy stavů a prognóz.
OIS
OIS (Office Information System) je blok orientovaný na podporu kancelářských prací a týmové práce.
Hlavním úkolem je vytvářet, modifikovat a přenášet data administrativního charakteru v písemné a grafické podobě.
Zvyšuje produktivitu a výkonnost administrativních pracovníků.
Např. MS OFFICE, editory, DTP (DeskTop Publishing), tabulkové procesory, PowerPoint aplikace, plánovací kalendář, řízení projektů (MS Project), sledování úkolů, sledování pošty (došlá a odešlá), WWW – internet.
EDI (Electronic Data Interchange)
EDI (Electronic Data Interchange) je způsob výměny strukturovaných dat na základě dohodnutých standardů mezi IS jednotlivých obchodních partnerů pomocí elektronických prostředků. Je to jeden z nástrojů provádění el. obchodu. Základní norma u nás - ISO 9735 známá jako UN/EDIFACT (EDI for Administration, Commerce and Transport). Je to standard standardů, zastřešuje standardy pro jednotlivé prům. obory. Pozor EDI není ekomunikace (dokumenty jako příloha emailů).
Architektura IS/ICT a její vrstvy
Na každém IS lze rozlišit 3 vrstvy (vrstva datová, funkční resp. aplikační a prezentační resp. komunikační). – Datová vrstva je odpovědná za integritu a konzistenci dat, zabývá se výběrem, agregací a předzpracováním dat, zajišťuje napojení informačního systému na systém řízení báze dat. – Funkční resp. aplikační vrstva provádí transformace uživatelských dat a zajišťuje výpočty a operace prováděné mezi vstupně výstupními požadavky a daty. – Prezentační resp. komunikační vrstva je odpovědná za prezentaci výsledků informačního systému, zajišťuje vstup požadavků uživatele.
Architektura IS/ICT a její vrstvy
Základní rozdíl mezi následujícími architekturami je v tom, zda jsou výše uvedené 3 vrstvy odděleny do samostatných programů, či nikoliv.
monolitická architektura - všechny vrstvy v rámci jednoho řídícího programu dvouvrstvá architektura - vrstvy jsou rozděleny na dva subjekty, klient – server, lehký a těžký (resp. tenký a tlustý) klient. (Do tenkého klienta zařazujeme pouze prezentační vrstvu. Do tlustého klienta zařazujeme aplikační a prezentační vrstvu). třívrstvá architektura - (typická a nejpoužívanější architektura pro celopodnikové rozlehlé aplikace dynamického charakteru v současnosti).
Výhody třívrstvé architektury
Vyšší pořizovací ale nižší provozní náklady. Jednodušší údržba, každou vrstvu lze udržovat samostatně. Neexistují redundantní údaje a redundantní podniková logika. Jednoduché přizpůsobení potřebám zákazníka. Jednoduchý, rychlý a bezpečný přechod na vyšší verze – vysoká flexibilita. Každá vrstva může být vyvíjena v jiném vývojovém prostředí. Ideální pro tvorbu otevřených, distribuovaných a flexibilních IS.
Pozn. : 3 vrstvy z pohledu WEB – Vrstva databáze – Vrstva aplikační logiky (business logika) – Vrstva Windows klient nebo Browser klient
Klient/server architektura Speciální případ vrstvené architektury. Princip je umožnit více uživatelům pracovat nad společnými daty a rozložit zpracování na více počítačů. Podoby klient/server architektury Distribuovaná prezentace Distribuovaná data Distribuovaná data a aplikační logika Internet a Intranet – Viz obr.
Dílčí architektury
1. Procesní architektura – určuje klíčové externí události, které představují podstatné vazby podniku s okolím, – nástrojem je zvláštní typ digramu, kontextový diagram. 2. Funkční architektura – navazuje na architekturu procesní, – návrh hierarchického rozpadu požadovaných funkcí a služeb IS, – Nástrojem je DFD (Data Flow Diagram) a slovní popis funkcí (minispecifikace).
Dílčí architektury
3. Datová architektura – je návrhem datové základny IS, – nástrojem ERD (Entity Relationship Diagram), – je finalizována návrhem datových souborů a jejich fyzickým uložením. 4. Softwarová architektura – je definována množinou programových jednotek - modulů a vazeb mezi těmito moduly. Vazby jsou dány voláním modulů a předávanými daty.
Dílčí architektury
5. Hardwarová architektura – určuje typy , počty a vzájemné vazby hardwarových komponent. 6. Technologická architektura – spojuje SW, HW a datovou architekturu a definuje způsob zpracování jednotlivých aplikací, vnitřní stavbu aplikací a uživatelské rozhraní aplikací, – typy technologických architektur podle metody zpracování, podle uspořádání PC, podle vrstev.
Data v IS
Data jsou základní součástí IS, tvoří databázovou základnu a pomocí operací (funkcí, programů, SŘBD) jsou pořizována, ukládána a zpracovávána. Typy dat v informačním systému – Aktuální data (popisují současný stav v organizaci, vytváří se z nich aktuální výstupy a sestavy, po uplynutí aktuálního období se přesunou do dat archivních) – Archivní data (nejsou aktuálně platná, ale mají význam pro operativní, taktický a strategický management k tvorbě nejrůznějších analýz) – Prognostická data (jsou data, vzniklá zpracováním plánů, návrhů do budoucna, mohou být srovnávána s aktuálními daty, nebo se jimi stát).
Data v IS
Ukládání dat – Data jsou uložená v potřebné, účelné a uživatelem požadované struktuře. – Data neobsahují duplicitní údaje. – Data neobsahují nadbytečné údaje. – Data neobsahují nesprávné údaje. – Data neobsahují pochybné nebo nedostatečné údaje. – Nejvhodnějším způsobem jak taková data vytvořit, analyzovat, namodelovat je a navrhnout je.
Data v IS
Uchovávání dat – Archivace dat je jejich uchování pro pozdější další zpracování (např. v EIS, historická data slouží pro získávání informací o vývoji reality a poskytují východiska pro trendy, prognózy a plánování). – Zálohování dat je jejich uchování pro případ havárie, nebo systémové chyby (souvisí s bezpečností systému a vyžaduje pořizování bezpečnostních kopií). – Zálohování dat představuje kopírování dat z primárního systému na jiné médium, které je zpravidla pomalejší a levnější, cílem je zabránit ztrátě dat, zálohování není jednorázový výkon ale nekonečný proces. Je nutno pamatovat na poskytnutí rychlého přístupu k datům bez přerušení provozu, nebo jen s minimálními výpadky. Je potřeba správně nastavit politiku a organizační stránku zálohování.
POZOR: Správnou zálohou jsou elektronická data umístěná kdekoliv mimo původní objekt (ne na stejném disku, ne na jiném disku stejného PC). Zálohou jsou data rychle dostupná (ne ve vzdálené lokalitě nebo v bankovním trezoru).
Úvod do teorie databází (DB)
Cílem předmětu Databázové systémy (DBS) je teorie a praxe v oblasti hromadného zpracování dat.
Základní pojmy zde jsou věta, atribut, doména
Věta (logická jednotka dat), atribut (adresovatelná část věty), doména (množina povolených hodnot). Jaké operace lze nad danou množinou dat provádět?
Vkládání a prohlížení údajů Úpravy údajů Třídění Výběr, prohledávání údajů (získání věty ze souboru do vnitřní paměti) Matematické a statistické operace Výstupy (na obrazovku, tiskárnu) Automatické provádění operací (makra, spouště, procedury..)
Základní definice DB
Databázi chápeme jako úložiště dat, která jsou uložena a zpracovávána nezávisle na aplikačních programech. Databáze zapouzdřují jednak vlastní data, ale i vztahy mezi jednotlivými prvky a objekty v databázi, schémata popisující struktury dat a integritní omezení. Databází rozumíme logicky uspořádanou množinu dat, skládající se ze samotných dat a jejich metadat. Relační databáze (současná nejčastější forma a naše hlavní téma) se někdy nazývá také OLTP databáze, nebo OLTP technologie (On Line Transaction Processing), nebo operační databáze. Teorie stará přes 40 let Zakladatel E. F. Codd (IBM)
Databázový systém (DBS)
Databázový systém je spojení databáze (DB) a systému řízení dat (SŘBD). Databáze je strukturovaná množina homogenních souborů. Systém řízení báze dat je integrovaný softwarový prostředek řídící bázi dat.
Databázový systém Databáze
Systém řízení báze dat
Charakteristiky DBS Každý DBS musí obsahovat nástroje pro:
Vytvoření, vkládání, aktualizaci a rušení dat Definici struktury Nezávislost údajů na aplikaci Ochrana integrity (integrita je stav, kdy údaje jsou přístupné uživatelům i aplikacím a platí vztahy a pravidla pro sémantickou správnost dat) Odolnost proti chybám
Případně nástroje pro:
Zálohování údajů Sdílení údajů jak aplikacemi tak uživateli Možnost utajení údajů Možnost náhodného přístupu
Relační model dat Relační model definuje způsob, jakým je možné data reprezentovat (strukturu dat), způsoby jejich ochrany (neboli integritu dat), a dále operace, které můžeme nad daty provádět (manipulace s daty). Tento model implementuje databázový stroj Microsoft SQL Server. Cílem dobrého návrhu je DB, která:
Podporuje plánované i neplánované získávání informace. Obsahuje správné a efektivně navržené tabulky. Je zabezpečena integrita na úrovni tabulek a vztahů. Podporuje podniková pravidla. Je ji možné rozšiřovat.
Bezpečnost informačních systémů
Jaký stupeň bezpečnostních požadavků má být na IS/ICT aplikován, definuje bezpečnostní politika. Je to soubor zásad a pravidel s jejíž pomocí organizace chrání svá aktiva (data, aplikace, technologie, osoby).
Bezpečnostní politika musí definovat správu IS a odpovědné osoby a skupiny, týká se všech zdrojů v organizaci (HW, SW, data, lidé), musí být dokumentována, prosazována a schvalována nejvyšším managementem podniku, je součástí návrhu IS. Cílem bezpečnostní politiky je zajištění důvěrnosti, integrity a dostupnosti systému jako celku.
Bezpečnost informačních systémů
Oblast obsahové náplně Oblast designu Hardwarové a softwarové požadavky Bezpečnost, uživatelská oprávnění zálohování
možnost publikování dat všech požadovaných formátů, tzn. nejen textové zprávy, seznamy, tabulky, ale např. také dokumenty PDF, audio a video soubory, XML formuláře apod., možnost spolupráce více lidí na tvorbě jednotlivých dokumentů a projektů,
zda systém zvládá verzování dokumentů, informovanost o stavu a modifikaci vložených dokumentů, zda existuje možnost schvalování vkládaných příspěvků pověřeným uživatelem, zda systém umožňuje fulltextové vyhledávání v dokumentech, příp. vyhledávání relevantních dokumentů pomocí klíčových slov, zda je zajištěna možnost omezení doby platnosti vkládaných příspěvků a dokumentů bez nutnosti jejich manuálního rušení.
jaké jsou možnosti při návrhu grafického provedení jednotlivých částí webu, využití různých motivů, předpřipravených šablon, způsob řešení navigace, nakolik je možno přizpůsobovat a graficky odlišit již připravené návrhy stránek a jejich jednotlivých částí podle požadavků tvůrců portálu,
je-li možno, aby si každý uživatel portálu mohl přizpůsobit vzhled stránek podle sebe, nakolik umožňuje systém využívání šablon, ať už dodávaných, zveřejněných na internetu, příp. umožňuje-li tvorbu vlastní šablony, jak je řešena přístupnost webu.
Jak je systém náročný na hardwarové vybavení, má škola k dispozici dostatečně výkonný server, který zajistí bezproblémový provoz zvolené aplikace, nebo musí investovat do nákupu výkonnějšího hardwaru? Jaké jsou softwarové nároky aplikace, pod jakým operačním systémem je možno aplikaci provozovat, je třeba nakoupit další software nutný k provozu (webový server, databázový stroj, skriptovací jazyk apod.)? Jaké jsou nároky na hardware a software uživatelů portálu, vyhovuje stávající technika a softwarové vybavení?
možnost přístupu z portálu k důležitým aplikacím, jako např. programy na evidenci žáků, testovací programy, výukové programy, kancelářské aplikace apod., možnost nastavení příchozích a odchozích emailů k odesílání oznámení uživatelům, ukládání dokumentů e-mailem, zapojování se do diskusí, možnost implementace e-learningového systému pro žáky.
jakým způsobem je zajištěno přidělování uživatelských práv k webu a jeho částem, vytváření skupin uživatelů, využívá-li systém princip dědičnosti pro jednotlivé weby a části webů, existuje-li možnost přidělování oprávnění k dokumentům, seznamům, knihovnám na požádání, jak je v systému realizováno zálohování důležitých dat, je-li zajištěna implementace antivirové ochrany, je-li možno kontrolovat dokumenty při odesílání nebo stahování.
HTML – HyperText Markup Language, jednoduchý jazyk pro tvorbu webu CSS – Cascading Style Sheets, jazyk pro popis způsobu zobrazení stránek JavaScript – multiplatformní, objektově orientovaný skriptovací jazyk Flash – vektorový grafický program používaný pro tvorbu (převážně internetových) interaktivních animací, prezentací a her PHP – Hypertext Preprocessor, skriptovací programovací jazyk, určený především pro programování dynamických internetových stránek
ASP.NET – je součást .NET Frameworku firmy Microsoft pro tvorbu webových aplikací a služeb AJAX – technologie pro vývoj webových aplikací. Web 2.0 – další vývojové stadium webu a jeho aplikací MySQL – databázový systém, je bezplatně licencován PostgreSQL – je relačním databázovým systémem Webhosting – pronájem prostoru pro webové stránky na cizím serveru Internetová doména – jednoznačné jméno (identifikátor) počítače nebo počítačové sítě, které jsou připojené do internetu
Představení školy (zaměření, nabídka povinných a volitelných předmětů, kroužků, pedagogické zázemí, materiální zabezpečení, exteriér, interiér atd.). Informovanost (informace pro rodiče organizace školního roku, kontakty, sdělení atd.). Komunikativnost (komunikace s žáky a rodiči – diskusní fóra, soutěže, ankety a jejich následná zpětná vazba). Úřední deska (seznámení rodičů a veřejnosti s dokumenty školy).
Výsledky studia (informace o výsledcích výchovně-vzdělávacího procesu školy). Výměna pedagogických zkušeností (někteří učitelé jsou ochotni vystavovat své vlastní přípravy do konkrétních předmětů na školním webu). Spolupráce (může se jednat o spolupráci s partnerskými školami, školami ze zahraničí atd.). Přístup ke klasifikaci (hodnocení práce dětí, plnění úkolů, kontrola absence, změny v suplování atd).
Práce žáků (vystavení prací žáků v nejrůznějších podobách). Školní události (představení uskutečněných školních akcí a účast žáků na nich).
Rodiče Žáci Zaměstnanci školy Veřejnost Sponzoři Jiné školy Zřizovatel
Webové stránky Individuální tvorba webu – nutné znalosti Zadání tvorby webu profesionálům Redakční systémy Volně šiřitelné Komerční řešení
Webové standardy (XHTML, CSS), validní web Použitelnost (snadná orientace, uspořádání a ovládání) Přístupnost (http://pristupnost.nawebu.cz) Optimalizace pro vyhledávače Dodržení legislativy (autorský zákon, ochrana soukromí, svobodný přístup k informacím)
Logo školy Přesný název školy a adresa Kontaktní informace Vyhledávání Odkaz na cizojazyčnou verzi Datum poslední aktualizace Seznam odkazů na rubriky Mapa webu Další informace
1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Výsledky výchovně-vzdělávacího procesu Školní řád Studentské práce Výstupy školních projektů Zprávy z akcí školy Studijní materiály E-learning Informace o studiu, propagace Odkazy na další stránky (zřizovatel apod.) Úspěchy školy
11. ICT plán 12. Diskuzní fórum 13. Virtuální prohlídka školy 14. Školní jídelna 15. Přístup k e-mailu 16. Školní dokumenty (obvykle ke stažení) 17. Školní kronika a historie školy 18. Školní časopis 19. Projekty (např. ESF) 20. Další rubriky dle zaměření školy
Prezentace
vznikla s podporou OP Vzdělávání pro konkurenceschopnost CZ.1.07/1.3.00/19.0016 Inovace studia k výkonu specializovaných činností ‒ koordinace v oblasti ICT
Informační systém školy Milan Šorm
Informace vs. data • Informace představuje sdělitelnou novou skutečnost, tedy obsah zprávy či sdělení, která je pro příjemce dosud neznámý • Data představují uchovatelné údaje reprezentující sdělované informace, jedná se o zaznamenání nějaké existující skutečnosti či události; řeší formu a úplnost
Historický exkurz • • • • • • • •
Předávání informace – znalosti Informace – konkurenční výhoda Komplexnost, množství Existence kolektivní paměti lidstva Způsoby uchování paměti Historická i novodobá média Soudobé zahlcení daty Informační (znalostní) společnost
Informační systém • Organizovaný způsob uchovávání a vyvolávání informací • Ne nutně musí být elektronický • Zahrnuje osoby, technologické prostředky a metody • Informační systém je nástrojem pro interpretaci zpracovaných dat • Syntaxe sémantika
Horizontální struktura IS
Výroba
Logistika
Obchod
Finance
Personalistika
Úrovně řízení Strategické
Taktické
Operativní
Vertikální struktura IS EIS
DSS
MIS
OAS
TPS
Horiz. – vert. struktura Školní manažerský systém Provozní IS
Výuka
Docházka
E-learning
Hospodářský IS
Stravování
Zkoušení
Sklad
Kuchyně
Knihovna
Výpůjčky
Účetnictví
Finanční
Mzdové
Personalistika
Architektura IS
Prezentační Aplikační
Datová
Desktopové aplikace Tlustý klient (prezentační + aplikační) Datová
Webové aplikace
Tenký klient Datová + aplikační (server)
Modularita IS • • • • • • •
Udržitelnost kódu Nepružnost monolitických IS Snaha o maximální modularizaci Snaha o minimální množství vazeb Snaha o typová řešení Snaha o parametrizaci Snaha o standardizaci komunikace
Coupling and cohesion • Provázanost (coupling) • co se při změně modifikuje souběžně • jak velký je minimální zásah? • chceme snížit provázanost kódu
• Koheze (cohesion) • co je zahrnuto do jednoho modulu • nejsou funkce jednoho celku ve více modulech? • chceme zvýšit kohezi funkčních celků
Vývojová paradigmata • Imperativní paradigma • zabývá se popisem postupů
• Deklarativní paradigma • naopak se zabývá popisem cílů • speciální: logické, funkcionální
každý modul komunikuje s každým vysoká provázanost kódu obtížně integrovatelné v čase statické
• Systémy s prostředníkem • standardizace rozhraní • vysoká míra koheze, dynamické IS • adaptabilní, integrovatelné
Rozhraní • Přímá volání API • tzv. knihovní moduly • nízká koheze, vysoká provázanost
• Služební API – SOA prostředí • zapouzdřené, veřejný protokol • funkcionální nebo objektová API • standardizace přístupu k API • RPC, CORBA, SOAP, XOAP, OAI-PMH … • XML-over-POST, WCF, JNI, REST …
Prostředníci • Převažující systémy • jeden ze systémů funkčně převažuje • přejímá tuto roli, integrační člen
• Mrtvá schránka • komunikační fronta (např. databáze) • nízká reakční doba (není online)
• Specializovaní prostředníci • routery zpráv – např. ESB • flexibilní nástroje na konverze • Podpora auditování infrastruktury
Životní cyklus IS • • • • • • • •
Zadání (business requirements) Analýza (business analysis) Návrh (technical design) Implementace Testování (QA, testing) Nasazení (deployment) Provoz a podpora (support) Ukončení nebo reinkarnace
Pořízení IS • Nákup typového řešení • Nasazení typového řešení • parametrizace, adaptace výstupů
• Přizpůsobení typového řešení • programové přizpůsobení
• Vývoj software na míru • outsourcing • bodyshopping • in-house development
Metoda rychlého nasazení • Metodika D-D-D • To DESIGN • Sumace požadavků, hrubá představa
• To DEVELOP • Vývoj pomocí prototypování
• To DEPLOY • Postupné nasazování hotových celků do produkčního prostředí, obvykle alespoň s minimálním QA procesem
Prototypování • Koncový uživatel není metodický, nerozumí IT hantýrce, je netrpělivý • Vytváříme/nasazujeme systém po částech a přizpůsobujeme se aktuálním potřebám/zpětné vazbě • Často řízeno daty nebo vizuální představou • Wireframes, generovaná rozhraní
Agilní metodiky vývoje • Vývoj musí být projektově řízen • V opačném případě vzniká chaos • Prototypování a krátký cyklus dodávek vyžaduje změnu metodiky • Agilní metodiky se soustředí na výsledek, řeší problémy per-partes a zkracují obrátkový cyklus vývoje • Nejznámější metodikou je SCRUM
Požadavky na systém • Funkční požadavky • co má systém umět za funkce • prostý seznam požadavků + autor • obchodní terminologie (ne technická)
• Nefunkční požadavky (NFR) • obecné požadavky na vlastnosti • předepsaná technologická omezení • požadavky na rychlost, odezvu, vizuální projevy, překlad, QA apod.
Analýza systému • Detailní rozbor funkčních požadavků – pochopení funkcí • Hledání úspěšných scénářů použití (tzv. use case – případy užití) • Identifikace uživatelů – aktorů • Alternativní scénáře – jiné přístupy, neúspěšné scénáře • Využívá jazyka UML pro zápis
Návrh systému • Technická analýza systému se označuje jako návrh • Z analýzy identifikuje jednotlivé komponenty a vztahy mezi nimi • Na základě rozsahu a charakteru systému + nefunkční požadavky = volba technického řešení • Je podkladem pro práci vývoje, testování a týmu nasazení
Vývoj (implementace) • Ne vždy musí jít o tvorbu programového zdrojového kódu • Dnes často pouze parametrizace (přizpůsobení) existujícího kódu • Mnoho kódu (např. rozhraní, vizuální podoba) lze generovat • Při vývoji vzniká programátorská dokumentace (literární programování nebo ručně)
QA + testování • Žádný modul nesmí být nasazen bez kontroly nezávislým QA týmem • Metodika testování záleží na metodice vývoje (TDD / ad hoc) • Testování lze často automatizovat (unit testy, coded UI, load testy) • Ruční testování je nezastupitelné (aplikace pro lidi musí testovat lidi) • Kontrola též nefunkčních požadavků • Zákaznické akceptační testy (UAT)
Nasazení • Specifický proces distribuce kódu a dat ke koncovému zákazníkovi • Postupně klesá význam instalace • Přechod k chápání aplikací jako „služby“ – cloud, PaaS/SaaS • Výrazně zjednodušuje problémy aktualizací a kompatibility HW • Cloud podporuje prototypování
Provoz a podpora • Chyby existují v každém software • Většinu chyb však způsobuje lidský faktor (nepochopení, neznalost, úmysl, nevhodné použití software) • Je nutné zajistit podporu (osobně, telefon, email, service/helpdesk) • Je důležité zajistit zpětnou vazbu k vývoji pro budoucí nasazení • Nezastupitelná role eskalace
Reinkarnace • Každý software morálně stárne • Běžný cyklus obnovy 5-7 let • Možnost reinkarnace na novou verzi stejného systému nebo na zcela nový systém • Uživatelé jsou poučeni předchozí verzí – může dojít i k negativnímu přenosu návyků do nové verze • Jde o řízený proces (ne nahodilý)
Role při vývoji • • • • • • • • •
Vedoucí týmu Produktový manažer Projektový manažer Architekt řešení Analytik (+ specialista na doménu) Programátor Tester (programátor testů, QA) Dokumentarista, grafik, typograf Systémový administrátor (technik)
Typologie systémů • ERP systémy • TPS a MIS v oblasti výroby, logistiky, prodeje, financí, správy majetku aj. • Př. SAP, Dynamics, Oracle App, Infor
• CRM systémy • TPS a MIS v oblasti podpory a péče o zákazníky a produktové portfolio • Př. Salesforce, Siebel, Amdocs
• Dnes často kombinované (UIS)
Typologie systémů • RTS (real time systémy)/CIM • TPS nejnižší úrovně • Zajištění běhu výroby na úrovni výrobní linky nebo správy zařízení • Př. CAD/CAM systémy, CAE, NC
• BI řešení, data warehouse, KB • MIS/DSS/EIS řešení nad ERP/CRM • Agreguje, historizuje a prezentuje data, často užívá OLAP techniky
Typologie systémů • OAS – podpora administrativních procesů (kancelářské procesy) • DMS/CMS (dokumenty, obsah) • Workflow (schvalování, spisy) • Komunikace (zejména hromadná)
• Výpočetní systémy • Příprava podkladů pro RTS/CAD/CAM • Vyhodnocování výsledků RTS zpětně • Př. TIS ČEZ, SIS ČEZ
Datová úložiště • Relační databáze (SQL) • př. Oracle, MS SQL, MySQL …
• Objektové databáze • př. Caché, Poet, Objectivity, Versant
• Distribuované relační databáze • př. MySQL Cluster, Amazon RDS
• Klíčové (párové) databáze • př. Amazon SimpleDB, CouchDB, Google database
Rozsáhlá binární data • Problematika uložení rozsáhlých dat (multimédia, dokumenty, fotografie, zvukové nahrávky) • Obvykle analogie klíčových databází, ale nad síťovými diskovými úložištěmi • Data jsou obvykle deduplikována (zmnožena) pro případ ztráty • př. BFILE, WebDAV, Amazon S3
Vlastní experimenty • Není nutné vlastnit infrastrukturu – cloud zajistí výkon na požádání • Cloud dodává platformu pro všechny vrstvy i integraci IS • Na základě PaaS budujeme SaaS • Příklady: • Amazon Web Services • Microsoft Azure
• Platí se za využití (pay as you go)
Malý IS – co potřebujeme • • • • • •
HW a operační systém (Linux) Databázi (MySQL – RDS) Aplikační server (např. Apache) Programovací jazyk (např. PHP) Výstupní formátování (např. HTML) Při větší instalaci load balancer – např. Amazon ELB) a CDN síť (Amazon CloudFront, Akamai) • Framework pro vývoj (Nette)
CMS (Content Management System) Aplikace, která spravuje data a informace různého charakteru a obsahu a stará se o jejich efektivní využití a zobrazení.
Mambo – http://www.mambodrom.cz/ Výkonný redakční systém používaný na jednoduchých stránkách i firemních webech. Má řadu doplňků a možnost technické podpory.
jeden z nejvýkonnějších redakčních systémů vůbec. Jeho oblíbenost je dána spolehlivostí, snadností údržby a množstvím doplňků ke stažení. Je to CMS založené na CMS Mambo. Vzniklo z důvodu neshody v autorských právech CMS Mambo. Je vydána pod licencí GNU GPL. Oficiální stránka naleznete na www.joomla.org, http://www.joomlaportal.cz/
je jedním z neoblíbenějších redakčních systémů a to díky velice „inteligentní“ a jednoduché instalaci, výborné lokalizaci do českého jazyka a široké komunitě (i českých) uživatelů. Vhodný i pro začátečníky.
redakční systém určený pro psaní osobních či firemních weblogů. Důraz je kladen na jednoduchost a použitelnost, pozadu nezůstává ani estetická stránka.
je profesionální, propracovaný a funkcemi nabitý redakční systém pro blog.
Podporuje moderní nástroje pro vytváření článků (Textile, Texy), nabízí kvalitní podporu v českém jazyce, velké množství stáhnutelných doplňků. přehledná administrace.
redakční systém českého autora, jehož hlavními rysy jsou jednoduchost (i v kódu) a výkonnost. Pomocí inteligentní správy uživatelů můžete regulovat přístup k jednotlivým instalovaným modulům.
je profesionální redakční systém na bázi PHPNuke českého autora. Důraz je kladen na bezpečnost, spolehlivost, jeho oblíbenost je zapříčiněna také výbornou kompatibilitou s dalšími opensource systémy a spoustou dostupných rozšíření.
http://www.zshustopece.cz/
Oficiální web: http://zikula.org/
je profesionální redakční systém oblíbený zejména díky snadné integraci doplňků a širokému výběru elegantních skinů. Výhodou je srozumitelnost kódu, výborná technická podpora a intuitivní instalace.
http://cms4u.cz/
systém pro správu obsahu, redakční systém, intranet, extranet, může sloužit jako sdílený prostor pro dokumenty, jako firemní webové stránky nebo jako osobní stránky nebo blog, široké použití, všechny funkce zvládá bez jakýchkoli přídavných modulů, kterými lze jeho možnosti dále rozšířit, vícejazyčnost uživatelského rozhraní (ve standardní instalaci dostupné ve více jak 35ti jazycích).
http://www.spstrutnov.cz
Weby Google (v angličtině Google Sites) mají české rozhraní. Nástroj pro tvorbu strukturovaných wiki, pro obyčejného uživatele jde hlavně o jednoduchý způsob, jak si zdarma založit (a spravovat) vlastní web. Přednáška
K editaci není třeba znát HTML ani žádnou jinou syntaxi, vše je WYSIWYG.
Weby mohou být veřejné i neveřejné. K neveřejným Webům nelze přistupovat, pokud nemáte oprávnění. Veřejné Weby se chovají jako obyčejné internetové stránky.
Na Webu může spolupracovat více lidí.
Weby jsou velmi flexibilní i co do velikosti: umožňují vše od jednoduché stránky až po složitě strukturovaný intranet.
Rozhraní je velmi intuitivní: při prohlížení Webu a s dostatečným oprávněním stačí kliknout na tlačítko „Upravit stránku“ a obsah se okamžitě stane editovatelným. Samotná editace připomíná práci v textovém editoru.
Weby jsou propojeny s dalšími službami Google – je jednoduché vkládat YouTube videa, Picasa alba, Dokumenty Google, Kalendáře, Tabulky, formuláře, miniaplikace a samozřejmě obrázky.
Vždy je možné se vrátit k dřívějším verzím stránek – zcela v duchu wiki filozofie.
Výsledná stránka může fungovat na vlastní doméně (www.priklad.cz).
S Weby odpadá starost o updatování softwaru, záplatování bezpečnostních děr atd., se kterými se potýkají dnešní majitelé malých webů.
Pro řešení redakčním systémem
Nejpoužívanější moduly: Psaní a editace článků Diskuzní fórum Anketa nebo hlasování Aktualita Náhodný text (citát dne, …) Reklama Fulltextové vyhledávání Chat Převzaté zprávy Fotogalerie E-learning Vzhled a jeho úprava (obvykle pomocí css stylu v různých variantách)
Na internetu jsou ke stažení různé skripty pro fóra, nejpoužívanějšími jsou phpBB a phpBB2 (modifikace předchozího phpBB a redakční systém). Simple Machines Forum: množství funkcí, jednoduché na údržbu, výběr vzhledu. Další možnost: PunBB, podporuje několik druhů databází.
Systém uživatelských rolí:
Redaktor Šéfredaktor Administrátor Jazykový korektor Grafik Operátor Moderátor diskuzního fóra Další
Služba Microsoft Windows SharePoint Services (dále jen WSS), pro uživatele síťového operačního systému Windows Server 2003 je šířen zdarma.
Autoevaluační internetový asistent. Na adrese http://ondrej.neumajer.cz/skolniweb/aea/ Umožňuje: posoudit kvalitu konkrétního školního webu podle
několika předem nadefinovaných kritérií. Postupně ve 20 krocích se pomocí průvodce hodnotí všechny klady a zápory konkrétního webu.
obsah a poskytované informace, publikování na internetu, webdesign, bezpečnost a legislativa. Za splnění každého kriteria lze získat maximálně 5 bodů.
Mimo dříve uvedených: NEUMAJER, Ondřej. Budujeme školní web. Brno:
Computer Press, 2005. 130 s. ISBN 80-251-0612-8. STRAKA, Milan. Zavádění webového portálu na základní škole. Brno, 2008. 37 s. Závěrečná práce studia ICTK. MZLU Brno. Opensourcehosting.cz [online]. 2010 [cit. 2011-10-20]. Dostupné z WWW: .
Prezentace
vznikla s podporou OP Vzdělávání pro konkurenceschopnost CZ.1.07/1.3.00/19.0016 Inovace studia k výkonu specializovaných činností ‒ koordinace v oblasti ICT
Kaskádové styly IS a webové prezentace cvičení
Proč používat CSS? • Řadu grafických charakteristik dokumentu lze nastavit pomocí parametrů jednotlivých tagů a tagu , je to však velmi nepraktické – musíme tak činit pro každý element zvlášť – místo struktury HTML dokumentu se začíná hledět na grafický vzhled
• Lepší možnost dává použití kaskádových stylů (CSS) – lze definovat vzhled jednotně a v celém dokumentu, vizuální podoba dokumentu je definována odděleně
Základ práce s CSS • Styly se skládají z pravidel selektor {vlastnost:hodnota; …}
• Selektorem je nejčastěji jméno tagu • Pro každý tag jsou platné pouze některé vlastnosti H1 {color:red; font-family:sans-serif}
• Jeden dokument může obsahovat několik doplňujících se stylů, jeden styl lze použít ve více dokumentech
Připojení definic • Přímo k dané značce – mírně odporuje filozofii kaskádových stylů, nedoporučuje se
• V určitém místě dokumentu – používá se pro definice, které jsou specifické pro daný dokument a nepředpokládá se jejich použití v jiném dokumentu <style type="text/css"> definice_stylu
Připojení definic • V externím souboru – výhodné pro uplatnění stejných definic ve více dokumentech
Definování tříd • Pokud jako selektor použijeme jméno tagu, pak se změny projeví u všech výskytů tohoto tagu v dokumentu • Pokud chceme změny promítnout je u některých výskytů, použijeme jako selektor třídu (název selektoru začíná .) • Příklad .cerveny {color:red}
Definování tříd • Pokud před jméno třídy doplníme i jméno tagu, omezíme použití třídy pouze na tento tag P.cerveny {color:red}
• HTML tag může používat jen jednu třídu, pokud jich specifikujeme více, je použita pouze ta první • U jmen tříd záleží na velikosti písmen • Využití speciálních tagů
a <span>
Identifikátory • Můžeme vytvářet i styly pojmenované individuálně, většinou pro upřesnění stylistických vyjádření v rámci třídy • HTML element může obsahovat jak specifikaci třídy, tak identifikátor značky • Při definování identifikátoru používáme jako selektor jeho jméno začínající # #tucny {font-weight:bold}
Kontextové selektory • Můžeme specifikovat kritéria tak, že vyhovují pouze pro selektor, který je použit uvnitř jiného selektoru UL LI {color:red}
• V definici stylů lze používat komentáře /* komentář */
• Většina styly nadefinovaných vlastností se dědí z nadřazených elementů (lze je samozřejmě předefinovat)
Kombinace třídy a identifikátoru značky P {font-size:12px} .odstavec {color:black} #spec {text-decoration:underline}
Klasický odstavec 12 px
12 px, černě
12 px, podtržený
vše
Skládání stylů • Pokud je na jeden element použito více stylů, jsou aplikovány podle těchto pravidel a v tomto pořadí – lokálně definované styly – styly definované pomocí <style> – externě definované styly (z nich ten naposledy definovaný)
• Lokální styly přepisují hodnoty zděděné od rodičů, specifičtější styl přepisuje obecnější (identifikátor značky přepíše třídu)
Jednotky • Délkové – skládají se z čísla a jednotky – relativní – em, ex, px – absolutní – pt, pc, in, mm, cm
• Barvy – – – –
jméno barvy – pouze pro 16 základních #rrggbb – hodnoty jsou 0–F rgb(r,g,b) – hodnoty jsou 0–255 rgb(r%,g%,b%) – hodnoty jsou 0–100
Nastavitelné parametry (I) • Rodina písma font-family Arial|Tahoma|Verdana|…
horní margin-top TEXT dolní margin-bottom pravý margin-right levý margin-left padding margin • Vnitřní okraje padding – horní padding-top – dolní padding-bottom – pravý padding-right – levý padding-left • Šířka rámečku border-top-width thin|medium|thick|délka
Dynamické dokumenty IS a webová prezentace cvičení
Dynamický × statický dokument • Statický dokument – vzhled je neměnný, uživatel si nemůže volit zobrazované informace • Dynamický dokument – tvar a prezentované informace může uživatel ovlivnit svojí činností • Dynamický dokument na straně klienta – vytvoření a modifikaci zajišťuje prohlížeč (klient) • Dynamický dokument na straně serveru – vytvořen programem, který běží na vzdáleném stroji (různé technologie – vsuvky, PHP, CGI...) • Generovaný dokument – vytvořen počítačem
Vlastnosti dynamických dokumentů na straně serveru • Schopnost řešení složitých a rozsáhlých úloh, používání souborového systému a výkonu serveru • Nízká závislost na klientovi (prohlížeči) a jeho schopnostech, klient pouze stránku zobrazuje • Veškeré požadavky a data se včetně odpovědí přenášejí přes síťové spojení (protokol TCP) • Nelze reagovat na události vzniklé u klienta (pohyb myši, stisk klávesy apod.) – to řeší dynamické dokumenty na straně klienta
Řešení dynamických dokumentů • Technologie PHP – (Pretty Human Pages, Rasmus Lerdorf), jazyk integrovaný do HTML ...
Nadpis
příkazy PHP... ?>... • Modul serveru – například PHP, Perl. Rychlejší odezva • Obslužný program na rozhraní CGI – možnost práce v libovolném jazyce, obecné, avšak někdy časově a výpočetně náročné
Obslužný program na rozhraní CGI – základní princip CGI
URL + data
klient (prohlížeč)
HTML
data
WWW server
HTML obslužný program
data
• CGI rozhraní (Common Gateway Interface) – definice způsobu komunikace WWW serveru s obslužnou aplikací (programem)
Zpracování požadavku • URL dynamického dokumentu na straně serveru se liší v datech, zapsaných za otazníkem http://akela.mendelu.cz/~xyz/skript.cgi?data
• Server podle rozšíření .cgi pozná, že se jedná o rozhraní CGI, a předá mu data z URL • Obslužný program zpracuje data a na výstup pošle výsledný text (vygenerovaný dokument) • Server WWW zašle vytvořený dokument klientovi, který ho zobrazí stejným způsobem jako statické dokumenty
Tvar dat předávaných v URL • Metoda předání dat (viz formuláře HTML) 1.GET – data předána viditelně v URL 2.POST – data předána skrytě v těle požadavku …/skript.cgi?prvni=neco&druhy=neco
Kódování URL • Mezera se v URL zobrazí jako + (někdy %20) • Znaky, které v URL něco znamenají, se kódují jako %cc, kde cc jsou dvě šestnáctkové číslice ordinálního čísla znaku. (Unicode %cccc) • Příklady value=”Jan Kos” …skript.cgi?jmeno=Jan+Kos value=”Tomáš Hála” …skript.cgi?jmeno=Tom%E1%9A+H%E1la
Proměnné prostředí • • • • •
QUERY_STRING – obsahuje data předaná v URL REQUEST_METHOD – metoda předání dat CONTENT_TYPE – typ dotazovaných dat REMOTE_ADDR – IP adresa klienta …a mnohé další (nejdůležitější jsou první dvě)
Předávání dat na rozhraní CGI • Vstup dat do obslužného programu – z proměnné QUERY_STRING v případě, že jsou data předávána metodou GET – ze standardního vstupu v případě, že jsou data předávána metodou POST • Výstup dat z obslužného programu
– výpis na standardní výstup
Statické dokumenty v jazyce HTML IS a webové prezentace cvičení
Služba WWW HW
uživatelská stanice
server dotaz (URL)
odpověď (HTML) WWW klient (např. Mozilla Firefox, Google Chrome, ...)
WWW server (např. Apache) SW
Uniform Resource Locator • URL – jednoznačný popis zdroje v Internetu • Obecný tvar protokol://uživatel@server/ soubor?dotaz#fragment • Příklady – – – – –
Jazyk HTML • HTML = HyperText Markup Language • Relativně jednoduchý značkovací jazyk pro tvorbu dokumentů využívaných službou WWW (World Wide Web) • Dokument v jazyce HTML je tvořen čistým textem a formátovacími značkami, které určují podobu textu při zobrazení na obrazovce
Vlastnosti HTML • Libovolný počet mezer a prázdných řádků se chápe jako jedna mezislovní mezera (analogie například s TEXem) • Dokument v jazyce HTML je čistě textový soubor – nemůže tedy být napaden virem • K pořízení dokumentu v HTML lze využít libovolný editor, který umožňuje ukládat čistý text
Dělení dokumentů • Statický dokument – vzhled je v čase neměnný, uživatel jej svým prohlížečem nemůže nijak ovlivňovat, tj. nemůže volit informace, které jsou zde prezentovány • Dynamický dokument – tvar dokumentu a prezentované informace může uživatel ovlivnit svojí činností – na straně serveru – na straně klienta
Struktura HTML dokumentu • Odkaz na definiční soubor
• Značka pro HTML dokument • Záhlaví dokumentu (neviditelná část) • Tělo dokumentu (viditelná část)
Značky v HTML • Příkazy pro prohlížeč, kterými se popisuje úprava nebo struktura části dokumentu • K popisu určitých vlastností nebo zaznamenání určitých informací slouží parametry značek • Syntax – značka <strong> – značka s parametrem – značka s parametrem vyjadřujícím stavovou informaci
Dělení HTML značek • Podle významu – vizuální – určují, jak bude text zobrazen – strukturní – popisují význam textu
• Podle způsobu zápisu – párové – otevírací a uzavírací symbol TEXT – nepovinně párové – bez uzavíracího symbolu TEXTTEXT – nepárové – tvořené pouze jedním symbolem TEXTTEXT