ZEŠTÍHLENÍ HUBENÉHO KLIENTA VEMA Ing. Bc. Jaroslav Šmarda Vema, a. s. smarda@vema.cz Abstrakt Znakem moderního ešení aplikací je pístup uživatel prostednictvím tenkých klient. Abychom splnili požadavky našich uživatel v duchu pravidla Každému co jeho jest., mají aplikace VEMA dokonce dva typy takových pístup tenkého a ješt teního klienta. Tím tenkým klientem je myšleno naše ešení aplikaního serveru s pístupem z libovolné poítaové stanice prostednictvím programu Vema Klient. Tato varianta poskytuje plnou funkcionalitu aplikací a je urena rutinním uživatelm. Tím ješt tením klientem je myšlen webový klient (internetový prohlíže). Tato varianta umožuje portálové ešení aplikací, které je ureno mnohem širšímu okruhu uživatel. Napíklad uživatelem personálního informaního systému mže být každý zamstnanec, který se prostednictvím portálu dostane ke svým osobním údajm a výplatnímu lístku a vidí je jako html stránky. Budu se zabývat srovnáním tchto dvou typ tenkých klient a hlavn tím, jak jsme vyešili základní požadavek, tj. aby spolené ásti obou pístup byly ešeny jen jedenkrát. Výsledkem je, že tenký klient má také jako svoji souást webového klienta a webový klient ásten pebírá funkcionalitu tenkého klienta. Abstract Characteristic of modern application solution is users access via thin clients. To fulfill our users requirements in the sense of formula Everybody obtains what she needs, VEMA applications have even two types of such access thin and more thinner client. The thin client means our solution of application server with access from any computer terminal via Vema-Client program. This variant provides full application functionality and is determined for routine users. More thinner client means web client (Internet browser). This variant enables portal solution, which is meant for wider users group. For example: Each employee can be a HR information system user, who can obtain her own personnel data and payroll via portal and can see them as html pages. I am going to deal with comparison of these two types of thin clients and to explain how we resolve basic requirement only one solution of common parts of both thin clients. The final result is that thin client has a web client as a part of itself and the web client partly involves functionality of thin client. 1. Tenký nebo hubený klient? Peklad pojmu thin client jako hubený klient jsem použil jen pro nadpis tohoto lánku. Nadále budu používat pojem tenký klient, na který jsem zvyklý. Slovo thin znamená mimo jiné také hubený a již jsem se setkal s použitím pojmu hubený klient. Také opaný pojem rich client s pekladem tlustý klient navozuje peklad thin jako hubený. 2. Vymezení pojmu tenký klient 2.1. Varianty architektur informaních systém
Podíváme-li se na vývoj architektur informaních systém v prostedí poítaových sítí, mžeme z hlediska rozdlení základních vrstev zpracování (pístup k datm, algoritmus zpracování dat napíklad výpoet mezd a prezentace dat) rozlišit tyto základní varianty: síový program klient/server tenký klient tenký webový klient 2.1.1. Síový program Tato nejstarší a nejmén efektivní varianta poítá s tím, že veškeré zpracování probíhá na poítaové stanici, pouze data jsou sdílená a uložená na síovém serveru. Síový server je v tomto pípad oznaován jako file server. 2.1.2. Klient/server V této variant je zpravidla vrstva pístupu k datm ešena na serveru, server slouží v tomto pípad jako databázový server. Další vrstvy (algoritmické zpracování a prezentace dat) probíhají na poítaové stanici. Problémem této varianty je pedevším nejasná hranice mezi vrstvou pístupu k datm a vrstvou algoritmického zpracování. 2.1.3. Tenký klient Tato efektivní a nyní preferovaná varianta znamená, že na poítaové stanici je nainstalován univerzální program tenký klient, který eší prezentaci dat a na síovém serveru (HW) bží aplikaní server (SW), který eší pístup k datm i algoritmické zpracování. Varianta s tenkým klientem umožuje poskytování aplikace formou služby (ASP Application Service Providing). Znamená to, že zákazník na obrazovku svého poítae dostává prostednictvím tenkého klienta data a funkce, které potebuje. O všechno ostatní se stará poskytovatel služby ASP a probíhá to nkde daleko na serveru poskytovatele ASP. 2.1.4. Tenký webový klient Pro tuto variantu platí prakticky vše, co bylo uvedeno ve variant tenký klient, jen s tím rozdílem, že webový klient je univerzální webový prohlíže (napíklad MS Internet Explorer) dostupný prakticky na jakékoliv poítaové stanici, serverem je univerzální internetový server (napíklad MS Internet Information Server). 2.2. Porovnání architektur informaních systém V následující tabulce jsou architektury informaních systém porovnávány ze tí základních pohled. ím delší je obdélníek, tím je z daného pohledu daná architektura lepší. Architektura Ovládání Spojení Správa systému Síový program Klient / server
Tenký klient Tenký webový klient Z hlediska uživatelského ovládání se první ti varianty prakticky neliší, protože poskytují uživateli plné ovládání, tedy všechny funkce a data aplikace jsou uživateli dostupné. Varianta s webovým klientem zpravidla poskytuje sice velmi jednoduchý ale redukovaný pístup k datm a funkcím aplikace. Z pohledu zátže síového spojení je na tom nejlépe varianta s tenkým klientem, protože aplikaní server s tenkým klientem si mohou vymovat data nejoptimálnji. Mohou napíklad zvolit takovou komunikaci protokolem TCP/IP, která udržuje relaci na rozdíl od protokolu HTTP, kterým komunikuje webový klient s internetovým serverem. Pokud se podíváme na architektury z hlediska správy systému, je na tom samozejm nejlépe varianta s webovým klientem, protože na poítaových stanicích je instalován pouze univerzální webový prohlíže, který je zpravidla tém souástí operaního systému. Ale i varianta s tenkým klientem je na tom dobe, protože vyžaduje instalaci pomrn jednoduchého programu tenkého klienta. První dv varianty vyžadují složitjší instalace. 3. Požadavky uživatel na pístup k aplikacím Rozsáhlejší ešení aplikací v síovém prostedí si dnes nelze pedstavit bez pístupu uživatel k aplikacím prostednictvím tenkých klient. Ve výbrových ízeních na nové informaní systémy bývá ešení aplikaní server / tenký klient nezbytnou podmínkou. Aplikace pro ízení lidských zdroj, ekonomiky a logistiky spolenosti Vema jsou již nkolik let dostupné ve variant aplikaní server/tenký klient a máme s tímto ešení velmi dobré zkušenosti. Z hlediska používání aplikace mžeme rozlišit 3 základní pístupy: referentský pístup manažerský pístup zamstnanecký pístup 3.1. Referentský pístup Naše aplikace jsou ureny pedevším pro specializované skupiny uživatel (napíklad mzdové úetní, personální referenty, úetní, fakturanty apod.), které spolen oznaím jako referenty. Tyto skupiny uživatel využívají aplikace velmi intenzivn, vyžadují plnou funknost a úplný a efektivní pístup k datm. Naše ešení s tenkým klientem je nejvhodnjší pro referentský pístup. 3.2. Manažerský pístup Naše aplikace obsahují údaje, které jsou zajímavé pro mnohem širší okruh uživatel než jen pro referenty. Údaje v databázích aplikací (zpravidla agregované) jsou ureny pro ízení. Manažerský pístup se ale od referentského odlišuje.
Manažei potebují pro ízení údaje z ady oblastí, nepracují ale s aplikacemi tak intenzivn, nepoizují data, ale kladou draz na prezentaci výsledk. Podstatný je integrovaný pístup (z hlediska ovládání i obsahu). V tomto pípad je nejvhodnjším ešením pístup manažer prostednictvím webového klienta. 3.3. Zamstnanecký pístup Aplikace pedevším z oblasti ízení lidských zdroj obsahují adu údaj zajímavých pro všechny zamstnance. Myslím tím napíklad vlastní personální údaje zamstnance (jestli jsou správn zavedeny), vlastní výplatní lístek, evidenci docházky nebo údaje o plánované nepítomnosti a služebních cestách. Je proto pirozené, že moderní aplikace pro ízení lidských zdroj (napíklad aplikace spolenosti Vema) poskytují pístup všem zamstnancm k vlastním personálním údajm. I pro tento pístup je samozejm nejlepší variantou intranetové ešení pístupu prostednictvím webového klienta. 4. Spolené ešení tenkého a webového klienta VEMA 4.1. Tenký klient VEMA ešení s tenkým klientem VEMA je založeno na komunikaci tenkého klienta s aplikaním serverem protokolem TCP/IP. Na každé poítaové stanici, ze které je vyžadován referentský pístup do aplikací VEMA, je nainstalován univerzální (z hlediska všech aplikací VEMA) program Vema Klient. Aplikaní server bží na ureném poítai v síti a poskytuje služby všem klientm. Komunikace mezi nimi probíhá na úrovni tzv. dokumentového objektového modelu (DOM). Píkladem objekt v DOM jsou jednotlivé dialogové prvky na obrazovce klientského poítae. Hlavní výhodou tohoto ešení, které je ureno primárn pro referentský pístup, je plná funkcionalita vetn datového procesoru pro poizování a aktualizace veškerých údaj v databázi. 4.2. Webový klient VEMA Pro pístupy manažer (pedevším k agregovaným údajm potebným pro ízení) a zamstnanc (pedevším k vlastním personálním údajm zpracovávaným informaním systémem) k aplikacím jsme zvolili jako ideální intranetové portálové ešení. Tato varianta je urena pedevším pro prezentace údaj, nikoliv pro intenzivnjší poizování dat a spouštní zpracovatelských funkcí. Webovým klientem je standardní internetový prohlíže (nejastji MS Internet Explorer). Na stran serveru (MS Internet Information Server, ale je možné použít i jiný) je modul, který pes rozhraní ISAPI (Internet Server API) zprostedkovává pístup na aplikaní server VEMA, který poskytuje údaje a funkcionalitu aplikací. Data pro webového klienta jsou bžné HTML stránky obsahující funkce v jazyce Javascript. Souástí tohoto ešení jsou také tzv. inteligentní tabulky (intranetové tabulky s funkcionalitou OLAP popsané na jiném míst tohoto sborníku v píspvku Portálové ešení analýzy manažerských dat ). 4.3. Spolené ešení prezentaní vrstvy klient Krom standardních sestav, které lze tisknout na tiskárn nebo prohlížet na obrazovce, se nám velmi osvdila prezentace výsledk ve form intranetových dokument (vtšinou se jedná o tabulky). Hlavním pínosem je možnost vytvoení odkaz v dokumentech s možností kliknutí a zobrazení další tabulky (teba s detailnjšími údaji). Jako ideální se jeví možnost pejít kliknutím na detailní údaj v tabulce pímo do datového procesoru aplikace na primární záznam, ze kterého údaj pochází, i s možností editace primárního záznamu.
Technologii intranetových tabulek s možností odkaz do dalších tabulek oznaujeme jako technologii dynamických dokument. Tato technologie je natolik užitená, že je použita jak v pípad webového klienta, tak i tenkého klienta VEMA. Stejn tak tisk a prohlížení sestav je natolik používanou funkcí, že je potebné tisknout sestavy jak prostednictvím tenkého klienta, tak i webového klienta. 4.4. Technologie dynamických dokument Základem spoleného ešení prezentaní vrstvy v tenkém i webovém klientovi jsou tzv. dynamické dokumenty. Jedná se o dokumenty v HTML, do kterých jsou dynamicky (pi spuštní) doplnny údaje z databáze aplikace. Zdrojový tvar dokumentu (v XML formátu) obsahuje fragmenty HTML pro zobrazení intranetových tabulek a kód v neprocedurálním jazyce pro výbr dat z databáze a ízení prezentace údaj. Stejný jazyk používáme v generátoru sestav. V okamžiku vyvolání dokumentu dojde k interpretaci kódu, natení údaj z databáze a sestavení výsledného HTML dokumentu. Dynamické dokumenty mohou sloužit nejen k prezentaci údaj, ale také k poizování. 4.4.1. Dynamické dokumenty v tenkém klientovi Takto vypadá dynamický dokument se zadáním údaj o pracovní cest v tenkém klientovi. Obrázek. 1
V okn tenkého klienta (okno s nadpisem VMNOVCES Zadání nové pracovní cesty) bží internetový prohlíže a zajišuje práci s dynamickým dokumentem pro zadání údaj o pracovní cest. Takovým zpsobem pracují s aplikací referenti, tedy ti, kteí intenzivn využívají aplikaci (v našem pípad aplikace CEP - Cestovní píkazy) - pedevším intenzivn poizují údaje a mají na starosti zpracování. Referenti mají na poítai nainstalovaného tenkého klienta a krom dynamických dokument mají k dispozici adu dalších funkcí (všechny tyto funkce jsou ve stromové nabídce v levém okn). 4.4.2. Dynamické dokumenty ve webovém klientovi Stejný dokument bží samozejm také ve webovém klientovi a vypadá takto: Obrázek. 2
Takto zadávají údaje o pracovních cestách všichni zamstnanci vetn manažer krom referent aplikace CEP (referenti mají samozejm k dispozici oba zpsoby). 4.5. Webový klient jako souást tenkého klienta Výsledné ešení je takové, že webový klient je souástí tenkého klienta a veškerá funkcionalita v oblasti dynamických dokument je tak dostupná také uživatelm, kteí pistupují k aplikacím prostednictvím tenkého klienta. Tito uživatelé mají navíc možnost pechodu z dynamického dokumentu pímo k editaci primárních záznam v databází. Funkcionalita datového procesoru je souástí jen tenkého klienta, proto uživatelé pistupující prostednictvím webového klienta tuto možnost nemají. Protože užitenými funkcemi pro prezentaci údaj jsou funkce tisku a prohlížení sestav, je stejná funkcionalita v oblasti sestav souástí obou variant tenkých klient. 5. Literatura Toigo, J. W.: The Essential Guide to Application Service Providers, Prentice Hall, 2002 Vema, a.s.: Provozní dokumentace aplikací VEMA, Brno, 2004 6. O autorovi Jaroslav Šmarda absolvoval obor poítae na Fakult elektrotechnické VUT v Brn a bakaláské studium managementu na Ekonomicko-správní fakult Masarykovy univerzity. V roce 1990 se stal spoluzakladatelem spolenosti Vema, a. s.(www.vema.cz ). Od té doby zastával ve spolenosti, která je významným eským dodavatelem informaních systém pedevším pro oblasti ízení lidských zdroj a ekonomiky, adu manažerských pozic. V souasné dob je místopedsedou pedstavenstva a editelem Obchodn-provozní divize.