Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria.

Ähnliche Präsentationen


Präsentation zum Thema: "ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria."—  Präsentation transkript:

1 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering: XML und Anwendungen Vortragsunterlagen zur Vortragsreihe MSc Multimedia und MSc NewMediaManagement an der Donauuniversität Krems

2 ZT Schranz Informationstechnologie KEG 2 Datenschutz und Datensicherheit – Das Datenschutzgesetz Daten im Internet – Grundbegriffe Internet/WWW (noch zu vertiefen) ‏ – Basic Authentication Internet Security – Sicherheit im Internet, technische Maßnahmen für den E-Commerce – mechanische und logische Sperren Sicherheitsverfahren, gesetzliche Vorgaben – Singaturgesetz, E-Commerce-Gesetz, – Fernabsatzgesetz Rückblick Infoblock 1

3 ZT Schranz Informationstechnologie KEG 3 Internet Services – Definitionen, Protokolle, Einsatzbereiche Das World Wide Web – Einsatzbereich – HTTP Web Service Engineering – Umsetzung von komplexen Services – Service Management Technisch Inhaltlich Rückblick Infoblock 2

4 ZT Schranz Informationstechnologie KEG 4 Datenbanksysteme – Webbasierter Datenbankeinsatz Informations-Architektur – Management von Inhalten am Web Web Content Management Ansätze – praktische Einblicke Web Application Server – Moderne Ansätze im technischen Web Service Management Business Intelligence – Benutzerdefinierte Webapplikation unter Einbeziehung von Datenbanken und dynamischen Webabfragen Rückblick Infoblock 3

5 ZT Schranz Informationstechnologie KEG 5 Rückblick Infoblock 4 Specific Web Applications – Content Syndication Software Engineering, Methoden – WFM, V-Modell Semantic Web – Metadaten – EU Projekt OmniPaper – Prototype Test & Evaluation Konzepte und Technologien im Web Engineering – eine theoretische Einführung

6 ZT Schranz Informationstechnologie KEG 6 Rückblick Infoblock 5 Metadaten und XML Grammatik, Strukturen, Verwandtschaften Semantic Web – Metadaten – SOAP, EU Projekt Nedine XSL: Die XML Stylesheet Language – Einfache Beispiele

7 ZT Schranz Informationstechnologie KEG 7 Rückblick Infoblock 6 XML Grammatik und Style Sheets XML Applikationen – Anwendungen in unterschiedlichsten Domänen XML-basierte Projekte – Nachrichtensyndikate – NEDINE EU Projekt Nachrichtennetzwerk XML in Grafikumgebungen – Scaleable Vector Graphics - SVG – Arbeiten mit Vektorgrafiken und Animationen Praktischer Einsatz von XML-Werkzeugen – Altova‘s XMLSpy, Adobe‘s SVG-Viewer

8 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Web 2.0 Schwerpunkt AJAX

9 ZT Schranz Informationstechnologie KEG 9 Web 2.0 - Agenda Was ist Web 2.0Philosophie (30min) ‏ Begriffe und Charakteristiken (15min) ‏ Web 2.0 Details zum Konzept (90min) ‏ Technologien und Grundlagen (60min) ‏ Demonstration und Übung (90min) ‏ Komplexes Anwendungsprojekt (90min) ‏ = Beginn des Coding-Workshops Workshop Anwendungsprojekt (2. Tag)

10 ZT Schranz Informationstechnologie KEG 10 Web 2.0 Was ist Web 2.0 Philosophie – Anschauung des Webs aus Sicht einer neuen Nutzergruppe – Hype oder Innovation? Technik – Nichts neues, sinnvoll koordinierte und innovative Anwendung existierender Technologien – AJAX (Asynchronous Javascript and XML) ‏

11 ZT Schranz Informationstechnologie KEG 11 Web 2.0 Schwerpunkt AJAX - Aktuelle Unterlagen im Skriptum angegeben - Umfassendes Übungsbeispiel im PC-Labor http://wae.culturall.com/duk/nmm/duk7-ws07- web2.pdf http://wae.culturall.com/duk/nmm/duk7-ws07- web2.ppt

12 ZT Schranz Informationstechnologie KEG 12 Was ist das Web 2.0 ? Neuauflage eines Erfolgsmediums? – Was ist dann Web 1.0? Web 1.0 – Eine Technologie? – Ein Konzept? – Die Summe von Benutzeranforderungen? – Eine Auffassung eines IKT-Mediums?

13 ZT Schranz Informationstechnologie KEG 13 Was ist das Web 2.0 ? Populistischer Begriff mit inflationärem Eigenleben – große Euphorie im Internet – Weniger technisch als marketingmäßig betrieben Web 2.0 ist ein Metabegriff für... – die Beschreibung einer Reihe neuer/aktueller interaktiver Techniken und Dienste des Internets – speziell des WWW – und einer geänderten Wahrnehmung des Internets

14 ZT Schranz Informationstechnologie KEG 14 Web 2.0 als Inbegriff eines Netzverständnisses Web 2.0 beschreibt vage eine veränderte Wahrnehmung und Nutzung des WWW – Organisatorisch: Nutzer verändern bzw. beeinflussen im Internet bereitgestellte Inhalte in zunehmenden Maße selbst Wikis, Weblogs, Bild- und Video-Sharing Portale – Surreal: Begriff als Marketing-Instrument eingeführt Deskriptiv für bestimmte Entwicklungen Der Begriff beschreibt kein reales Objekt (etwa vergleichbar mit Software-Version), sondern ist das Ergebnis eines Synergieeffektes Eine Gruppe von Nutzern empfindet das Gefühl einer einschneidenden Veränderung, ohne es auf konkrete Werkzeuge oder Technologien zurückführen zu können

