Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Ondřej Lehečka Miloš Kudělka, Václav Snášel TUO-VŠB Ostrava.

Podobné prezentace


Prezentace na téma: "Ondřej Lehečka Miloš Kudělka, Václav Snášel TUO-VŠB Ostrava."— Transkript prezentace:

1 Ondřej Lehečka Miloš Kudělka, Václav Snášel TUO-VŠB Ostrava

2 1. Vzory a oblasti, ve kterých se vyskytují 2. Problémy a současná řešení 3. PATTRON - systém pro podporu vyhledávání vzorů 4. Konference EuroPLoP Spolupráce studentů

3  Co jsou to vzory? Kde se vzaly?  Historie  Vzory jsou  Vzory nejsou  Proč používat vzory?  Ve kterých oblastech se vyskytují?  Popis vzoru  Vzor jako slovník

4  V praxi často narážíme na stejný opakující se problém  Existují ověřená řešení  Odborníci z dané oblasti ví jak problém řešit  Každý člověk při práci používá jisté stereotypy  Vzory tyto stereotypy pojmenovávají a formalizují  Je zdůrazněna obecnost a flexibilita použití

5 „Každý vzor je pravidlo, které vyjadřuje vztah mezi jistou souvislostí, problémem a řešením“  Christopher Alexander formuloval v 70 letech vzory pro řešení úloh v architektuře „Každý vzor je pravidlo, které vyjadřuje vztah mezi jistou souvislostí, problémem a řešením“

6  Popisy osvědčených řešení  Zachycují zkušenost odborníků v určité oblasti  Umožňují jednoduchou komunikaci mezi odborníky (vytváří slovník)  Řeší opakovaně se vyskytující problém

7  Momentální nápady autora  Nějaké triky  Popisy jediného způsobu řešení  Popisy, které nevnesou shodu mezi odborníky

8  … šetří čas a námahu …  Vyzkoušená řešení  Zachycují zkušenosti  Jsou znovupoužitelné  Poskytují slovník  Zmírňují rizika

9  Seznam oblastí, ve kterých jsou již formulovány vzory, neustále roste. Je jasné, že vzory musí být formulovány specialisty z oblasti, pro kterou jsou vzory určeny.  Vzory bývají objeveny v profesionálních systémech jako obecné ověřené opakující se řešení problému.

10 Návrhové vzory (Design patterns)  GoF  Nejznámější skupina vzorů  Aplikují se při vytváření návrhu  Zaměřují se na flexibilitu programu  MOTO:  programujeme pro rozhraní, nikoli pro implementaci  objektové skladbě dáváme přednost před třídní dědičností

11 Analytické vzory  Víceméně nezávislé na problémové doméně  Popisují řešení na konceptuální úrovni  Popisují vztahy mezi klíčovými prvky aplikační logiky systému Vzory pro podniková řešení  Pro vytváření aplikací velkého rozsahu (enterprise applications)  Snaží se popisovat prostředí pro vývoj informačních systémů

12 Vzory pro integraci  Popisuje mechanizmy pro propojování částí nebo celých informačních systémů na různých úrovních Vzory pro testování  Skupina vzorů pro unit-testing. Vzory pro tvorbu uživatelského rozhraní  Dodržování ergonomických zásad a standardů  Kvalita při komunikaci člověka s počítačem

13 Vzory pro e-learning  Slouží k popisu vlastností, které jsou očekávány u e-learningového systému a jeho obsahu Pedagogické vzory  Popisuje různé vyučovací metody a problémy  Určeno především pro neučitele, kteří vedou např. školení

14  Existují různé formáty, charakteristiky uvedeny na konferenci PLoP’ 95  Název (vystihuje co nejvíce jeho podstatu)  Problém (každý vzor řeší nějaký problém)  Kontext/Podmínky (popis okolností)  Řešení (soubor pravidel a vztahů, instrukce, jak postupovat v řešení problému)  Příklady, Důsledky, Související vzory, Reference

15

16

17

18  Vzor je strukturovaný dokument  Vzor je formalizované řešení

19  Názvy vzorů v katalogu tvoří slovník  Usnadňují pochopení toho, o čem se mluví  Zkracuje dokumentaci.  Př.  Webové vzory: Informace o produktu, Diskuse, Informace o ceně, Možnost nákupu, Login  Popis webové stránky: Stránka o produktu obsahuje Informaci o produktu, Informaci o ceně s Možností nákupu a možností přihlášení přes Login. Ve spodní části je Diskuse.

20  Vzory se nepoužívají osamoceně  Vzory mají vztahy s ostatními vzory  Skupina vzorů pro danou problémovou doménu tvoří jazyk

21  Architektura informačních systémů představuje náročný problém, závisí na ní úspěch celého systému  V současné době nejrychleji rozvíjející se komunita  Každá skupina vzorů má svojí klasifikaci

22  První a nejznámější je Gof Design Patterns: Elements of Reusable Object-Oriented Software (Návrh programů pomocí vzorů: Stavební kameny objektově orientovaných programů)  Návrhové vzory (Design Patterns) zavádějí obecná řešení stejných situací v OOP.  Klasické problémy: Jak se získá flexibilita v OOP, znovupoužitelnost, zapouzdření stavu objektu, dynamické rozšiřování funkcionality, jeden sdílený objekt, …

