MDA DAY 22.8.2007 Modelování, MDA a UML Martin Molhanec.

Slides:



Advertisements
Podobné prezentace
Software Development Conference 2007 Vztah dodavatele a odběratele Zdeněk Borůvka.
Advertisements

První zkušenosti s modelovacím nástrojem
Modelování moderních aplikací v SELECT Enterprise
Stručný úvod do UML.
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
HYPERTEXT PREPROCESSOR. PROGRAMOVÁNÍ. DEFINICE POJMŮ Problém Problém nevyřešený, nežádoucí stav obvykle vyžaduje nějaké řešení Neřešitelný problém Neřešitelný.
Workflow Foundation Základy a architektura
Historie UML Bc. Lukáš Ščurek. Historie UML 70. léta Vznik prvních objektově orientovaných jazyků První objektově orientové metody anylýzy a návrhu Polovina.
Přínosy metodik  Větší produktivita a kooperace týmů  Komunikační standard  Specializace projektových týmů  Nezávislost na konkrétních řešitelích 
Tvorba software Konceptuální modely. Konceptuální model (vodopádový) Formulace problému Analýza Programování Testování Užívání.
METODOLOGIE PROJEKTOVÁNÍ
IS V EKONOMICKÝCH SUBJEKTECH Ing. Jiří Šilhán. IS IS – data+lidi+HW, prvky + relace mezi uživateli, které splňují nějaké cílové chování – tak aby byly.
A4M33NMS Návrh a modelování softwarových systémů
Metody zpracování vybraných témat (projektů)
Podniková Informatika Přednáška 2
Autor:Ing. Bronislav Sedláček Předmět/vzdělávací oblast:Telekomunikace Tematická oblast:Datová komunikace Téma:OSI - spojová vrstva I. Ročník:4. Datum.
X13PMT 2. seminář Ing. Martin Molhanec, CSc. Garant předmětu ČVUT – FEL, K13113.
KONCEPTUÁLNÍ MODELOVÁNÍ
ONTOLOGIE a KONCEPTUÁLNÍ MODELOVÁNÍ (stručný úvod)
DATOVÉ MODELY (c) Tralvex Yeap. All Rights Reserved.
Outsourcing jako strategický nástroj řízení nejen v komerční sféře
11. Trendy ve vývoji aplikací, podporujících podnikové procesy
13AMP 9. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled ADA ADA Java Java.
Informační strategie. řešíte otázku kde získat konkurenční výhodu hledáte jistotu při realizaci projektů ICT Nejste si jisti ekonomickou efektivností.
TECHNIKY A CASE NÁSTROJE VÝVOJE IS Doc. Ing. B. Miniberger, CSc
Modelovací jazyk UML. Jazyk UML je víceúčelový modelovací jazyk, který byl vyvinut speciálně pro účely softwarového inženýrství. Obsahuje formalizovaný.
KEG Použití vzorů při vyhledávání na webu Václav Snášel.
Systémy pro podporu managementu 2
Relační databáze.
IBM Information Technology Services © Copyright IBM Corporation 2006 Zpracování dokumentace a podpora řízení Integrovaného bezpečnostního centra v Ostravě.
Základní pojmy Systém je abstrakce, kterou si lidé vytvářejí v procesu poznávání jako nástroj zkoumání reálných objektů.
Databázové systémy Přednáška č. 7 Uživatelské rozhraní.
Informatika pro ekonomy II přednáška 10
METODOLOGIE ORIENTOVANÉ NA TVORBU WEBOVÝCH SÍDEL Ing. Martin Molhanec, CSc.
OBJEKTOVÉ METODOLOGIE – JEJICH UŽITÍ A VÝKLAD Ing. Martin Molhanec, CSc.
Možnosti modelování požadavků na informační systém
B. Miniberger, BIVŠ Praha 2009
Autor:Ing. Bronislav Sedláček Předmět/vzdělávací oblast:Telekomunikace Tematická oblast:Datová komunikace Téma:OSI - prezentační vrstva, aplikační vrstva.
Tvorba webových sídel jako inženýrský úkol Ing. Martin Molhanec, CSc České vysoké učení technické.
Dokumentace objektů a zveřejnění funkcí
Dokumentace informačního systému
METODOLOGIE ORIENTOVANÉ NA TVORBU WEBOVÝCH SÍDEL 13DFA Ing. Martin Molhanec, CSc. 11. přednáška.
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ FAKULTA STROJNÍ ÚSTAV PŘÍSTROJOVÉ A ŘÍDICÍ TECHNIKY ODBOR AUTOMATICKÉHO ŘÍZENÍ A INŽENÝRSKÉ INFORMATIKY Aplikace objektově.
Systémy pro podporu managementu 2 Inteligentní systémy pro podporu rozhodování 1 (DSS a znalostní systémy)
Moderní byznys Jan Kovařík. ”Zlepší-li se toky informací ve firmě, pak řešení jednotlivých podnikatelských problémů již přijdou sama.” Bill Gates, Byznys.
METODOLOGIE ORIENTOVANÉ NA TVORBU WEBOVÝCH SÍDEL Ing. Martin Molhanec, CSc.
Metodologie OOHDM, jazyk Lua a tvorba webových aplikací
organizační struktury Implementace EOS III na Olomouckém kraji Pro:Krajský rok informatiky 2005 Autor:Jan Kadlec Datum:
Web 2.0, folksonomie a uživatelská rozhraní Lenka Němečková Eliška Pavlásková Založeno mimo jiné na prezentacích prof. B. Whitea „The Promise of Rich User.
Databázové modelování
Object-Oriented Hypermedia Design Model Ing. Martin Molhanec, CSc. České vysoké učení technické Fakulta elektrotechnická Katedra elektrotechnologie Česká.
Databázové systémy Informatika pro ekonomy, př. 18.
Nové technologie pro webové aplikace v cestovním ruchu Nové technologie pro webové aplikace v cestovním ruchu Pavel Čech Unverzita Hradec Králové.
Automatizovaná podpora výběru nástroje pro dobývání znalostí Jakub Štochl.
SOA = Architektura orientovaná na služby
© Doc. Miniberger, BIVŠ UML modelování Webové služby představují sadu standardů umožňující komunikaci aplikací bez ohledu na platformu, na které jsou provozovány.
Sales & Consulting IGS, Czech Republic © 2005 IBM Corporation Optimalizace a sdílení informací ve státní správě Pavel Hrdlička.
Databázové systémy Datové modely.
Návrh struktury - normalizace
Mezinárodní konference ICT Fórum PERSONALIS 2006 Procesní řízení informační bezpečnosti ve státní správě Ing. Jindřich KODL, CSc. Praha
Pracovní skupina Standardy Ing. Martin ZEMAN předseda pracovní skupiny NSeZ – neveřejná prezentace Emauzy,
ANALÝZA IS. Životní cyklus IS Specifikace problému, požadavků (studijní fáze) Analýza Návrh Implementace (realizace) Zavedení (instalace) a testování.
A jeho praktická aplikace Štěpán Vacek Univerzita Hradec Králové Liberecké informatické fórum 2010.
XML a datový standard Zdeněk Jirkovec Softwarové Aplikace a systémy.
Dobývání znalostí z databází znalosti
Tradiční metodiky vývoje softwaru
Informatika pro ekonomy přednáška 8
Busines Object Relation Modeling
Tradiční metody vývoje softwaru
METODOLOGIE PROJEKTOVÁNÍ
Transkript prezentace:

MDA DAY Modelování, MDA a UML Martin Molhanec

Osobní názor Já si myslel od prvního okamžiku, že modely jsou k tomu, abychom podle nich vyvíjeli!  Čili MDA je naprosto normální a přirozená věc! OK, chápu, že  MDA klade na vývoj dle modelů akcent  Model je zdroj a nikoliv jenom dokumentace.  MDA se snaží udělat v modelech pořádek  Co použít v analýze, návrhu a v implementaci.

Moje dvě cesty k MDA v letošním roce Tvorba software 2002 „UML – několik kritických poznámek„ Tvorba software 2003 „Objektové metodologie – jejich užití a výklad“ Tvorba software 2004 „Kritika některých výkladů objektově orientovaného paradigmatu“ Objekty 2004 „Několik poznámek k porozumění objektového paradigmatu“ Tvorba software 2005 „Zásady konceptuálního totálně objektově orientovaného modelování“ Objekty 2005 „Konceptuální modelování“ Tvorba software 2006 „Konceptuální modelování, formální základy a ontologie“ Objekty 2006 „Ontologické základy konceptuální normalizace“ Tvorba software 2007 „Modely, modelování, MDA a UML“

Typy modelů Jaké vlastně existují? Jak je klasifikovat? Proč je tolik různých modelů?  Postupné zužování původního pojmu v čase.  Postupné rozšiřování původního pojmu v čase.  Přenesení významu původního pojmu v čase. (Čili, dnes se tím myslí něco jiného než před lety.)  Jeden název označuje více pojmů.  Jeden pojem má více názvů.  Pojem se šíři díky firemní či jiné agresivitě. Je sice určitým způsobem nesprávný, ale přesto se nakonec vžije jeho nekorektní užívání.  Pojem není správný, ale z určitých důvodů (tradice, zvyklost, hrdost) se nekorektně používá stále.  Jiné chápání daného pojmu ve světě IT a v jiných světech mimo IT.

