Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Copyright © Politecnico di Milano

Podobne prezentacje


Prezentacja na temat: "Copyright © Politecnico di Milano"— Zapis prezentacji:

1 Copyright © Politecnico di Milano
Kurs WebML 1. Wprowadzenie Copyright © Politecnico di Milano March 2003 Translation: Kamil Żyła, Politechnika Lubelska

2 Translation: Kamil Żyła, Politechnika Lubelska
Plan Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Modele: struktura, kompozycja, nawigacja Przegląd narzędzia WebRatio Rola XML w modelach WebML Moduł „Wprowadzenie” zawiera przegląd zagadnień związanych z projektowaniem aplikacji, modelami WebML oraz narzędziami. Translation: Kamil Żyła, Politechnika Lubelska

3 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

4 Potrzeba 1: Tworzenie aplikacji sterowane modelami
Dotychczasowe podejście Projektowanie aplikacji internetowych zarządzających dużymi ilościami danych jest oparte na metodykach zapożyczonych z różnych dziedzin (bazy danych, inżynieria oprogramowania, …) Brak wsparcia dla projektowania aplikacji internetowych, zarządzających dużymi ilościami danych, sterowanego modelami Nawigacja silnie uzależniona od struktury bazy danych Dużo ręcznie pisanego kodu Duży wysiłek związany z prototypowaniem Wielu specjalistów ds. rynku informatycznego wskazuje, że konserwacja i rozwój aplikacji zarządzających dużymi ilościami danych staje się coraz bardziej skomplikowana i kosztowna, ze względu na 3 czynniki: Aplikacje muszą dostarczać treść do szerokiej gamy urządzeń dostępowych o różnych możliwościach m.in. PC, PDA, telefony komórkowe, cyfrowa telewizja. Współzawodnictwo pomiędzy dostawcami aplikacji w dziedzinie dostosowania aplikacji do potrzeb jej użytkowników np. myYahoo, myCDNow. Brak wystarczającej liczby specjalistów IT, która byłaby w stanie zaspokoić potrzeby rynku. Istotne jest zwrócenie uwagi na konceptualne modelowanie aplikacji w celu zwiększenia poziomu abstrakcji na jakim operują twórcy aplikacji – tworzenie modułów wielokrotnego użycia przenoszalnych pomiędzy aplikacjami oraz automatyczna generacja kodu. Translation: Kamil Żyła, Politechnika Lubelska

5 Potrzeba 2: Zwiększenie złożoności aplikacji
Złożoność aplikacji Czynniki zwiększające złożoność współczesnych aplikacji internetowych Obsługiwane urządzenia dostępowe (PC, PDA, WAP, telefony 3G, cyfrowa TV, videotext) Kompleksowe usługi (myYahoo, myCDNOW,…) Czynniki te wpływają na koszt Stworzenia aplikacji Rozwoju i konserwacji aplikacji Wielu specjalistów ds. rynku informatycznego wskazuje, że konserwacja i rozwój aplikacji zarządzających dużymi ilościami danych staje się coraz bardziej skomplikowana i kosztowna, ze względu na 3 czynniki: Aplikacje muszą dostarczać treść do szerokiej gamy urządzeń dostępowych o różnych możliwościach m.in. PC, PDA, telefony komórkowe, cyfrowa telewizja. Współzawodnictwo pomiędzy dostawcami aplikacji w dziedzinie dostosowania aplikacji do potrzeb jej użytkowników np. myYahoo, myCDNow. Brak wystarczającej liczby specjalistów IT, która byłaby w stanie zaspokoić potrzeby rynku. Istotne jest zwrócenie uwagi na konceptualne modelowanie aplikacji w celu zwiększenia poziomu abstrakcji na jakim operują twórcy aplikacji – tworzenie modułów wielokrotnego użycia przenoszalnych pomiędzy aplikacjami oraz automatyczna generacja kodu. Translation: Kamil Żyła, Politechnika Lubelska

