Analýza a návrh webových aplikací I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W
Osnova dnešní přednášky Proč tento předmět vlastně existuje? Proč nestačí standardní metodiky SI? Co standardním metodikám chybí? Modelování navigace Modelování prezentace Existují dva typy aplikací Procesně orientované Hypertextově orientované
Co to jsou webové metodiky? Jsou to metodiky softwarového inženýrství. Navazují na skupinu hypertextových metodiky. Vznikají v 80létech. Hypertextové metodiky se zabývaly návrhem hypertextových aplikací, například encyklopedie na CDROM. A to již před vznikem Internetu/WWW. Byl třeba specifický přístup k návrhu takové aplikace. Samotné webové metodiky vznikají v 90letech. Jsou hypertextové a v současnosti i procesně orientované a silně interaktivní.
Proč nestačí standardní metodiky? Standardní metodiky znáte z předmětu SI a na něj navazujících. Standardní metodiky zanedbávají následující aspekty hypertextových/webových aplikací Navigaci po aplikaci (mezi stránkami) Prezentaci stránky (rozmístění prvků na stránce) Jednoduše řečeno Nemají na to standardní modely a diagramy Webové metodiky neruší standardní metodiky SI, ale je rozšiřují!
Co je to navigace? Je to způsob, jak se dostat z jedné stránky na druhou. Ale pozor! I klasické aplikace mají navigaci mezi formuláři/obrazovkami. Tato navigace je však oproti možnostem hypertextových/webových aplikací silně omezena. DOS menu systém, například v Borland Pascalu Windows okna aplikace, modální, nemodální U hypertextových aplikací jsou možnosti navigace odvoditelné z datového modelu! Totéž platí i pro hypertextovou stránku webových aplikací!
Co je to prezentace stránky? Jedná se o návrh rozmístění různých prvků/elementů vstupních/výstupních/grafických na webové stránce. Ale pozor! I klasické aplikace mají různé elementy na svých formulářích. Možnosti jsou však oproti webovým aplikacím omezeny. DOS programově nebo různé návrháře, silně omezené Windows programově nebo různé návrháře, již lepší, ale poplatné firemnímu nástroji Navíc, vzhledem k tomu, že se vždy jedná i o hypertextovou aplikaci, je nutné aby návrhář pracoval s konceptuálním modelem aplikace!
Proč nestačí standardní metodiky? Standardní metodiky znáte z předmětu SI a na něj navazujících. Normální metodiky zanedbávají následující aspekty hypertextových/webových aplikací Navigaci po aplikaci (mezi stránkami) Prezentaci stránky (rozmístění prvků na stránce) Jednoduše řečeno Nemají na to standardní modely a diagramy Webové metodiky neruší standardní metodiky SI, ale je rozšiřují!
Proč existuje tento předmět? Aby doplnil vaše znalosti standardních metodik SI o znalosti webových metodik. Podrobněji si popíšeme dvě dnes nejrozvinutější webové metodiky. WebML a UWE Další metodiky si probereme stručněji. Na cvičení se pokusíte tyto znalosti využít pro realizaci vašeho webového projektu.
Osnova dnešní přednášky Proč tento předmět vlastně existuje? Proč nestačí normální metodiky SI? Co normálním metodikám chybí? Modelování navigace Modelování prezentace Existují dva typy aplikací Procesně orientované Hypertextově orientované
Procesně orientovaná aplikace Její funkce se dá odvodit z uživatelových procesů Například: nová faktura, zrušení zakázky, výpočet ceny, atp. Uživatelovy procesy odvodíme nejlépe z Use Case ve fázi analýzy uživatelových požadavků. Takovou jsou klasické komerční aplikace, například účetnictví, KOS, objednávky. Hypertextová složka je v nich také, ale v menšině Na jejich analýzu a návrh se většinou používají standardní metodiky SI.
Hypertextově orientované aplikace Jejich funkce se dá odvodit z navigace nad datovým/konceptuálním modelem. Můžeme říci, že je řízena daty. Strukturu aplikace můžeme nejlépe odvodit z datového modelu. Use case může být triviální, potřebuji však seznam všech informací a vztahů mezi nimi, které má systém udržovat. Příkladem takových aplikací jsou například multimediální encyklopedie na CDROM (ještě před příchodem Internetu) nebo různé webové katalogy, galerie, atp. Pro návrh takovýchto aplikací vznikly právě hypertextové metodiky.
Webově orientované aplikace Jsou v dnešní době kombinací Hypertextových aplikací Procesních aplikací v různém poměru Hypertextová aplikace také potřebuje nějaké procesy, například pro vstup dat. Procesní aplikace Využívá hypertext pro zobrazování dat.
Osnova dnešní přednášky Co nás čeká Osnova přednášek Úvod do webových metodiky Tendence Web 2.0 AJAX Webové služby Webové aplikace SOA Sémantický web Agilní metodiky MDD (MDA, MDE) Zdroje
Osnova přednášek 1 týden Úvod 2 týden Opakování klasických metodik 3 týden Webové technologie I. 4 týden Webové technologie II. 5 týden WebML I. 6 týden WebML II. 7 týden UWE I.
Osnova přednášek 8 týden UWE II. 9 týden Další webové metodiky I. 10 týden Další webové metodiky II. 11 týden Web 2.0, AJAX, webové služby 12 týden SOA, CMS, frameworks 13 týden Sémantický web, ontologie 14 týden Rezerva
Osnova dnešní přednášky Co nás čeká Osnova přednášek Úvod do webových metodik Tendence Web 2.0 AJAX Webové služby Webové aplikace SOA Sémantický web Agilní metodiky MDD (MDA, MDE) Zdroje
Návrh webového sídla Návrh webového sídla si žádá svoji metodiku podobně jako návrh informačních systémů nebo jiný inženýrsko-technický úkol A to, i pokud je STATICKÝ! Webové sídlo až na výjimky není umělecký artefakt, ale informační systém - technický produkt
Příliš mnoho umělců V současné době převládá často důraz na grafický vzhled, ale informační (přehlednost a navigace) obsah je mnohdy velice nevyhovující a to i u renomovaných firem
Bludiště kolem nás Typickým znakem je nedostatečná navigace Uživatel musí projít množstvím pro něj nezajímavých stránek, než se dostane na tu kterou hledá Je obtížné rozpoznat kudy se dát ke svému cíli
Já dělám to a ty zas ono Mezera mezi tvůrci a zákazníky Zákazník je laik a neví o webové technologii příliš mnoho, předpokládá, že mu tvůrce poradí se strukturou sídla Tvůrce, se soustřeďuje pouze na technickou problematiku (HTML, grafika) a myslí si, že mu zákazník dodá podklady a řekne jaká je struktura webového sídla
Falešné ikony Grafika čím úžasnější, tím lepší, vždyť webové sídlo je přeci umění! Technologie je lepší ASP, PHP,.NET, Perl, Apache, IIS nebo JSP? Business udělej si webové sídlo a vydělávej, vyrábět nic nemusíš, jenom obchoduj! Bohužel, činnosti jako analýza, projektové řízení, kvalita, údržba a testování, které jsou pro skutečný a trvalý úspěch daleko potřebnější přicházejí vniveč.
Webové metodiky Jedná se o speciální druh metodik softwarového inženýrství Navazují na hypermediální metodiky Nejsou bohužel příliš známé Na školách se neučí Procházejí bouřlivým rozvojem Přesouvají se z akademické platformy na komerční platformu Komerční firmy zatím nejeví velký zájem
Webové metodiky Jejich přínos v oblasti softwarového inženýrství je zejména v oblasti analýzy Navigace uživatele po aplikaci. Uživatelského rozhraní aplikace. Proto zavádějí dva nové typy diagramu (i více) Navigační Prezentační Snaží se o automatickou generaci aplikace! Snaha o kompatibilitu s novými tendencemi XML, UML, MDD,
Osnova dnešní přednášky Co nás čeká Osnova přednášek Úvod do webových metodiky Tendence Web 2.0 AJAX Webové služby Webové aplikace SOA Sémantický web Agilní metodiky MDD (MDA, MDE) Zdroje
Trendy Snaha o podporu vývoje bohatých webových aplikací AJAX Umožňuje v prohlížeči pracovat jako kdyby se jednalo o lokální aplikaci Webové služby rozhraní, které umožňuje RPC (vzdálené volání procedur) přes internet Webová aplikace Nahrazuje lokální aplikaci, využívá AJAX WEB 2.0 Spíše marketingový pojem, označuje vše výše uvedené a ještě více
Trendy Snaha o užití moderních principů v návrhu aplikací SOA Architektura orientovaná na služby Služba je cíl a nikoliv aplikace! MDD (MDA, MDE) Vývoj řízený modelem Celý vývoj je založen na modelech a jejich transformacích! Agilní metodiky XP, OOSP Klasický vývoj je rigidní, potřebuje lepší způsob!
Trendy Porozumění více informacím, které jsou na webu! Sémantický web Ontologie Ve velkém množství informací se uživatel ztrácí, je nutné mu podat pomocnou ruku! Informace mají svůj sémantický obsah, ale ten často na webu chybí! Ontologie také poskytují teoretický základ pro modelování! Formální popis, například pomocí deskriptivní logiky, umožňuje pevný teoretický základ oboru.
Trendy CASE nástroje Pro ulehčení práce uživatele při vytváření modelu Pokrytí celého životního cyklu produktu požadavky, analýza, návrh, vývoj, údržba UML Protože je v dnešní době standardem, přestože nedostačuje Naštěstí se dají využít profily a stereotypy XML Jako interní formát pro data nástroje CASE Jako externí formát pro generátory aplikace
Bohužel V současné době je bohužel v praxi upřednostňována grafická stránka věci V českých zdrojích jsou prozatím diskutovány pouze technické aspekty (až na výjimky) Ve světě však existují dostupné zdroje k této problematice Je nezbytné si uvědomit, že pro správný návrh webového sídla je metodika nezbytně nutná, podobně jako u jiného inženýrského technického díla.
Závěr Webové metodiky jsou stále málo známé mezi odbornou veřejností, nejsou vyučovány na většině VŠ u nás i ve světě a jsou ignorovány velkými firmami na trhu vývojových nástrojů.
Osnova dnešní přednášky Co nás čeká Osnova přednášek Úvod do webových metodiky Tendence Web 2.0 AJAX Webové služby Webové aplikace SOA Sémantický web Agilní metodiky MDD (MDA, MDE) Zdroje
Zdroje České Knihy nejsou Web Moje stránky (ale není tam všechno ) http://martin.feld.cvut.cz/~molhanec/vav/zajmy.htm#webmet http://www.google.com/search?q=%22webov%c3%a9+metodiky%22 Od Petra Zelenky, seriál článků o WebML http://interval.cz/autori/zelenka-petr/ Ve světě Knihy existují Web Budou uvedeny u jednotlivých přednášek
Na závěr Dotazy a připomínky? Pochopitelně k věci