Typy modelů Datový Logický Konceptuální Objektový Entitně-vztahový Relační Ontologický Na platformě nezávislý Na platformě závislý Business Fyzický Případů užití Dynamický Kontextový Funkční Procesní Datových toků Objektově-relační Uživatelský...

MDE – MDA - MDD Více názvů pro jedno paradigma  Každý zdůrazňuje jeho určitý aspekt MDE (Model-Driven Engineering) Inženýrství řízené modelem  Zdůrazňuje systematické užití modelů jako primární během životního cyklu inženýrského úsilí  Je použitelné v oblasti softwarového, datového a systémového inženýrství!

Více názvů pro jedno paradigma  Každý zdůrazňuje jeho určitý aspekt MDA (Model-Driven Architecture) Architektura řízená modelem  Je jeden způsob návrhu architektury softwarových systémů založený na paradigmatu MDE  V roku 2001 byl přijat sdružením OMG a stal se jeho registrovanou značkou MDE – MDA - MDD

Více názvů pro jedno paradigma  Každý zdůrazňuje jeho určitý aspekt MDD (Model-Driven Development) Vývoj řízený modelem  Je jeden způsob vývoje softwarových systémů založený na paradigmatu MDE  V roku 2001 byl přijat sdružením OMG a stal se jeho registrovanou značkou MDE – MDA - MDD Všechny pojmy jsou do určité míry zaměnitelné a také se tak děje.

Metamodel MDA

požadavky business návrh analýza implementace technologie abstrakcerealizace

Hierarchie modelů v MDA Business Model (CIM = Computation Independent Model)  Tento model tvoří nejvyšší konceptuální úroveň všech modelů. Je postaven na ontologii pro danou doménu. Je určen pro definování všech požadavků uživatele na činnost daného systému. Platform Independent Model (PIM)  Jedná se o celou řadu modelů. Tyto modely můžeme označit za logické. Vycházejí z CIM a obsahují návrh řešení systému. Platform Specific Model (PSM)  Je logický model pro určitou platformu (objektově orientovaná, relační, strukturovaná, objektově-relační, atp.) Platform Description Model (PDM)  Je metamodel určité platformy. Abstrakce odpovídající konkrétnímu virtuálnímu výpočetnímu systému (relační, objektový,…)