6 Potrzeba 3: Zmniejszenie liczby niezbędnego personelu
Podejście do projektowania Potrzeba zwiększenia poziomu abstrakcji Potrzeba skupienia się na analizie i projektowaniu, zamiast na czasochłonnym ręcznym kodowaniu stron aplikacji Potrzeba skupienia się na optymalizacji i analizie wydajności przez inżynierów IT Potrzeba skupienia się na procesie tworzenia przez grafików komputerowych Potrzeba większej separacji ról w projekcie Wielu specjalistów ds. rynku informatycznego wskazuje, że konserwacja i rozwój aplikacji zarządzających dużymi ilościami danych staje się coraz bardziej skomplikowana i kosztowna, ze względu na 3 czynniki: Aplikacje muszą dostarczać treść do szerokiej gamy urządzeń dostępowych o różnych możliwościach m.in. PC, PDA, telefony komórkowe, cyfrowa telewizja. Współzawodnictwo pomiędzy dostawcami aplikacji w dziedzinie dostosowania aplikacji do potrzeb jej użytkowników np. myYahoo, myCDNow. Brak wystarczającej liczby specjalistów IT, która byłaby w stanie zaspokoić potrzeby rynku. Istotne jest zwrócenie uwagi na konceptualne modelowanie aplikacji w celu zwiększenia poziomu abstrakcji na jakim operują twórcy aplikacji – tworzenie modułów wielokrotnego użycia przenoszalnych pomiędzy aplikacjami oraz automatyczna generacja kodu. Translation: Kamil Żyła, Politechnika Lubelska

7 Zalety projektowania sterowanego modelami
Rygorystyczne podejście do projektowania Umożliwia zredukowanie wysiłku związanego z tworzeniem aplikacji (koszt i czas) Pozwala na większe ustrukturyzowanie procesu tworzenia aplikacji Efekty procesu tworzenia aplikacji cechują się większą użytecznością i spójnością Powstałe modele stanowią jednocześnie dokumentację i są zawsze zgodne z aktualnym stanem aplikacji Możliwość szybkiego stworzenia prototypu aplikacji Translation: Kamil Żyła, Politechnika Lubelska

8 Wymagania modelowania aplikacji internetowych
Wyrazistość Zdolność do prezentowania zagadnień występujących w świecie rzeczywistym Uwzględnienie w projektowaniu aplikacji najczęściej wykorzystywanych struktur Łatwość użycia Intuicyjna notacja Przejrzysta składnia Kontrola spójności Zdolność do implementacji Wydajne mapowanie do fizycznych struktur danych Elastyczny sposób generowania kodu na podstawie zdefiniowanego zachowania Pojawia się pytanie, jakie wymagania powinien spełniać poprawny model konceptualny. Za centralne zagadnienia efektywnego języka modelowania uważamy: Wyrazistość (zdolność do ekspresji) – co oznacza, że język powinien być zdolny do adekwatnego opisu złożonych aplikacji bez konieczności różnego rodzaju uproszczeń. Powinien wspierać najczęściej wykorzystywane wzorce projektowe. Łatwość użycia – co wymaga intuicyjnej i przejrzystej składni, zrozumiałej również dla osób nie-technicznych i dobrze zdefiniowanej, spójnej semantyki. Zdolność do implementacji – oznacza łatwość mapowania pomiędzy wysokopoziomowymi konceptami a niskopoziomową strukturą niezbędną do zaimplementowania aplikacji. Takie mapowanie powinno uwzględniać możliwość dostosowania do potrzeb rynku oraz być wspomagane przez elastyczną i wydajną technologię generowania kodu źródłowego. Translation: Kamil Żyła, Politechnika Lubelska

9 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

10 Translation: Kamil Żyła, Politechnika Lubelska
Cel WebML WebML skupia się na dostarczeniu ustrukturyzowanego podejścia do projektowania aplikacji internetowych zarządzających dużymi ilościami danych Zbiór powiązanych ze sobą modeli pomaga projektantom w tworzeniu wysokiej jakości aplikacji internetowych Pokrywa większość aspektów projektowania aplikacji internetowych Deprecjonuje użycie starych lub niespójnych metodyk Translation: Kamil Żyła, Politechnika Lubelska

