MDA – Model Driven Architecture

Slides:



Advertisements
Podobne prezentacje
Piotr Czekalski, ZMiTAC, Politechnika Śląska 2003
Advertisements

Modelowanie przypadków użycia
Projektowanie w cyklu życia oprogramowania
Standardy w zakresie systemów rozproszonych i baz danych
Katedra Mikroelektroniki i Technik Informatycznych Politechniki Łódzkiej Inżynieria oprogramowania (IO) Wykłady: mgr inż. Sławomir Wróblewski Godziny przyjęć:
Wprowadzenie do C++ Zajęcia 2.
Formalizacja i uwiarygodnianie Iteracyjny proces syntezy modeli
Polsko-Japońska Wyższa Szkoła Technik Komputerowych
Język UML (Unified Modelling Language)
UML Unified Modeling Language
PySBQL Język zapytań dla obiektowych baz danych. Aplikacje bazodanowe Główny nurt budowania aplikacji opiera się na połączeniu: SQL JDBC Java Jak wyświetlić
Co UML może zrobić dla Twojego projektu?
Pakiety i ATD 1 Definicja. Pakietem albo jednostką programową nazywamy grupę logicznie powiązanych elementów, które mogą być typami, podtypami, obiektami.
Projektowanie systemów informacyjnych
Diagramy klas w języku UML
Enteprise Java Beans Emil Wcisło.
Quartz. Wstęp Framework stworzony do budowy aplikacji biznesowych Metodologia która łączy prototypowanie, modelowanie wizualne oraz automatyzację budowy.
Rational Unified Process
Wzorce projektowe w J2EE
Projektowanie - wprowadzenie
Dalsze elementy metodologii projektowania. Naszym celem jest...
Analiza, projekt i częściowa implementacja systemu obsługi kina
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Projekt zespołowy aplikacji sieciowej
SZPIF – Harmonogram, Opis narzędzi, Schemat bazy danych
C.d. wstępu do tematyki RUP
Infrastruktura języka UML w wersji 2.2
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Adam Gabryś , v1.1,
Rozwój aplikacji przy wykorzystaniu ASP.NET
Stanisław Jerzy Niepostyn, Ilona Bluemke Instytut Informatyki,
UML 2.x Robert Pająk.
Wykład 1 – część pierwsza
Źródła: podręcznikopracował: A. Jędryczkowski.
Microsoft Solution Framework
Inż. Łukasz Antoniak Promotor: dr inż. Piotr Gawrysiak Politechnika Warszawska, Wydział Elektroniki i Technik Informacyjnych, 2010.
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
XML – eXtensible Markup Language
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
Podsumowanie metodologii OMT
Programowanie obiektowe – język C++
Programowanie obiektowe 2013/2014
Pod kierownictwem dr hab. inż. Piotra Zaskórskiego prof. WWSI
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Unified Modeling Language - Zunifikowany Język Modelowania
Wprowadzenie do UML dr hab. inż. Kazimierz Subieta profesor PJWSTK.
Programowanie w języku C++
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC
Service Oriented Architecture
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Domain Specific Language Mac Michał Programujący architekt, konsultant.
Model obiektowy bazy danych
Diagram klas Kluczowymi elementami są: klasy (class)
Walidacja danych alina suchomska.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Diagram klas Diagramy klas służą do obrazowania statycznych aspektów projektowanych systemów jako: Projekt struktury logicznej baz danych Projekt składników.
Projekt modułu Nazwa całego projektu Nazwa modułu Imię i Nazwisko Inżynieria Oprogramowania II dzień, godzina rok akademicki W szablonie na niebiesko zamieszczone.
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Agnieszka Kujża Konrad Drukała
Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM.
Platforma .Net.
E. Stemposz. Wprowadzenie do UML, Wykład 1, Slajd 1/24 Wykład 1 Wprowadzenie do UML dr inż. Ewa Stemposz
E. Stemposz. Rational Unified Process, Wykład 10, Slajd 1 wrzesień 2002 Powrót Studia Podyplomowe IT w Biznesie Rational Unified Process Wykład 10 Przepływ.
Architektura Rafał Hryniów. Architektura Wizja projektu systemu, którą dzielą twórcy Struktura komponentów systemu, ich powiązań oraz zasad i reguł określających.
Inżynieria systemów informacyjnych
Projektowanie aplikacji internetowych
Wykład 1 – część pierwsza
Zapis prezentacji:

MDA – Model Driven Architecture Grupa: I9H1S4 Podgrupa: pierwsza Wykonali: Piotr Litwiniuk, Bartosz Wołowicz, Aleksander Wiśniewski, Piotr Kwiatek, Mariusz Kluska, Magdalena Bęczkowska, Łukasz Skibniewski, Paweł Głębocki

Bezpośrednia reprezentacja problemu Manifest MDA MDA Otwarte standardy Bezpośrednia reprezentacja problemu Automatyzacja Czyli to co przyświeca firmie OMG (koncentrowanie się wokół problemu, nie technologii, to co nie jest kreatywne - automatyzacja, wykorzystanie open-source, ponowne użycie)