Hierarchie modelů v MDA Business Model (CIM = Computation Independent Model)  Tento model tvoří nejvyšší konceptuální úroveň všech modelů. Je postaven na ontologii pro danou doménu. Je určen pro definování všech požadavků uživatele na činnost daného systému. Platform Independent Model (PIM)  Jedná se o celou řadu modelů. Tyto modely můžeme označit za logické. Vycházejí z CIM a obsahují návrh řešení systému. Platform Specific Model (PSM)  Je logický model pro určitou platformu (objektově orientovaná, relační, strukturovaná, objektově-relační, atp.) Platform Description Model (PDM)  Je metamodel určité platformy. Abstrakce odpovídající konkrétnímu virtuálnímu výpočetnímu systému (relační, objektový,…) PROBLÉM Samotná definice hierarchie modelů v rámci MDA není zcela jasná! Je předmětem četných vědeckých a odborných prací. Není pravděpodobně jediné správné řešení. Je nutné spíše uvažovat o MDE jako o určitém paradigmatu!

Koncepce modelů je založena na ontologii. Jedině ontologie dovoluje dostatečně přesně stanovit vlastnosti a vztahy mezi různými typy modelů. Ontologie je metamodel pro modelování celého universa. To je však v praxi neuchopitelné. Z ontologie je možné odvodit různé konceptuální modely, které představují různý úhel pohledu na svět. Například pohled na statickou stránku universa (datový model), pohled na chování objektů v universu (procesní model), pohled na funkcionalitu systému v universu (model požadavků), aj. Různé konceptuální modely lze chápat jako podtypy univerzálního ontologického modelu (ontologie). Extenze konceptuálních modelů může být rozdílná. Zajímá nás buď extenze vztažená na samotný IT systém (IT model), a nebo na všechny objekty určitého systému tento IT systém obsahující (business model). S ohledem na určitou platformu (paradigma: relační, objektové, strukturované, aj.) se definují modely nižší úrovně (PSM) na základě restrikce intenze modelu PIM. Modely PDM představují metamodel pro určitou konkrétní softwarovou platformu. Například: C++, Pascal, RDBMS, OODBMS, XML, atp. Existují transformace mezi modely PIM ↔ PSM ↔ PDM. Vlastní koncepty

Koncepce modelů je založena na ontologii. Jedině ontologie dovoluje dostatečně přesně stanovit vlastnosti a vztahy mezi různými typy modelů. Ontologie je metamodel pro modelování celého universa. To je však v praxi neuchopitelné. Z ontologie je možné odvodit různé konceptuální modely, které představují různý úhel pohledu na svět. Například pohled na statickou stránku universa (datový model), pohled na chování objektů v universu (procesní model), pohled na funkcionalitu systému v universu (model požadavků), aj. Různé konceptuální modely lze chápat jako podtypy univerzálního ontologického modelu (ontologie). Extenze konceptuálních modelů může být rozdílná. Zajímá nás buď extenze vztažená na samotný IT systém (IT model), a nebo na všechny objekty určitého systému tento IT systém obsahující (business model). S ohledem na určitou platformu (paradigma: relační, objektové, strukturované, aj.) se definují modely nižší úrovně (PSM) na základě restrikce intenze modelu PIM. Modely PDM představují metamodel pro určitou konkrétní softwarovou platformu. Například: C++, Pascal, RDBMS, OODBMS, XML, atp. Existují transformace mezi modely PIM ↔ PSM ↔ PDM.

Vlastní koncepty Koncepce modelů je založena na ontologii. Jedině ontologie dovoluje dostatečně přesně stanovit vlastnosti a vztahy mezi různými typy modelů. Ontologie je metamodel pro modelování celého universa. To je však v praxi neuchopitelné. Z ontologie je možné odvodit různé konceptuální modely, které představují různý úhel pohledu na svět. Například pohled na statickou stránku universa (datový model), pohled na chování objektů v universu (procesní model), pohled na funkcionalitu systému v universu (model požadavků), aj. Různé konceptuální modely lze chápat jako podtypy univerzálního ontologického modelu (ontologie). Extenze konceptuálních modelů může být rozdílná. Zajímá nás buď extenze vztažená na samotný IT systém (IT model), a nebo na všechny objekty určitého systému tento IT systém obsahující (business model). S ohledem na určitou platformu (paradigma: relační, objektové, strukturované, aj.) se definují modely nižší úrovně (PSM) na základě restrikce intenze modelu PIM. Modely PDM představují metamodel pro určitou konkrétní softwarovou platformu. Například: C++, Pascal, RDBMS, OODBMS, XML, atp. Existují transformace mezi modely PIM ↔ PSM ↔ PDM.

