Copyright © Politecnico di Milano

Slides:



Advertisements
Podobne prezentacje
Copyright © Politecnico di Milano
Advertisements

Platformy e-learningowe Krzysztof Andrelczyk IS, WIMiIP, III rok
Piotr Czekalski, ZMiTAC, Politechnika Śląska 2003
Projektowanie w cyklu życia oprogramowania
Rafał Hryniów Tomasz Pieciukiewicz
“Przenoszenie złożeniowych rysunków z Autodesk Inventor’a do Autodesk AutoCAD’a z zachowaniem hierarchii” Pająk Barbara.
4. Modelowanie wartości pochodnych
7. Proces tworzenia aplikacji
6. Parametry & Personalizacja
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 28Slide 1 Restrukturyzacja oprogramowania l Reorganizowanie i modyfikowanie istniejącego.
Architektura systemu Gra strategiczna „Strusia Jama”
UML Unified Modeling Language
Co UML może zrobić dla Twojego projektu?
Dokumentowanie wymagań w języku XML
Enteprise Java Beans Emil Wcisło.
Tworzenie stron w języku WML jest zbliżone do tworzenia stron w HTML. W obydwu przypadkach używa się do tego celu znaczników (tagów). Zadaniem znaczników.
Projektowanie i programowanie obiektowe II - Wykład II
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
Inżynieria Oprogramowania
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Wykład 3 Analiza i projektowanie strukturalne
Wykład 2 Cykl życia systemu informacyjnego
Błędy popełniane przy tworzeniu prezentacji – zadanie dodatkowe
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.
Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska.
System webowy do tworzenia kolektywnych prototypów aplikacji sieciowych i mobilnych Łukasz Przywarty
Systemy zarządzania treścią Wykład 1
UML 2.x Robert Pająk.
Kontrola spójności modeli UML za pomocą modelu przestrzennego DOD
Model przestrzenny Diagramu Obiegu Dokumentów
Bazy danych.
Budowanie tabel i relacji
SQL - Structured Query Language
Zarządzanie informacją
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
IMPEX GEO Jeden z największych dostawców sprzętu pomiarowego dla zastosowań geodezyjnych i GIS, dystrybutor firm Trimble, Nikon i Spectra Precision. Firma.
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Wprowadzenie do UML dr hab. inż. Kazimierz Subieta profesor PJWSTK.
Modelowanie obiektowe Diagramy klas
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Wprowadzenie do spisów treści j a następnie naciśnij klawisz F5 lub kliknij pozycję Pokaz slajdów > Od początku, aby rozpocząć kurs. Na pasku komunikatów.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Model obiektowy bazy danych
Diagram klas Kluczowymi elementami są: klasy (class)
Walidacja danych alina suchomska.
HTML (ang. HyperText Markup Language ) – język do tworzenia stron internetowych opierający się na znacznikach, czy inaczej je nazywając – tagach. Język.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Projektowanie Aplikacji Internetowych Artur Niewiarowski Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska.
Podstawy języka skryptów
Formatowanie dokumentów
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.
Modelowanie model związków encji
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.
Notacja nawigacji stron www Kamil Gołębicki s1843 PJWSTK, 2006.
 Podstawowy składnik.NET Framework  Technologia tworzenia w pełni dynamicznych stron internetowych działających po stronie serwera  Zorientowanie na.
ASP.NET Tworzenie i zarządzanie wyglądem aplikacji, tworzenie mapy witryny. Kontrolki nawigacyjne.
Temat: Tworzenie bazy danych
Inżynieria systemów informacyjnych
Wzorzec MVC na przykładzie CakePHP
T. 18. E Proces DGA - Działania (operatorka).
PROJEKTOWANIE APLIKACJI INTERNETOWYCH
Projektowanie aplikacji internetowych
Inżynieria Oprogramowania Laboratorium
Projektowanie aplikacji internetowych
Aplikacje i usługi internetowe
Zapis prezentacji:

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

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

Projektant modelu danych Atrybut Encja Relacja Hierarchia ISA Translation: Kamil Żyła, Politechnika Lubelska http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com

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 http://www.webratio.com