15 ZT Schranz Informationstechnologie KEG 15 Web 2.0 als Inbegriff eines Netzverständnisses Kritik an der Verwendung des Begriffes – unscharf, beliebig verwendbar Etwa um Popularität von Angeboten oder Techniken zu fördern Oder um vorübergehende Trends wichtiger erscheinen zu lassen – Aus technischer Sicht nichts Neues Kombination von bereits Ende der 90er entwickelten Technologien Jetzt durch Verbreitung des Webs eben großflächiger verfügbar

16 ZT Schranz Informationstechnologie KEG 16 Web 2.0 als Inbegriff eines Netzverständnisses Der Weg zum neuen Netzverständnis – WWW ursprünglich statische Dokumente – Um wachsende Menge an Seiten effizient zu bearbeiten wurden auf Basis des WWW Datenbankbasierte Systeme Web Content Management Systeme entwickelt – Vermehrter Einsatz und benutzerfreundliche Interfaces führten dazu, dass sich die Wahrnehmung des Begriffs „Internet“ seit etwa 2005 verändert

17 ZT Schranz Informationstechnologie KEG 17 Web 2.0 als Inbegriff eines Netzverständnisses Veränderung des Internet-Verständnis – Content: Private öffentliche Inhalte – Rollen: Editoren Benutzer Vermehrter Einsatz und benutzerfreundliche Interfaces führten dazu, dass sich die Wahrnehmung des Begriffs „Internet“ seit etwa 2005 verändert – Keine Trennung von lokalen und zentralen Datenhaltungen (z.B. Foto-Sharing) ‏ – Verschwindende Grenzen zwischen lokalen und netzbasierten Anwendungen Automatisches Nachladen und Aktualisieren, selbstständiger Zugriff auf Internet-Komponenten, Browser als Benutzerschnittstelle

18 ZT Schranz Informationstechnologie KEG 18 Web 2.0 als Inbegriff eines Netzverständnisses Weitere Veränderungen zum Begriff „Internet/Web 2.0“ – Keine Trennung Editor Nutzer – Weniger Trennung von einzelnen Diensten Bestehende Webinhalte werden über offene Schnittstellen nahtlos in Form von Mashups zu neuen Diensten (re-)kombiniert – Zugang für weniger Technik-versierte Benutzer um ein Vielfaches erleichtert Aktivere und zahlreichere Teilnahme an Informationsverbreitung bzw. Meinungsverbreitung begründet den Begriff „social software“

19 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Entstehungsgeschichte des Begriffes, Charakteristiken von Web 2.0

20 ZT Schranz Informationstechnologie KEG 20 Dale Dougherty (O‘Reilly) und Craig Cline (MediaLive) sprachen von Renaissance – Regeln und Geschäftsmodelle werden sich verändern – Namentliche Vergleiche (z.B. DoubleClick war Web1.0, Google AdSense ist Web2.0...) – Jährliche Konferenz, zuerst von O‘Reilly und MediaLive im Oktober 2004 einberufen Der Begriff Web 2.0

21 ZT Schranz Informationstechnologie KEG 21 Der Begriff Web 2.0

22 ZT Schranz Informationstechnologie KEG 22 Charakteristika von Web 2.0 Anwendungen – Web als Plattform – Daten-getriebene Anwendungen – Verstärke Vernetzung durch eine „Architektur des Mitwirkens“ – Innovation beim Aufbau von Systemen und Seiten (durch Wiederverwendung, ähnlich Open Source) ‏ – Einfache Geschäftsmodelle – Ende des klassischen SW-Lebenszyklus, die Projekte befinden sich immerwährend im Beta-Stadium Schlüsselprinzipien zur Charakterisierung

23 ZT Schranz Informationstechnologie KEG 23 Eingesetze Technologien, die unter Web 2.0 vage umschrieben werden, ändern sich ständig – Zuordenbare Anwendungen Abonnementdienste RSS/Atom (Austausch zwischen Websites) ‏ Techniken, die Web-Anwendungen wie klassiche Desktopanwendungen erscheinen lassen (ajax) ‏ Weblogs, soziale Netzwerke, Webservices – Daraus => Forderungen an Web 2.0 Anwendungen Netzbasierte Anwendung, browsergesteuert Dynamisch, von usern gesteuert/befüllt Personalisierte Oberflächen Editierung, Kommentierung, Gefühl der Zusammengehörigkeit (Community) ‏ Technologien im Web 2.0

24 ZT Schranz Informationstechnologie KEG 24 Im Begriff Web 2.0 sind u.a. Aspekte des SW enthalten – Soziale Netzwerke wie FOAF – Entwicklung von Folksonomy – Weblogs – Soziale Lesezeichen, Kommentare – Wikis Die Herangehensweise ist aber unterschiedlich – Etwa ist die Folksonomy des Web2.0 von den Usern entwickelt, die Ontologien des Semantic Webs stammen von Autoren/Experten Web 2.0 und Semantic Web

25 ZT Schranz Informationstechnologie KEG 25 Kritik am Web 2.0 Kritik zum vagen Begriff kommt auch von ganz hoher/kompetenter Stelle – Tim Berners-Lee bezeichnet Web als „Jargon, von dem keiner auch nur weiß, was er bedeuten soll“ – Seiner Meinung nach ist das angeblich „neue Netzverständnis“ des Web2.0 nichts anderes als das ursprüngliche Netzverständnis, das bereits dem Web1.0 zugrunde lag.

26 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Web 2.0 genau inspiziert: Arbeitsstil, SW-Domäne oder Geschäftsmodell?

27 ZT Schranz Informationstechnologie KEG 27 Am 30. September 2005 erscheint der Artikel „What is the Web 2.0“ von Tim O‘Reilly – Das Zerplatzen der Dot-Com-Blase stellte auch für das WWW einen Wendepunkt dar – Die Läuterung (Marktbereinigung) zeigte, dass diese Technologien (um das WWW) bereit für einen breiten wirtschaftlichen Einsatz waren – Wirkliche Erfolgsstories zeigten ihre Stärken, viele Anwender und Nutzer erkannten, was die Spreu vom Weizen trennt Web 2.0 als Arbeitsstil,SW- Verständnis,Geschäftsmodell