Vztahy mezi modely v naší koncepci

Moje dvě cesty k MDA v letošním roce Tvorba software 2002 „UML – několik kritických poznámek„ Tvorba software 2003 „Objektové metodologie – jejich užití a výklad“ Tvorba software 2004 „Kritika některých výkladů objektově orientovaného paradigmatu“ Objekty 2004 „Několik poznámek k porozumění objektového paradigmatu“ Tvorba software 2005 „Zásady konceptuálního totálně objektově orientovaného modelování“ Objekty 2005 „Konceptuální modelování“ Tvorba software 2006 „Konceptuální modelování, formální základy a ontologie“ Objekty 2006 „Ontologické základy konceptuální normalizace“ Tvorba software 2007 „Modely, modelování, MDA a UML“ Tvorba software 2001 „Tvorba webových sídel jako inženýrský úkol“ Objekty 2001 „Object-Oriented Hypermedia Design Model“ Tvorba software 2002 „Metodologie OOHDM, jazyk Lua a tvorba webových aplikací“ Tvorba software 2003 „Metodologie orientované na tvorbu webových sídel“ Objekty 2003 „WebML – Objektově orientovaná metodika pro tvorbu webových sídel“ Tvorba software 2004 „Metodiky orientované na tvorbu webových sídel“ Tvorba software 2005 „Metodika UWE (UML based Web Engineering)“ Tvorba software 2006 „Novinky ve webových metodikách a metodika OntoWeaver“ Tvorba software 2007 „Novinky ve webových metodikách a metodika WebRE/UWE“

UWE UWE (UML Web Engineering)  Metodika navržená Norou Koch (Ludwig-Maximilians- Universität München) v roce 2000  Hlavní rysy  použití standardní notace UML ve všech jejich modelech,  přesná definice metodiky, tj. přesný a podrobný popis způsobu vytváření všech jednotlivých modelů a  specifikace omezení (constraints), které zvyšují přesnost jednotlivých modelů.  Vývojový cyklus  analýzy požadavků (requirement analysis), jejímž výsledkem je model užití (use case model),  konceptuálního návrhu (conceptual design), jehož výsledkem je konceptuální model (conceptual model),  návrhu navigace (navigation design), jehož výsledkem je model navigačního prostoru a struktury (navigation space and structure model) a  návrhu prezentace (presentation design), jeho výsledkem je prezentační model (presentational model). Obecně lze konstatovat, že většina webových metodik je v podstatě MDA

UWE + MDD Autoři metodiky UWE se snaží svojí metodiku vylepšit s pomocí koncepce MDD (Model Driven Development.)  Business Model (CIM = Computation Independent Model)  Platform Independent Design Models (PIM)  Platform Specification Models (PSM)

UWE + MDD Autoři metodiky UWE se snaží svojí metodiku vylepšit s pomocí koncepce MDD (Model Driven Development.)  Business Model (CIM = Computation Independent Model)  Platform Independent Design Models (PIM)  Platform Specification Models (PSM)

UWE + MDD Platform Independent Design Models (PIM) Content model (model obsahu) Navigational model (model navigace) Process model (procesní model) Presentation model (prezentační model)

UWE + MDD Autoři metodiky UWE se snaží svojí metodiku vylepšit s pomocí koncepce MDD (Model Driven Development.)  Business Model (CIM = Computation Independent Model)  Platform Independent Design Models (PIM)  Platform Specification Models (PSM)

Vztah mezi WebRE a UWE Jedná se vlastně o dva různé modely. Přechod mezi nimi je založen na transformaci. Pro popis transformace se využívá QVT (Queries/Views/Transfor mations)