23  Tvořivé vzory – řeší problémy související s vytvářením objektů v systému (Factory Method, Builder, Singleton)  Strukturální vzory – zaměřují se na uspořádání jednotlivých tříd a komponent v systému (Adapter, Bridge, Facade)  Vzory chování – všímají si chování systému, spolupráci komponent (Interpreter, Memento, State, Strategy)

24  Martin Fowler  Enterprise aplikace řeší ukládání komplexních dat do relační DB, transakční zpracování, souběžný přístup, obsahují složitou aplikační logiku, řeší uživatelské rozhraní, integrují komponenty třetích stran

25  Vzory pro doménovou logiku  Vzory pro architekturu datových zdrojů  Objektově-relační vzory chování  Objektově-relační strukturální vzory  Objektově-relační mapovací vzory využívající metadata  Vzory pro webovou prezentaci  Vzory pro distribuované prostředí  Vzory pro řešení souběžného přístupu k datům  Vzory pro ukládání stavu během sezení  Základní vzory

26  Pokrývají proces vývoje software na platformě Microsoft  Obsahuje i implementační vzory  Vzory jsou rozděleny podle úrovně abstrakce do tzv. Organizační tabulky vzorů

27 Skupiny vzorů, úrovně abstrakce, oblasti použití, rámce vzorů

28  Podle GoF:  Projít účelový oddíl  Prostudovat vzájemné vztahy vzorů  Studium vzorů s podobným účelem  Nastudovat vzory a najít shodu v charakteristikách problému, který se má řešit a který vzor řeší

29 „Klasifikace vzorů uvedená v každé knize je užitečná pro samotné studium a pro orientaci v dané problémové oblasti.“ „Existující klasifikace vzorů nepomáhají při hledání neznámého vzoru na daný problém.“ „Žádná existující klasifikace vzorů nedává přehled o tom, jak vzory z různých oblastí souvisí mezi sebou.“

30  Autoři jsou členové komunity Microsoft Patterns & Practices  Vychází z klasifikace Microsoftu  Umožňuje zobrazení a procházení Organizační tabulky vzorů  Možnost vkládání nových vzorů  Pouze 3 pevné kategorie

31  Web obsahuje povnou sadu vzorů z oblasti použitelnosti webových stránek (Web usability)  Obsahuje grafické znázornění vztahů mezi vzory  Neumožňuje další klasifikaci ani vyhledávání

32  Web vytvořený lidmi zabývající se katalogy vzorů  Byl vytvořen jako výstup skupiny na konferenci EuroPLoP 2007  Obsahuje články, odkazy o vzorech  Zachycuje činnost komunity

33 Pattens Almanac 2000 (http://www.smallmemory.com/almanac/)  Nejrozsáhlejší katalog vzorů  Obsahuje pouze názvy a účel vzoru, publikaci  Jednoduché vyhledávání  Žádná klasifikace

34  Vytvoření vhodné flexibilní klasifikace vzorů  Vystihuje vlastnosti vzorů, otevřenost, …  Vyhledávací aparát  Hledání podle klasifikačních atributů  Navigace v prostoru vzorů  Grafová struktura, shlukovací metody  Webový portál  Komunitně zaměřený katalog vzorů

35  Veřejně přístupná aplikace (www.pattron.net)www.pattron.net  Komunity pro sdružení lidí se stejným zájmem  Kategorizační atributy pro klasifikaci  Možnost hlasování  Vyhledávání filtrováním atributů  Shluky vzorů na základě příslušnosti k atributům (např. formální konceptuální analýza)  Výchozí místo pro studium vzorů

36

37

38  Realizovaný experimentální webový portál vzorů   Obsahuje přes 300 vzorů a 140 klasifikačních atributů  nalezeno 420 shluků

39

40

41

42

43

44

45

46

47

48  Nejvýznamnější evropská konference o vzorech  Patří do série PLoP konferencí konaných po celém světě  Schvalování vzorů

49  Byli jsme účastníci v sekci „pattern repositiries focus group“  Ostatní řeší  Strukturu,zápis popisu vzorů  Klasifikační metody

50  Hlavní diskuse na téma pattern repositories  Diskusi ovládl Frank Buschman  Problém vidí v návratnosti investic, protože věc nemá business model

51  Komunita lidí věnujících se vzorům se neustále rozšiřuje  Vznikají jazyky vzorů např. z filmové branže, kuchařství  Diskutuje se o tom, jak se vzory zacházet  Do klasifikace by se měli zapojit autoři

52

53  Plníme systém PATTRON dalšími vzory  Hledáme atributy  Ohodnocujeme vzory  Máme málo společných atributů pro vzory z různých domén

54  V rámci bakalářských a diplomových prací studujeme vybrané knihy  Hledáme nové webové vzory  Hodnotíme příslušnost webového vzoru na webové stránce

55


Stáhnout ppt "Ondřej Lehečka Miloš Kudělka, Václav Snášel TUO-VŠB Ostrava."

Podobné prezentace


Reklamy Google