Wykład 7 Metodyki wytwarzania oprogramowania internetowego (2) Wykładowca: dr inż. Mariusz Trzaska
Zagadnienia Wprowadzenie MDD Model Analityczny Projektowy Przykład Podsumowanie Wykorzystano materiały pochodzące z http://uwe.pst.ifi.lmu.de/ Tworzenie portali biznesowych, Wykład 7 2
Model-Driven Web Engineering - UWE Approach Opracowane przez Web Engineering Group z Ludwig-Maximilian-Universität München (LMU). Cechy Wykorzystanie UML, Język modelowania, Metamodel, Proces wytwórczy, Wsparcie ze strony narzędzi. Tworzenie portali biznesowych, Wykład 7 3
Model-Driven Development (MDD) MDD jest oparty na Modelach Metamodelach Transformacjach modeli MDD korzysta z języków do Specyfikowania modeli (UML, BPMN), Opisu metamodeli (UML, MOF, OCL), Definiowania transformacji (Java, ATL). Tworzenie portali biznesowych, Wykład 7 4
Model analityczny Wymagania funkcjonalne opisane są przez: Diagram przypadków użycia Workflows Dane specyfikowane przy użyciu modeli dziedzinowych Tworzenie portali biznesowych, Wykład 7 5
Model projektowy Aspekt informacyjny Model zawartości Struktura hipertekstu Model nawigacyjny Rozłożenie elementów (layout) Model prezentacji Funkcjonalność Model procesów Tworzenie portali biznesowych, Wykład 7 6
Przykład Prosty portal muzyczny Inspirowany przez www.mp3.com Informacje o albumach, wykonawcach i artystach, Pobieranie danych dla zarejestrowanych użytkowników z przedpłaconym kontem, Doładowywanie konta, Tworzenie portali biznesowych, Wykład 7 7
Przykład (2) Modelowanie wymagań diagram UML UC Tworzenie portali biznesowych, Wykład 7 8
Przykład (3) Modelowanie zawartości Tworzenie portali biznesowych, Wykład 7 9
Przykład (4) Model użytkownika Diagram klas UML Dodatkowa informacja <<visitclass>> Tworzenie portali biznesowych, Wykład 7 10
Przykład (5) Modelowanie nawigacji Cele Zapamiętanie węzłów oraz połączeń, Określenie możliwych ścieżek. Diagram klas UML z dodatkami <<navigation class>> <<navigation link>> Tworzenie portali biznesowych, Wykład 7 11
Przykład (6) Modelowanie nawigacji c.d. <<index>> dla liczności > 1 <<menu>> klasy z liczbą asocjacji > 1 <<guidedtour>>, <<query>>, <<home>>, <<landmark>> Tworzenie portali biznesowych, Wykład 7 12
Przykład (7) Modelowanie nawigacji c.d. Menu Tworzenie portali biznesowych, Wykład 7 13
Przykład (8) Modelowanie nawigacji c.d. Tworzenie portali biznesowych, Wykład 7 14
Przykład (9) Modelowanie procesów Klasa/klasy, <<process class>> Powiązania określają punkty we/wy, <<process link>> Tworzenie portali biznesowych, Wykład 7 15
Przykład (10) Modelowanie procesów c. d. Tworzenie portali biznesowych, Wykład 7 16
Przykład (11) Modelowanie procesów c. d. Doprecyzowanie d. aktywności, np. Login Tworzenie portali biznesowych, Wykład 7 17
Przykład (12) Model prezentacji «presentationclass», «presentationgroup» «presentationpage» «presentationalternatives» Tworzenie portali biznesowych, Wykład 7 18
Dostosowywanie Różne rodzaje treści Nawigacji Kolejność powiązań, Opis, Ukrywanie, np. linki tylko dla zarejestrowanych użytk. Prezentacji Język, Układ. Tworzenie portali biznesowych, Wykład 7 19
Metamodel UWE Rozszerzenie, a nie modyfikacja UML 2.0. Wykorzystanie dziedziczenia. OCL opisuje semantykę nowych elementów. light-weighed extension of UML. Kompatybilność z MOF. Wykorzystanie XML. Tworzenie portali biznesowych, Wykład 7 20
Wsparcie narzędziowe Cele Wykorzystanie notacji UWE do tworzenia aplikacji webowych. Rozdzielenie: nawigacji, obsługi procesów, prezentacji, itp. Sprawdzanie poprawności modelu Generowanie kodu. Tworzenie portali biznesowych, Wykład 7 21
Wsparcie narzędziowe (2) Rozszerzenie ArgoUML Open source Generowanie XMI jako podstawy do tworzenia kodu Oparty na UML 1.x Rozszerzenie MagicDraw UML 2 XMI Komercyjny Tworzenie portali biznesowych, Wykład 7 22
Wsparcie narzędziowe (3) Tworzenie portali biznesowych, Wykład 7 23
Wsparcie narzędziowe (4) IDE Eclipse PIM2PIM transformations (ATL) PIM2PSM & PSM2Code (ATL) Język ATL Spring Framework Java Server Pages Tworzenie portali biznesowych, Wykład 7 24
Podsumowanie Propozycja UWE jest kolejnym rozwiązaniem opartym na MDA. Realizacja przedstawionego, dość prostego przykładu biznesowego skutkowała dużą ilością niezbyt czytelnych diagramów. W związku z tym, wydaje się, że całość jest zbyt skomplikowana do wytwarzania prawdziwych systemów biznesowych. Tworzenie portali biznesowych, Wykład 7 25