28 ZT Schranz Informationstechnologie KEG 28 Dale Dougherty erkannte (und notierte): – Interessante neue Anwendungsmöglichkeiten tauchen in klarer Regelmäßigkeit auf – Überlebende Firmen (nach Dot-Com-Blase) zeigten wichtige Gemeinsamkeiten auf – Er wollte diese Änderung, den Neuaufbruch mit einem eigenen Begriff belegen : Web 2.0 – Trotzdem keine klar anerkannte Bedeutung, daher versuchte O‘Reilly in einem Brainstorming die Bedeutung genauer zu formulieren... Web 2.0 als Arbeitsstil,SW- Verständnis,Geschäftsmodell

29 ZT Schranz Informationstechnologie KEG 29 Versuch der Begriffseinschränkung Web 2.0 Web 1.0 Web 2.0 DoubleClick-->Google AdSense Ofoto-->Flickr Akamai-->BitTorrent mp3.com-->Napster Britannica Online-->Wikipedia Persönliche Webseiten-->Blogs Spekulation mit Domain Namen-->Suchmaschinen-Optimierung Seitenaufrufe-->"cost per click" Extraktion mittels Screen Scraping-->Web Services Veröffentlichung-->Beteiligung Content Management Systeme-->Wikis Taxonomie (Verzeichnisse)‏ -->"Folksonomy" (Tagging)‏ Feststehend ("stickiness")‏-->Zusammenwachsen ("syndication")

30 ZT Schranz Informationstechnologie KEG 30 Keine genauen Begrenzungen, sondern vielmehr ein Gravitationszentrum – Ansammlung von Prinzipien und Praktiken rund um moderne Web Anwendungen – Kernprinzip ist „das Web als Plattform“ Ein vorhin definiertes Grundcharakteristikum DoubleClick etwa hat eine solche Plattform schon im Web1.0 geschaffen, Werbebanners sind die ersten „Mash-Ups“ (Verknüpfung mehrerer Webservices auf einer Seite) ‏ Ideen in einer Meme-Map gesammelt: Web 2.0 als Konzept

31 ZT Schranz Informationstechnologie KEG 31 Web 2.0 als Konzept

32 ZT Schranz Informationstechnologie KEG 32 Netscape Google – Netscape wollte Web als Plattform propagieren und entwarf Browser und Server Software. – Idee des „Webtops“, sollte durch Anwendungen und Firmen populär gemacht werden, die Netscape Produkte kaufen sollten  Browser und Server wurden kostenlose oder offene Massenware, die Web-Dienste selbst wurden wertvoll Web 2.0 umschrieben als Vergleiche

33 ZT Schranz Informationstechnologie KEG 33 Netscape Google – Google begann selbst als Web-Dienst (Anwendung) ‏ Keine von der Softwareindustrie alteingesessenen Konzepte lassen sich hier finden: Keine geplanten Releases, stattdessen kontinuierliche Verbesserung Keine Lizensierung oder Verkauf, sondern reine Benutzung – Google benötige aber Kompetenz in einem Bereich, den Netscape nie benötigte: Daten(banken) ‏ Ohne Daten sind die Anwendungen wertlos Ohne die Software sind die Daten nicht verwaltbar Web 2.0 umschrieben als Vergleiche

34 ZT Schranz Informationstechnologie KEG 34 DoubleClick AdSense – DoubleClick ist auch reines Webservice. Aber Konzentrierte sich auf wenige „grosse“ Sites (Maßzahlen wie Klickraten, Werbe-Scoring, etc.) ‏ DoubleClick spricht auf Sites stolz von „über 2000 erfolgreiche Implementationen“ Yahoo Search (vormals Overture) und Ad Sense beliefern hingegen bereits hunderttausende Werbetreibende Erfolg basiert auf „The Long Tail“ –Kollektive Macht der vielen kleinen Seiten Web 2.0 umschrieben als Vergleiche

35 ZT Schranz Informationstechnologie KEG 35 DoubleClick AdSense – Fazit von AdSense oder Overture: Kunden-Selbstbedienung und algorithmisches Datenmanagement zu Nutze machen, um jeden Winkel des Webs zu erreichen, nicht nur die schmale Spitze, sondern auch die breite Masse („the long tail“) ‏ – Ähnlicher Ansatz bei eBay... Vermittlung kleiner Beträge/Transaktionen zwischen vielen einzelnen Benutzern –... Oder bei Napster (u.ä.) ‏ Keine zentrale Musikdatenbank, sondern System, das jeden Client zum Server macht, mit dem Effekt, dass das Netzwerk ständig wuchs Web 2.0 umschrieben als Vergleiche

36 ZT Schranz Informationstechnologie KEG 36 Zentrales Prinzip hinter dem Erfolg der Giganten aus der ersten Web Zeit ist jenes, die kollektive Intelligenz zu nutzen – Hyperlinks bilden die Grundlage des Webs (Synapsen, Assoziationen lassen das Netz wachsen) ‏ – Yahoo (oder andere Suchmaschinen) begannen als Kataloge, hatten die Rolle eines Portals zu den gesammelten Werken der Internet-Gemeinde – Google erkannte die Bedeutung der Linkstruktur als Maß der Wertigkeit von Websuchergebnissen (PageRank) ‏ – eBays Produkt ist die gemeinschaftliche Aktivität aller Beteiligten – Amazon nutzt und fördert das Engagement seiner Nutzer, bietet Möglichkeit der Teilnahme (Bewertungen) auf allen Seiten an und produziert aus der Useraktivität bessere Suchresultate (beliebteste Produkte) ‏ Einsatz und Integration von kollektiver Intelligenz