11 Translation: Kamil Żyła, Politechnika Lubelska
Przeznaczenie WebML Dostosowany do aplikacji internetowych zarządzających dużą ilością danych Duża ilość danych Interfejsy dedykowane szerokiemu gronu klientów Łatwe przeszukiwanie Zorientowanie na przeglądanie Personalizacja Dynamicznie generowana struktura, nawigacja, prezentacja treści WebML jest złym wyborem dla Małych aplikacji internetowych (strony domowe, …) Statycznych stron internetowych Translation: Kamil Żyła, Politechnika Lubelska

12 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

13 Translation: Kamil Żyła, Politechnika Lubelska
Modele WebML WebML: konceptualny język służący do wysokopoziomowego projektowania aplikacji internetowych zarządzających dużymi ilościami danych Modele Danych: organizacja danych Derywacji: definicja danych redundantnych (wartości pochodnych) Kompozycji: definicja stron aplikacji jako zbioru podstron i komponentów publikujących treść Nawigacji: definicja połączeń pomiędzy stronami i komponentami Prezentacji: pozycjonowanie komponentów na stronie i określenie ich wyglądu (w tym grafiki) Translation: Kamil Żyła, Politechnika Lubelska

14 Translation: Kamil Żyła, Politechnika Lubelska
Przegląd modeli WebML Strona = M. Danych + M. Kompozycji + M. Nawigacji + M. Prezentacji encje, relacje komponenty, strony,linki widoki stron style m. nawigacji + m. kompozycji m. danych m. stron aplikacji m. prezentacji Translation: Kamil Żyła, Politechnika Lubelska

15 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

16 Translation: Kamil Żyła, Politechnika Lubelska
Model danych (1) Q: Jakie obiekty są przetwarzane na stronie oraz w jaki sposób są ze sobą powiązane? A: Encja: byt rzeczywisty lub wyobrażony występujący w dziedzinie aplikacji Atrybut: właściwość opisująca encję Relacja: połączenie pomiędzy encjami Hierarchia IS-A: klasyfikacja i grupowanie encji Odpowiednikiem modelu danych jest Diagram związków encji i Diagram klas (notacja UML) Translation: Kamil Żyła, Politechnika Lubelska

17 Translation: Kamil Żyła, Politechnika Lubelska
Model danych (2) Uproszczony diagram związków encji Relacje binarne pomiędzy encjami Hierarchie IS-A Atrybuty encji o prostych typach danych Model derywacji stosowany do wyznaczania wartości pochodnych na podstawie wartości już istniejących Book Author Genre BestSeller Translation: Kamil Żyła, Politechnika Lubelska

18 Translation: Kamil Żyła, Politechnika Lubelska
Model derywacji Wartości pochodne mogą być wyznaczone w prosty sposób przy użyciu WebML-OQL (Object Query Language) Np.: Author.BooksNumber = count(self.Author2Book) BestSeller := Book where Book.Sales > 50,000 Book Author BestSeller Translation: Kamil Żyła, Politechnika Lubelska

19 Translation: Kamil Żyła, Politechnika Lubelska
Model hipertekstowy Q1: Co publikuje informacje w węzłach modelu hipertekstowego? Q2: Jakie są połączenia między węzłami modelu hipertekstowego? Q3: W jaki sposób model hipertekstowy jest prezentowany użytkownikom? A1: komponenty danych (M. Kompozycji) A2: linki (M. Nawigacji) A3: strony (M. Kompozycji) Translation: Kamil Żyła, Politechnika Lubelska

20 Model kompozycji: przykłady komponentów danych
DATAUNIT Publikuje informacje o pojedynczym obiekcie (np. AuthorDetail) Publikuje listę obiektów (np. IndexOfAuthors) content INDEXUNIT content Translation: Kamil Żyła, Politechnika Lubelska

21 Model kompozycji: przykłady renderowania komponentów danych
DATAUNIT Autor imię: XXX nazwisko: YYY fotografia: Author INDEXUNIT Lista autorów S. Ceri P. Fraternali O.Versand Author Translation: Kamil Żyła, Politechnika Lubelska

22 Model kompozycji: strony
Strona jest kontenerem zawierającym komponenty i linki Może zawierać podstrony typu and/or Abstrakcja ekranu, ramki … Może zawierać powiązane ze sobą informacje w celu bardziej wydajnej komunikacji Np.: Lista autorów i wybrany autor są wyświetleni razem na tej samej stronie Author Author Translation: Kamil Żyła, Politechnika Lubelska