WebRE/UWE Práce dále pokračují  Projekt MAEWA (Modellbasierte Entwicklung von Web- Anwendungen). Rozvoj v oblastech:  Modelování webových aplikací řízených workflow.  Automatizované generování webových aplikací.  Validace modelů a kódu webových aplikací.

Trendy ve webových metodikách Snaha o využití moderních konceptů vývoje systémů, jako je například MDA, MDD, MDE. Snaha o pevné teoretické základy postavené na ontologiích. Snaha o přesný a formální popis jednotlivých metod, pojmů a diagramů. Například s využitím deskriptivní logiky. Snaha o metodický přesný popis přechodů mezi jednotlivými modely v té které metodice užívanými. Například od konceptuálního modelu k modelu navigace a prezentace. Snaha o využití standardních nástrojů jaké jsou UML, XML a další. Snaha o pokrytí celého životního cyklu vývoje produktu. Snaha o poskytnutí profesionálního nástroje typu CASE uživatelovi.

Moje dvě cesty k MDA v letošním roce Tvorba software 2002 „UML – několik kritických poznámek„ Tvorba software 2003 „Objektové metodologie – jejich užití a výklad“ Tvorba software 2004 „Kritika některých výkladů objektově orientovaného paradigmatu“ Objekty 2004 „Několik poznámek k porozumění objektového paradigmatu“ Tvorba software 2005 „Zásady konceptuálního totálně objektově orientovaného modelování“ Objekty 2005 „Konceptuální modelování“ Tvorba software 2006 „Konceptuální modelování, formální základy a ontologie“ Objekty 2006 „Ontologické základy konceptuální normalizace“ Tvorba software 2007 „Modely, modelování, MDA a UML“ Tvorba software 2001 „Tvorba webových sídel jako inženýrský úkol“ Objekty 2001 „Object-Oriented Hypermedia Design Model“ Tvorba software 2002 „Metodologie OOHDM, jazyk Lua a tvorba webových aplikací“ Tvorba software 2003 „Metodologie orientované na tvorbu webových sídel“ Objekty 2003 „WebML – Objektově orientovaná metodika pro tvorbu webových sídel“ Tvorba software 2004 „Metodiky orientované na tvorbu webových sídel“ Tvorba software 2005 „Metodika UWE (UML based Web Engineering)“ Tvorba software 2006 „Novinky ve webových metodikách a metodika OntoWeaver“ Tvorba software 2007 „Novinky ve webových metodikách a metodika WebRE/UWE“ MDA je logické završení snahy o správné a efektivní využití modelování ve všech fázích životního cyklu produktu.

Moje dvě cesty k MDA v letošním roce Tvorba software 2002 „UML – několik kritických poznámek„ Tvorba software 2003 „Objektové metodologie – jejich užití a výklad“ Tvorba software 2004 „Kritika některých výkladů objektově orientovaného paradigmatu“ Objekty 2004 „Několik poznámek k porozumění objektového paradigmatu“ Tvorba software 2005 „Zásady konceptuálního totálně objektově orientovaného modelování“ Objekty 2005 „Konceptuální modelování“ Tvorba software 2006 „Konceptuální modelování, formální základy a ontologie“ Objekty 2006 „Ontologické základy konceptuální normalizace“ Tvorba software 2007 „Modely, modelování, MDA a UML“ Tvorba software 2001 „Tvorba webových sídel jako inženýrský úkol“ Objekty 2001 „Object-Oriented Hypermedia Design Model“ Tvorba software 2002 „Metodologie OOHDM, jazyk Lua a tvorba webových aplikací“ Tvorba software 2003 „Metodologie orientované na tvorbu webových sídel“ Objekty 2003 „WebML – Objektově orientovaná metodika pro tvorbu webových sídel“ Tvorba software 2004 „Metodiky orientované na tvorbu webových sídel“ Tvorba software 2005 „Metodika UWE (UML based Web Engineering)“ Tvorba software 2006 „Novinky ve webových metodikách a metodika OntoWeaver“ Tvorba software 2007 „Novinky ve webových metodikách a metodika WebRE/UWE“