37 ZT Schranz Informationstechnologie KEG 37 Inzwischen nutzen neue Firmen diese Erkenntnisse – Wikipedia als online-Enzyklopädie stellt ein radikales Experiment mit Vertrauen dar Jeder Eintrag kann von jedem Internet-User verändert werden – Del.icio.us oder Flickr setzen ein Konzept ein, das „Folksonomy“ im Gegensatz zu Taxonomy genannt wird Kollaboratives Kategorisieren, Tagging Erlaubt vielseitige, überlappende Assoziierung – Sehr viele Bestandteile der Internet-Infratruktur (LAMP) basieren auf Produktionsmethodik von Open Source und sind somit selbst Ausprägungen von durch das Netz ermöglichter kollektiver Intelligenz Einsatz und Integration von kollektiver Intelligenz

38 ZT Schranz Informationstechnologie KEG 38 Bloggen und die Weisheit des Volkes – Persönliche Homepages in der Form von Tagebüchern und Verlinkung mittels RSS RSS erlaubt, datenbank-basierte Seiten nicht nur zu verlinken, sondern sie zu abonnieren und bei jeder Veränderung informiert zu werden Webbrowser sind damit auch nicht mehr die einzigen Werkzeuge, um Webseites oder Blogs anzuzeigen (-> Desktop-Clients, Mobiles) ‏ Links, RSS und Permalinks ermöglichten Verweise auf spezielle Einträge, Brücken zwischen den Weblogs, Diskussionen, soziale Bindungen entstanden oder wurden gefestigt – Blogosphäre erlaubt nicht nur gegenseitiges Verlinken, sondern auch mittels „Trackback“ eine Einsicht darauf, wer die Seiten mit wem verlinkt hat und mit welchen Kommentaren angereichert hat Zwei-Wege-Links nach dem Vorbild der früheren Hypertextsysteme Einsatz und Integration von kollektiver Intelligenz

39 ZT Schranz Informationstechnologie KEG 39 Bloggen und die Weisheit des Volkes – Die gegenseitige Verlinkung zeigt die Aufmerksamkeit der Blogospäre an – Die „Weisheit der Masse“ dient ähnlich dem PageRank bei Google der Bewertung. Die kollektive Aufmerksamkeit markiert den Wert der Beiträge – Nicht ein paar wenige Leute im Hintergrund entscheiden, was wichtig ist und was nicht Einsatz und Integration von kollektiver Intelligenz

40 ZT Schranz Informationstechnologie KEG 40 Datenbankmanagement als Kernkompetenz – Jede bedeutende Internet-Anwendung besitzt eine spezialisierte Datenbank Google (web crawl), Yahoo (directory), Amazon (products & comments), ebay (products and sellers), MapQuest (maps), Napster (MusikDB), etc. Applikationen eher „Infoware“ als Software – Besitzer der Daten sind die wahren Mächtigen Firmen wie NavTeq haben enorme Investitionen getätigt Applikationen lassen sich nachbauen (MapQuest zuerst, Yahoo, Microsoft, Google haben dann dieselben Daten lizensiert) ‏ MapQuest hat etwa veransäumt, Kartenmaterial mit Kommentaren der Benutzer zu erweitern. Das hätte den Markteintritt für Konkurrenten, die nur das Basismaterial lizensieren können, erheblich erschwert Daten als zentrales Gut

41 ZT Schranz Informationstechnologie KEG 41 Neue Services durch MashUps – Verknüpfung von am Internet verfügbaren Datenquellen Z.B. housingmaps.com verknüpft google maps mit dem Immobilienmarkt von Craigslist  Mashup Mashup zur Zeit noch innovative Experimente von Programmierern (Hackern ), bald werden unternehmerische Aktivitäten folgen – Rennen um wichtige Daten hat begonnen Persönliche, terminliche, produktspezifische Kritische Masse an Nutzeraggregation und die dabei gesammelten Daten können wieder selbst zum Dienst werden und Web 2.0 Unternehmen zum Erfolg führen Datenbesitzer werden Inhalte hüten, was zu proprietären Datenbanken führt  im Gegensatz dazu wird es analog zur Open Source wohl auch offene Daten(mengen) geben Daten als zentrales Gut

42 ZT Schranz Informationstechnologie KEG 42 Software wird als Service, nicht als Produkt ausgeliefert – Betriebsabläufe werden zur Kernkompetenz Pflege, Wartung, Konsistenz der Daten äußerst wichtig Google‘s Systemadministration, Netzwerk- und Load-Balancing- Techniken sind besser gehütete Geheimnisse als die Suchalgorithmen. Die Automatisierung dieser Prozesse ist das Schlüsselelement im Kostenvorteil gegenüber der Konkurrenz Perl,PHP,Ruby als dynamische Sprachen sind die Werkzeuge der Wahl für SysAdmins und für Anwendungsentwickler (vormals als „Scriptsprachen“ von Software-Ingenieuren der vorhergehenden Zeitspanne belächelt) ‏ – Nutzereinbindung führt zu monatlichen, wöchentlichen oder täglichen Updates Feedbacks entscheidet, was „ankommt“. Ewige „Beta“-Stadien, hohe Dynamik Das Ende des Software-Lebenszyklus

43 ZT Schranz Informationstechnologie KEG 43 Software auf Basis komplexer APIs ist gegenüber einfachen Schnittstellen im Nachteil – Amazon‘s SOAP Interface wird nur von wenigen genutzt, 95% greifen auf REST (Representational State Transfer) zu – Wunsch nach Simplizität auch bei „organischen“ Web Services Ajax Schnittstelle von Google Maps war schnell „entschlüsselt“, zur Erstellung neuartiger Services bereits viel verwendet Immer mehr Kartenmaterial wird über solche einfachen Schnittstellen verbreitet Das Leightweight Programming Model

44 ZT Schranz Informationstechnologie KEG 44 LPMs erlauben lose gekoppelte Systeme – große traditionelle Unternehmen haben Dienste, die auf enge Kopplung ausgelegt sind – Web 2.0 baut auf offenere, simple Schnittstellen und rasche Ergebnisse auf – Kooperation ohne Koordination – Gestaltungen zur „Hackability“ und „Remixability“ RSS und AJAX etwa lassen sich leicht „entschlüsseln“ und daher in neue Systeme integrieren Die erfolgreichsten Web Services sind die, die sich leicht in Richtungen weiterentwickeln lassen, an die der ursprüngliche Erfinder gar nicht gedacht hat Innovation durch Zusammenbau: Web 2.0 als Grundlage für künftige Business Models Das Leightweight Programming Model