23 Model nawigacji: linki
AuthorID jest przekazywane entity: author Book [ author2book ] Linki: Prowadzą z jednego miejsca do drugiego Przenoszą informacje z jednego miejsca do drugiego (w kontekście nawigacji) Inicjują przetwarzanie komponentów (efekt uboczny) Translation: Kamil Żyła, Politechnika Lubelska

24 Translation: Kamil Żyła, Politechnika Lubelska
Typy linków Linki kontekstowe Pomiędzy komponentami Przenoszą kontekst Linki bezkontekstowe Pomiędzy stronami Nie przenoszą kontekstu Voyages Books Translation: Kamil Żyła, Politechnika Lubelska

25 Translation: Kamil Żyła, Politechnika Lubelska
Operacje w WebML W WebML predefiniowano pewne operacje Można definiować operacje dostosowane do potrzeb Np.: Usunięcie autora Create Op. X Author Delete Translation: Kamil Żyła, Politechnika Lubelska

26 Translation: Kamil Żyła, Politechnika Lubelska
Widoki stron Widok stron jest to zbiór stron, który użytkownik może odbierać jako całą aplikację internetową Można definiować oddzielne widoki stron dla różnych urządzeń dostępowych i różnych grup użytkowników Dzięki temu osiągnięto kontrolę dostępu do treści oraz dostosowanie aplikacji do typu urządzenia dostępowego Translation: Kamil Żyła, Politechnika Lubelska

27 Translation: Kamil Żyła, Politechnika Lubelska
Model prezentacji Idea modelu prezentacji Galeria domyślnych stylów prezentacji treści, którą można zastosować do całych widoków stron lub poszczególnych stron aplikacji (domyślnie elementy są pozycjonowane w ramach siatki/tabeli) każdy styl prezentacji treści jest dokumentem XSL Kompatybilność z najlepiej sprzedającymi się narzędziami do edycji i zawansowanego projektowania wyglądu aplikacji Np. rozszerzenia do WebML dla narzędzia Dreamweaver 3 & 4 Translation: Kamil Żyła, Politechnika Lubelska

28 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

29 WebRatio Site Development Studio
Funkcjonalność Projektant modelu danych Kreator wyznaczania wartości pochodnych Projektant modelu hipertekstowego Sprawdzanie poprawności projektu Mapowanie modelu danych do źródeł danych Podstawowe pozycjonowanie komponentów na stronach Automatyczne generowanie aplikacji internetowych w oparciu o modele i zdefiniowane style prezentacji Translation: Kamil Żyła, Politechnika Lubelska

30 Projektant modelu danych
Atrybut Encja Relacja Hierarchia ISA Translation: Kamil Żyła, Politechnika Lubelska

31 Projektant modelu hipertekstowego
Widoki stron Strona/alternatywa Linki Komponenty WebML Komponenty operacji Dozwolone operacje: Tworzenie nowych widoków stron Dodawanie/ usuwanie stron, komponentów, linków Edycja właściwości elementów (panel) Wycinanie &wklejanie Translation: Kamil Żyła, Politechnika Lubelska

32 Translation: Kamil Żyła, Politechnika Lubelska
Wprowadzenie Zalety tworzenia aplikacji internetowych sterowanego modelami Dlaczego WebML ? Co to jest WebML ? Przegląd modeli WebML Przegląd narzędzia WebRatio Rola XML w modelach WebML Translation: Kamil Żyła, Politechnika Lubelska

33 Rola XML w modelach WebML
Wszystkie informacje o modelach składających się na aplikację mogą być przechowywane w plikach XML Pliki XML posiadają definicję typu dokumentu (DTD), która określa formalną strukturę dokumentu XML Automatyczne generowanie stron aplikacji w wybranym języku może być wykonane na podstawie odpowiedniego pliku XSL Translation: Kamil Żyła, Politechnika Lubelska


Pobierz ppt "Copyright © Politecnico di Milano"

Podobne prezentacje


Reklamy Google