Oddzielenie tego co trwałe od tego co zmienne Zmieniają się technologie, architektury, platformy, SO, stała – dziedzina problemu Kluczowa koncepcja: Oddzielenie tego co trwałe od tego co zmienne

Wykorzystywane standardy UML (Unified Modeling Language) jako rozszerzalny obiektowy język modelowania z wizualną notacją: wsparty specjalizowanymi profilami może służyć tworzeniu modeli CIM, PIM, PSM. + jego rozszerzenia dziedzinowe (SysML, DoDAF, SoaML) MOF (Meta Object Facility) pojęciowo zgodny z UML – może być traktowany jako podzbiór. Służy definiowaniu innych metamodeli oraz konstrukcji ustandaryzowanych repozytoriów metadanych, pozwalających przechowywać ich wystąpienia. CWM (Common Warehouse Metamodel) – definiuje abstrakcyjne własności z obszaru hurtowni danych. XMI (XML Metadata Interchange) – oparty na MOF standard XML-owego zapisu modeli (UML lub innych zdefiniowanych w terminach MOF), nie diagramów, celem ich wymiany między narzędziami.

Punkty widzenia systemu więcej abstrakcji Model niezależny od obliczeń – Computation Independent Model (CIM) Model niezależny od platformy – Platform Independent Model (PIM) Model specyficzny dla platformy – Platform Specific Model (PSM) Różne poziomy abstrakcji więcej specyfikacji Modele muszą wspierać wspólną semantykę

CIM Odnosi się do dziedziny problemu lub modelu biznesowego Prezentuje system na najwyższym poziomie abstrakcji Jego celem jest zdefiniowanie problemów do rozwiązania z pominięciem sposobów ich implementacji Nie precyzuje zakresu odpowiedzialności oprogramowania Używamy jedynie słownictwa z dziedziny problemu, do reprezentacji pojęć biznesowych, które są niezależne od oprogramowania systemu W modelu nie znajdujemy żadnych informacji związanych z komputerowym wspomaganiem dla rozwiązywanych problemów

PIM Abstrakcyjna specyfikacja systemu Używany przez architektów i projektantów do opisu oprogramowania dla systemu na wysokim poziomie, niezależnego od docelowej platformy implementacyjnej Opis ten pozwoli na jego przekształcenie na wiele różnych platform implementacyjnych, wskazując: SO, CPU, j. programowania czy biblioteki Mniej abstrakcyjny niż CIM (stanowi jego uszczegółowienie) Bliższy implementacji, jednak bezpośrednio jej nie określa

PSM PSI proste przełożenie decyzji z modelu platformowego Model odwzorowany na konkretne rozwiązania wybranej platformy Specyfikuje rozpoznane w modelu PIM szczegóły konstrukcyjne i technologiczne, określając, jak będą one implementowane w docelowej platformie rozwiązania Wykorzystuje technologie projektowe, infrastrukturę i wzorce projektowe PSI proste przełożenie decyzji z modelu platformowego

Transformacje Sam UML to za mało, potrzebne definicje przekształceń (zbiór reguł, określających, na jakie elementy oferowane przez daną platformę informatyczną przekształcić elementy z PIM) Dla systemów czasu rzeczywistego, językiem opisu akcji (semantyk akcji) - SDL Dążymy do uruchamialnego UML’a

Uszczegółowienie modelu CIM PIM PSM PSI Realizacja modelu Uszczegółowienie modelu Generacja kodu CIM – powiązane z przypadkami użycia wymagania i szczegółowe diagramy sekwencji, aktywności i stanów PIM – formalna specyfikacja (w UML) struktury i funkcji systemu, która abstrahuje od szczegółów technologicznych PSM – dodanie szczegółów technologicznych (np. middleware, SO, sieć, CPU) PSI – źródła i skompilowane kody wyprodukowane z modeli, przeznaczone dla wybranej platformy docelowej („target platfrom”)

Transformacja PIM -> PSM Specyfikacja platform Specyfikacja systemu Wybór platformy Transformacja specyfikacji do realizacji na platformie Marks (oznaczenia) = typy, stereotypy, role, ograniczenia itp. i wzorce projektowe

Podejście przez opracowanie („ręczne”) - „Elaborationist approach” PIM PSM PSI OCL 3GL uruchomienie Wszystkie etapy wymagają udziału człowieka Reverse engineering czasem jest konieczny (utrata zgodności) Język akcji nie jest używany, logika aplikacji specyfikowana na poziomie kodu w językach programowania (zależnych od platformy)

Podejście przez transformacje („auto”) - „Translationist approach” PIM PSM PSI uruchomienie Język akcji To co nie jest kreatywne - automat Tylko etap PIM wymaga udziału człowieka Reverse engineering nie jest potrzebny Język akcji jest potrzebny, aby określić logikę aplikacji na poziomie PIM w sposób niezależny od platformy Sam PIM może być wykonywalny i testowany (krótki cykl wytwarzania oprogramowania), jeśli nieskomplikowany język akcji – osoby nieprogramujące mogą uczestniczyć w całym cyklu tworzenia (w ramach UML)

Dziękujemy za uwagę