45 ZT Schranz Informationstechnologie KEG 45 Das Web an sich beteiligt zumindest schon zwei Geräte (Browser, Server) ‏ Viele Anwendungen nun auch für andere Devices – Mobiles, Music Players, etc. Viele Anwendungen integrieren transparent ein Netzwerk an Servern – CDNs, iTunes Künftige Devices bzw. deren Verknüpfung ermöglicht noch vieles mehr – Telefone und Autos werden nicht nur Daten konsumieren, sondern auch bereitstellen (Verkehrsanzeigen, flash mobs) ‏ Software über Device-Grenzen hinweg

46 ZT Schranz Informationstechnologie KEG 46 Applets als Initiator – Bei Java 1995 stand das applet im Mittelpunkt, der „Rest“ wurde rundherum gebaut – Javascript und DynamicHTML wurden als leichtgewichtigere Varianten der besseren Benutzerführung hinzugefügt – Macromedia Flashes wurden neben den Multimedia- Inhalten mit interaktiver GUI-Anwendungsoberfläche ausgestattet, um eben eine bessere Rich User Experience (RUE) zu ermöglichen Rich User Experiences

47 ZT Schranz Informationstechnologie KEG 47 AJAX als Web 2.0 Vertreter der RUE – Seit Gmail und Google Maps immer stärker verbreitet – Ajax besteht aus Standardgerechter Präsentation mit XHTML und CSS Dynamischer Anzeige und Interaktivität basierend auf DOM Datenaustausch mittels XML Asynchrone Datenabfrage unter Verwendung des XMLHttpRequest Javascript, das die Dynamik in die Webseite integriert – Ajax erlaubt die Entwicklung von Web-Software, die die Mächtigkeit von lokaler, PC-basierter Software nachstellt Rich User Experiences

48 ZT Schranz Informationstechnologie KEG 48 Komponenten von AJAX nicht neu – Aber solange Kampf zwischen Microsoft und Netscape tobte, konnten keine einheitlichen Standards gefunden werden – Erst als Microsoft siegte, spielten die Komponenten gut zusammen – Jüngster Konkurrenzkampf (Firefox, Opera) hat diese Nachteile nicht mehr Künftig neue Webentwicklungen – Moderne webbasierte Software mit RUE – Auch Re-Implementierungen von Desktop Programmen – Jeder Plattformwechsel bringt auch potentiellen Führungswechsel bei den Big Players Rich User Experiences

49 ZT Schranz Informationstechnologie KEG 49 Was spielt die Zukunftsmusik? – Web 2.0 Programme bieten Desktop-features, Desktop Programme bieten Web-Integration (Konvergenz) ‏ – Adressbücher von Telefon wird nur noch lokaler Zwischenspeicher sein, der ein massives Webservice im Hintergrund hat – Textverarbeitungen werden á la Wiki kollaboratives Schreiben unterstützen – Chance für neue Markteisteiger liegt darin, das gesamte Potential von Web 2.0 auszuschöpfen Von Benutzern lernen Benutzeroberfläche verbessern Wert von gemeinschaftlich erzeugten Inhalten nutzen Rich User Experiences

50 ZT Schranz Informationstechnologie KEG 50 Zusammenfassung Kernkompetenzen Web 2.0 7 Prinzipien bzw. Kernkompetenzen von Unternehmen im Web 2.0 – Services, keine Softwarepakete – Kontrolle über einzigartige, schwer nachzubildende Datenquellen (Wert steigt mit Nutzungshäufigkeit) ‏ – Vertrauen in Anwender als Mitentwickler – Nutzung kollektiver Intelligenz – Erreichen des „Long Tail“ mittels Community-Bildung – Erstellung von Software über Gerätegrenzen hinweg – Leichtgewichtige Interfaces, Entwicklungs- und Geschäftsmodelle Anwendung mehrerer oder hochqualitative Nutzung eines speziellen Prinzips kann Web 2.0- Unternehmen überaus erfolgreich machen

51 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Technischer Einsatz von Web 2.0: Was ist AJAX ?

52 ZT Schranz Informationstechnologie KEG 52 Asynchronous Javascript and XML – AJAX ist eine der eingesetzten Technologien, die zur Zeit unter Web 2.0 besonders zum Tragen kommen, neben Abonnementdienste RSS/Atom (Austausch zwischen Websites) ‏ Weblogs, soziale Netzwerke, Webservices Techniken, die Web-Anwendungen wie klassiche Desktopanwendungen erscheinen lassen (ajax) ‏ – Und es erfüllt die Anforderungen an Web 2.0 Anwendungen Realisierung von netzbasierten Anwendung, browsergesteuert Dynamisch, von Usern gesteuert und administrierbar Personalisierte, interaktive Oberflächen Editierung, Kommentierung, Gefühl der Zusammengehörigkeit (Community) ‏ AJAX

53 ZT Schranz Informationstechnologie KEG 53 AJAX ist keine neue Programmiersprache, sondern eine aktuelle Technologie, die es ermöglicht, bessere, schnellere und interaktivere Web Applikationen zu erstellen AJAX verwendet JavaScript um Daten zwischen Browser und Server auszutauschen. Die AJAX Technologie macht Web Seiten interaktiver indem Daten hinter den Kulissen ausgetauscht werden anstatt sie wie bisher durch komplettes Neuladen der aktuellen Arbeitsfläche des Browsers zu generieren, wann immer der Benutzer einen Link aktiviert hat. Aus technischer Sicht nichts Neues – Kombination von bereits Ende der 90er entwickelten Technologien – Jetzt durch Verbreitung des Webs eben großflächiger verfügbar AJAX

54 ZT Schranz Informationstechnologie KEG 54 AJAX ist eine Browser-Technologie – Das bedeutet, dass AJAX vollständig im Software-Prozess der Client- Komponente (Browser) einer Internet-Applikation abläuft. Es verwendet asynchronen Datentransfer mittels HTTP Requests, sodass aus einzelnen Webseiten beliebige Teilbereiche erneuert oder ausgetauscht werden können ohne die ganze Seite neu zu laden. – Das macht Internet Applikationen kleiner, schneller und besonders benutzerfreundlich AJAX als Browser-Technologie ist vollkommen unabhängig von der Serversoftware – AJAX basiert auf offenen Standards, wie Javascript, XML, HTML und CSS – Alle eingesetzten Komponenten sind ausdefiniert und von den führenden Browserherstellern durchgehend unterstützt. (Cross-Platform, Cross-Browser technology) ‏ AJAX

55 ZT Schranz Informationstechnologie KEG 55 AJAX möchte bessere Internet Applikationen ermöglichen – Web Anwendungen haben viele Vorteile gegenüber Desktop Applikationen – Sie erreichen eine weitaus größeres Zielpublikum – Sie können leicht installiert und zentral gewartet werden – Sie können ebenso einfach gewartet werden Trotzdem gibt es Nachteile – Internet Applikationen, so wie wir sie bis jetzt kennen, bieten sehr eingeschränkte Interaktivität und wenig Benutzerfreundlichkeit (Design, Features, Plattformintegration, etc.) ‏ AJAX soll die Vorteile beider Welten vereinen AJAX

56 ZT Schranz Informationstechnologie KEG 56 AJAX verwendet XML And HTTP Requests – Eine traditionelle Web Applikation sendet Parameter (etwa per HTML Formular) an einen Web Server. Dieser antwortet mit einer komplett neu erstellten Seite – Dieser komplette Austausch „zerstört“ die Arbeitsoberfläche und stellt ein großes Hindernis für die Benutzerfreundlichkeit dar Mit AJAX werden nur Teile im „Hintergrund“ ausgetauscht, das Erlebnis ist jenem einer lokalen Desktopanwendung wesentlich ähnlicher. XML wird als Standardformat zum Empfang der Serverinhalte verwendet, obwohl alle textorientierten Formate möglich sind (was wir in den einfachen Beispielen auch bearbeiten werden). AJAX

57 ZT Schranz Informationstechnologie KEG 57 Erstes Beispiel – Stellen Sie sich vor, sie müssen der Software zur Auswahl von relevanten Prozesschritten Eingaben übermitteln (etwa Monatsnamen für Datumseingaben) ‏ http://wae.culturall.com/duk/nmm/duknames.mc AJAX - Beispiele

58 ZT Schranz Informationstechnologie KEG 58 Wie funktioniert das? – Mittels Javascript wird die Interaktion am Browser gesteuert – Mittels XmlHttpRequest wird asynchron ein Server aufgerufen – Mittels XML Feldauslese und DOM Felderkennung wird der Zielbereich befüllt Wesentliche Komponenten – Das HTML Formular – Der Javascript Code für die Interaktion („onClick“, „onChange“,...) ‏ – Das XMLHttpRequest Objekt – Der Server-Code AJAX - Beispiele

59 ZT Schranz Informationstechnologie KEG 59 Gute Beschreibungen in Englisch auch auf www.w3schools.com/ajaxwww.w3schools.com/ajax Beispiel Textersetzung – HTML Formular, Javascript, Callbacks, etc. – Beispiel auf W3Schools gemeinsam üben und diskutieren Datenbankanbindung mit AJAX – Mittels XMLHttpRequest können beliebige textorientierte Daten vom Webserver übertragen und eingebaut werden. – Interessant wird es, wenn asynchron auf komplette Datenbankinhalte zugegriffen werden kann (wieder w3schools) ‏ AJAX - Beispiele

60 ZT Schranz Informationstechnologie KEG 60 Eigene Datenbankanbindung, um auf Dokumente einer Datenbank zuzugreifen – http://212.186.223.204/duk/nmm/w3sdb1.mc http://212.186.223.204/duk/nmm/w3sdb1.mc Per Pull-Down Liste können Titel von Dokumenten ausgewählt werden und asynchron werden entsprechend Dokumentdetails vom Server in Tabellenzellen übernommen – Textorientierte Ergebnisse (also auch HTML-Tabellen) können einfach integriert werden – Serverseitige Programme diskutieren (w3s-serverDB.mc) ‏ AJAX - Beispiele

61 ZT Schranz Informationstechnologie KEG 61 Web 2.0 AJAX-Prozessablauf – HTML Formular – Javascript Funktionen/Prozeduren – XMLHttpRequest-Aufruf – Serverseitige Inhaltsgenerierung – CallBack-Funktion in Javascript – DOM-Einbindung des Ergebnisses – Anzeige der asynchron erhaltenen Inhalte im Formular bzw. der Webseite

62 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Praktischer Einsatz von Web 2.0

63 ZT Schranz Informationstechnologie KEG 63 Web 2.0 in der Praxis Praxisübung: Im Rahmen eines eintägigen Projektes soll eine Aufgabe aus dem Bereich Web 2.0 erarbeitet werden – 7 Prinzipien von Anwendungen im Web 2.0 beachten Services, keine Softwarepakete Eigene Datenquelle, Kontrolle über einzigartige, schwer nachzubildende Daten (Wert steigt mit Nutzungshäufigkeit) ‏ Vertrauen in Anwender als Mitentwickler (User = Autor) ‏ Nutzung kollektiver Intelligenz Erreichen des „Long Tail“ mittels Community-Bildung Erstellung von Software über Gerätegrenzen hinweg Leichtgewichtige Interfaces, Entwicklungs- und Geschäftsmodelle

64 ZT Schranz Informationstechnologie KEG 64 Web 2.0 in der Praxis Ziel: Realisierung eines modernen Web Content Management Systems mit Werkzeugen des Web 2.0 – HTML Coding – Datenbankmanagement – Templating – Serverseitiges Programmieren – Benutzerfreundliche Features (WYSIWYG) ‏ – AJAX zur Dokumentstrukturierung und Visualisierung Einsatz von Werkzeugen aus den letzten 6 Blöcken – Mysql, XML, CGI, Mason, Javascript, AJAX

65 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Ergänzung Web Service Engineering – Konzepte und moderne Werkzeuge

66 66 Web Service Engineering Daten Identification WWW-Service Spezifikation Daten Organisation WWW Service Architektur Management der Relationen Datentransfer Service Implementierung Hyperlinks Web Modell vs. Verzeichnis Modell Web Server Management Informationsänderungen Änderungen im Web Modell Optimierungen Requirements Analysis Design Implementation & Testing Deployment Maintenance Life Cycle einer WWW Site

67 67 Web Service Engineering: Das Problem Umsetzung und Management von komplexen WWW Sites – spezielle Anforderungen, Management eines lokalen Hyperlink Modells, Integration von statischen und dynamischen Seiten,... Bestehende Systeme für Implementierung, manche für Design, kaum welche für den gesamten Lebenszyklus Web Datenformate sind zu unstrukturiert – Keine Wiederverwendung von Gemeinsamkeiten, schlechte Verwaltbarkeit / Wartbarkeit Service Designer und Programmierer können kaum Überschneidungen der Aufgabenbereiche ausnutzen

68 68 Verschiedene Ansätze der Realisierung HTML Programmierung Seiten-basierende Editoren – Netscape Composer, HotMetal,... Script-basierende Seitenerzeugung – Interpreter, Prozessoren, ASP, PHP Site-basierende Editoren – MS Frontpage, NetObjects Fusion, WebObjects Object-orientierte Site Engineering Werkzeuge – WebComposition, W3Objects, JESSICA

69 69 Verschiedene Ansätze der Realisierung Jeder Ansatz führt zum selben Ergebnis: Der Benutzer sieht HTML-Dokumente mit Hilfe seines Browsers Wie findet man den richtigen Ansatz – Anforderungen der Site überprüfen – Systemabhängigkeiten überprüfen – Infrastrukturelle Vorgaben beachten – Ressourcen (Personal, Erfahrung, Finanzen, Zeit) beachten Bei Fremdentwicklung werden oft Paketlösungen angeboten – Auswahl ohne technisches Verständis oft schwer, da die Ansätze nicht direkt vergleichbar sind

70 70 JESSICA Design, Implementation and Maintenance of complex WWW sites Management of layout and content – support “Corporate Identities” Integration of “static” information and interactive services – Integration of external data sources, DBs Isolation of information for reuse in third party applications Contents are available on different media Motivation to design and implement the research project JESSICA

71 71 Jessica Goals Unifying web service architecting with web service implementation Introduce object-based and object-oriented concepts to web service engineering – Encapsulation of large information collections Manageability, migration – Abstraction of content and structure – Support of multilingual services Inherited navigation structures, service architecture Replication of WWW services – Multiple instances with minor variations, Versioning Increase Flexibility of Web Services

72 72 Così fan tutte Object Date/Venue Object Title Object Description Object

73 73 Objects in JESSICA JESSICA is used to abstractly describe information presentations as a set of objects Documents are created by combining the objects’ contents following a composition strategy

74 74 JESSICA entities Objects fully specified, provide information inline or refer to a constant source, may instantiate templates Templates contain constant information and variables to be instantiated by fully specified objects or inheriting templates

75 75 Document Composition Templates can be used as models for documents:

76 76 Visualizing the object approach UML based editor – Templates are models for multiple objects (Generalization) ‏ – Objects embed entities (Aggregation) ‏ – Objects representing documents are related through hyperlinks (Association) ‏ – Entities may be annotated by comments

77 77 Beuys in Jazz

78 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Einsatz moderner Web Application Server

79 79 Web Service Management Web Application Server Application Server – [Forrester Research:] „An application server is a software server product that supports thin clients with an integrated suite of distributed computing capabilities. Application servers manage client sessions, host business logic, and connect to back-end computing resources, including data, transaction, and content“ Web Application Server: – Wenn die Server-Komponente (ausschließlich) per Web-Server aufgerufen wird. Java Application Servers, z.B.: Servlet Engines Perl Application Servers, z.B.: Mason

80 80 Mason Web Application Server – – moderne Konzepte zum technischen Web Service Management – – Lösungen für typische Site Development und Management Probleme Wartbarkeit, Performance, Zuverlässigkeit caching, debugging, templating, staging,... über CGI, stand-alone, aber am besten mit Apache::mod_perl – – Vertiefung dazu unter Business Intelligence Mason Mason Perl-basierter Web Application Server

81 81 Mason Perl-basierter Web Application Server Mason Web Application Server – moderne Konzepte zum technischen Web Service Management – Lösungen für typische Site Development und Management Probleme Wartbarkeit, Prformance, Zuverlässigkeit caching, debugging, templating, staging,... über CGI, stand-alone, aber am besten mit Apache::mod_perl

82 82 Mason Perl-basierter Web Application Server Basic Features – Simple embedded perl syntax – modulare Seiten mit Komponenten – Parameter handling über normale Variable – Templates (autohandler hierarchy) ‏ – Objekt-orientierte Techniken eigene Methoden und Attribute per Komponente, verfügbar in den Templates und anderen Komponenten

83 83 Mason Mason Perl-basierter Web Application Server

84 84 Mason Mason Perl-basierter Web Application Server

85 85 Mason Mason Perl-basierter Web Application Server

86 86 Mason Perl-basierter Web Application Server Server Side Caching – Einzeldaten, komplexe Datenstrukturen und ganze Komponenten können gecached werden – Entsprechende Steurungsparameter entscheiden, ob der Inhalt über den Webserver oder aus dem Mason Cache erzeugt generiert werden soll (individuelle Timeouts, keys, concurrency) ‏ – sinnvoller Einsatz bei ressourcenintensiven Services (z.B.: Datenbank-Queries) ‏

87 87 Mason Perl-basierter Web Application Server Mason Templating – Mason folgt in der Ablauforganisation dem hierarchischen Aufbau der Verzeichnisse des apache Servers – entsprechend der Einstellungen im config-File wird ausgehend vom document root Verzeichnis der template Baum abgearbeitet („autohandler“) ‏ – templates haben Zugriff auf Attribute und Methoden von Mason Komponenten

88 88 Mason Perl-basierter Web Application Server Mason Staging – Bei hochverfügbaren Services ist oft eine Trennung zwischen Entwicklungs- und Produktionsebene gefragt – Der Mason Application Server verbindet beide Leistungen innerhalb eines Webservers, trennt die Bereich logisch sauber voneinander – Komponenten können einzeln in die Staging- Umgebung kopiert werden, dort bearbeitet und nach gefallen wieder zurückkopiert werden – verbundene Dokumente werden von Mason automatisch im richtigen Bereich gefunden

89 89 Mason Perl-basierter Web Application Server Mason Debugging und Error Handling – Fehler im mason code werden detailliert berichtet und als Fehlerbericht angezeigt – Alternativ kann ein default-File geschalten werden (sinnvoll für die Produktionsebene) ‏ – Fehlerprotokolle werden für die Mason Objekte erstellt, nicht für die Code-Files im Webserver Verzeichnisbaum

90 90 Mason Perl-basierter Web Application Server praktische Konfiguration – Erklärungen und Komponentenintegration anhand der Demo-Konfiguration: apache mit application server mason – alle benötigten Softwarekomponenten sind open source vefügbar – einige Tücken bei der Installation werden in der Demo erklärt

91 91 Mason und die *SQL-DB-Anbindung persistente Datenbankverbindung Bearbeiten von relationalen Datenbanken – Wesentliche SQL Statements SELECT INSERT DELETE UPDATE – Tabellen erstellen, Indizes nutzen, Normalformen Web-Interfaces für Relationale Datenbanken

92 ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria Web Service Engineering Praktischer Einsatz von Web 2.0

93 ZT Schranz Informationstechnologie KEG 93 Web 2.0 in der Praxis Ziel: Realisierung eines modernen Web Content Management Systems mit Werkzeugen des Web 2.0 – HTML Coding – Datenbankmanagement – Templating – Serverseitiges Programmieren – Benutzerfreundliche Features (WYSIWYG) ‏ – AJAX zur Dokumentstrukturierung und Visualisierung Einsatz von Werkzeugen aus den letzten 6 Blöcken – Mysql, XML, CGI, Mason, Javascript, AJAX

94 ZT Schranz Informationstechnologie KEG 94 Projekt-Spezifikation Projekt SimpleCMS Auf Basis einer einfachen Datenbanktabelle sollen Dokument-ID, Inhalt, Titel und Erstellungdatum erfasst werden können. Mittels eines WYSIWIG Editors hat der Content Manager die Freiheit, Texte mit Bildern und Hyperlinks zu kombinieren. Seiten sollen angelegt, gespeichert und gelöscht werden können, eine Preview-Semantik erlaubt einen Blick auf das soeben Erstellte. Mittels hierarchischer Strukturierung über die Ids ist ein Dokumentenbaum zu erstellen und als Menu zu visualisieren. Letztlich soll ein Template für eine individuelle Gestaltung der Site sorgen. (Zeitrahmen: dieser Block)‏

95 ZT Schranz Informationstechnologie KEG 95 Web 2.0 Prinzipien in der Anwendung Modulare Anwendungen – Perl/Mason im Einsatz – Komponenten, die Interface erzeugen, Serverseitige Scripts aufbauen und die AJAX-Komponenten ausliefern Basis der Projektangabe:http://wae.culturall.com/angabe/A ngabeWAE.htmlangabe/A ngabeWAE.html – Bearbeitungskomponente – Menukomponente – Templatekomponente – Datenbankanbindung – AJAX-Content Management (opt.) ‏

96 ZT Schranz Informationstechnologie KEG 96 Hello World my $text = “dieser Text wird nie angezeigt“; Statische Mason-Komponente Mason Handling

97 ZT Schranz Informationstechnologie KEG 97 Hello World, this page is for users that are at least years old. $name => undef $age => 18 my $text = “test“; Argumente in Mason-Komponenten Mason Handling

98 ZT Schranz Informationstechnologie KEG 98 call_next() &> my $self = $m->request_comp; my $mytitle = $self->attr(“title“); Template hierarchie: autohandler Mason Handling

99 ZT Schranz Informationstechnologie KEG 99 % $m->call_next() ‏ my $self = $m->request_comp; My $mytitle = $self->call_method(“title“,%ARGS); Template hierarchie: autohandler Mason Handling

100 ZT Schranz Informationstechnologie KEG 100 Hello World title => “Hello World Title“ return “Hello World Title“; Component attributes and methods Mason Handling

101 ZT Schranz Informationstechnologie KEG 101 Hello World my $dbresults = ““; $dbx{´test´}->select({fields=>´name,...´,...}); While (my $tmp = $dbx{´test´}->fetchrow_hashref()) { push(@myresult,$tmp); $dbresults.= $tmp->{´name´}; } Mehr dazu bei der Angabe, bei DBIx::Abstract und www.masonhq.com Persistent Database connetion Mason Handling

102 ZT Schranz Informationstechnologie KEG 102 AJAX und Mason Komplexere Aufgaben und Beispiele... AJAX and Mason – HTML::Prototype... – Einige Beispiele auf maztravel.com/ajax/ – Ajax component unter www.masonhq.com/?Component.ajax – prototype.conio.net und auch particletree.com/features/quick-guide-to- prototype/


Herunterladen ppt "ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria."

Ähnliche Präsentationen


Google-Anzeigen