zt univ.-lektor dipl.-ing. dr. markus schranz staatlich befugter und beeideter ingenieurkonsulent...

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

Upload: walther-mueller

Post on 06-Apr-2016

219 views

Category:

Documents


1 download

TRANSCRIPT

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service Engineering:Web Service Engineering:XML und AnwendungenXML und Anwendungen

Vortragsunterlagen zur Vortragsreihe MSc Multimedia und MSc NewMediaManagementan der Donauuniversität Krems

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

2ZT Schranz Informationstechnologie KEG

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 1Rückblick Infoblock 1

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

3ZT Schranz Informationstechnologie KEG

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 2Rückblick Infoblock 2

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

4ZT Schranz Informationstechnologie KEG

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 3Rückblick Infoblock 3

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

5ZT Schranz Informationstechnologie KEG

Rückblick Infoblock 4Rü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

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

6ZT Schranz Informationstechnologie KEG

Rückblick Infoblock 5Rückblick Infoblock 5

Metadaten und XML Grammatik, Strukturen, Verwandtschaften Semantic Web

– Metadaten– SOAP, EU Projekt Nedine

XSL: Die XML Stylesheet Language– Einfache Beispiele

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

7ZT Schranz Informationstechnologie KEG

Rückblick Infoblock 6Rü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

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Web 2.0 Schwerpunkt AJAX

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

9ZT Schranz Informationstechnologie KEG

Web 2.0 - AgendaWeb 2.0 - Agenda

Was ist Web 2.0 Philosophie (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)

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

10ZT Schranz Informationstechnologie KEG

Web 2.0Web 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)

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

11ZT Schranz Informationstechnologie KEG

Web 2.0Web 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

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

12ZT Schranz Informationstechnologie KEG

Was ist das Web 2.0 ?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?

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

13ZT Schranz Informationstechnologie KEG

Was ist das Web 2.0 ?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

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

14ZT Schranz Informationstechnologie KEG

Web 2.0 als Inbegriff eines NetzverständnissesWeb 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

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

15ZT Schranz Informationstechnologie KEG

Web 2.0 als Inbegriff eines NetzverständnissesWeb 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

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

16ZT Schranz Informationstechnologie KEG

Web 2.0 als Inbegriff eines NetzverständnissesWeb 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

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

17ZT Schranz Informationstechnologie KEG

Web 2.0 als Inbegriff eines NetzverständnissesWeb 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

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

18ZT Schranz Informationstechnologie KEG

Web 2.0 als Inbegriff eines NetzverständnissesWeb 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“

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Entstehungsgeschichte des Begriffes, Charakteristiken von Web 2.0

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

20ZT Schranz Informationstechnologie KEG

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.0Der Begriff Web 2.0

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

21ZT Schranz Informationstechnologie KEG

Der Begriff Web 2.0Der Begriff Web 2.0

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

22ZT Schranz Informationstechnologie KEG

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 CharakterisierungSchlüsselprinzipien zur Charakterisierung

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

23ZT Schranz Informationstechnologie KEG

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.0Technologien im Web 2.0

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

24ZT Schranz Informationstechnologie KEG

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 WebWeb 2.0 und Semantic Web

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

25ZT Schranz Informationstechnologie KEG

Kritik am Web 2.0Kritik 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.

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Web 2.0 genau inspiziert: Arbeitsstil, SW-Domäne oder Geschäftsmodell?

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

27ZT Schranz Informationstechnologie KEG

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-Web 2.0 als Arbeitsstil,SW-Verständnis,Geschäftsmodell Verständnis,Geschäftsmodell

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

28ZT Schranz Informationstechnologie KEG

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-Web 2.0 als Arbeitsstil,SW-Verständnis,Geschäftsmodell Verständnis,Geschäftsmodell

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

29ZT Schranz Informationstechnologie KEG

Versuch der Begriffseinschränkung Web 2.0 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")

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

30ZT Schranz Informationstechnologie KEG

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 Web 2.0 als Konzept

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

31ZT Schranz Informationstechnologie KEG

Web 2.0 als Konzept Web 2.0 als Konzept

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

32ZT Schranz Informationstechnologie KEG

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 Web 2.0 umschrieben als Vergleiche

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

33ZT Schranz Informationstechnologie KEG

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 Web 2.0 umschrieben als Vergleiche

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

34ZT Schranz Informationstechnologie KEG

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 Web 2.0 umschrieben als Vergleiche

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

35ZT Schranz Informationstechnologie KEG

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 Web 2.0 umschrieben als Vergleiche

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

36ZT Schranz Informationstechnologie KEG

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 Einsatz und Integration von kollektiver Intelligenz

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

37ZT Schranz Informationstechnologie KEG

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 Einsatz und Integration von kollektiver Intelligenz

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

38ZT Schranz Informationstechnologie KEG

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 Einsatz und Integration von kollektiver Intelligenz

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

39ZT Schranz Informationstechnologie KEG

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 Einsatz und Integration von kollektiver Intelligenz

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

40ZT Schranz Informationstechnologie KEG

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 Daten als zentrales Gut

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

41ZT Schranz Informationstechnologie KEG

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 Daten als zentrales Gut

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

42ZT Schranz Informationstechnologie KEG

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 Das Ende des Software-Lebenszyklus

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

43ZT Schranz Informationstechnologie KEG

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 Das Leightweight Programming Model

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

44ZT Schranz Informationstechnologie KEG

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 Das Leightweight Programming Model

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

45ZT Schranz Informationstechnologie KEG

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 Software über Device-Grenzen hinweg

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

46ZT Schranz Informationstechnologie KEG

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 Rich User Experiences

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

47ZT Schranz Informationstechnologie KEG

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 Rich User Experiences

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

48ZT Schranz Informationstechnologie KEG

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 Rich User Experiences

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

49ZT Schranz Informationstechnologie KEG

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 Rich User Experiences

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

50ZT Schranz Informationstechnologie KEG

Zusammenfassung Kernkompetenzen Web 2.0Zusammenfassung 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

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Technischer Einsatz von Web 2.0: Was ist AJAX ?

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

52ZT Schranz Informationstechnologie KEG

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)

AJAXAJAX

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

53ZT Schranz Informationstechnologie KEG

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

AJAXAJAX

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

54ZT Schranz Informationstechnologie KEG

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)

AJAXAJAX

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

55ZT Schranz Informationstechnologie KEG

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

AJAXAJAX

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

56ZT Schranz Informationstechnologie KEG

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).

AJAXAJAX

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

57ZT Schranz Informationstechnologie KEG

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 - BeispieleAJAX - Beispiele

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

58ZT Schranz Informationstechnologie KEG

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 - BeispieleAJAX - Beispiele

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

59ZT Schranz Informationstechnologie KEG

Gute Beschreibungen in Englisch auch auf www.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 - BeispieleAJAX - Beispiele

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

60ZT Schranz Informationstechnologie KEG

Eigene Datenbankanbindung, um auf Dokumente einer Datenbank zuzugreifen

– 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 - BeispieleAJAX - Beispiele

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

61ZT Schranz Informationstechnologie KEG

Web 2.0Web 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

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Praktischer Einsatz von Web 2.0

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

63ZT Schranz Informationstechnologie KEG

Web 2.0 in der PraxisWeb 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

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

64ZT Schranz Informationstechnologie KEG

Web 2.0 in der PraxisWeb 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

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Ergänzung Web Service Engineering – Konzepte und moderne Werkzeuge

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

66

Web Service EngineeringWeb Service Engineering

Daten IdentificationWWW-Service Spezifikation

Daten OrganisationWWW Service ArchitekturManagement der Relationen

DatentransferService ImplementierungHyperlinks

Web Modell vs. Verzeichnis ModellWeb Server Management

InformationsänderungenÄnderungen im Web ModellOptimierungen

RequirementsAnalysis

DesignImplementation

& Testing

Deployment

Maintenance

Life Cycle einer WWW Site

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

67

Web Service Engineering: Das ProblemWeb 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

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

68

Verschiedene Ansätze der RealisierungVerschiedene 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

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

69

Verschiedene Ansätze der RealisierungVerschiedene 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

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

70

JESSICAJESSICA

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

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

71

Jessica GoalsJessica 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

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

72

Così fan tutteObject

Date/VenueObject

Title Object

DescriptionObject

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

73

Objects in JESSICAObjects 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

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

74

JESSICA entitiesJESSICA entities

Objectsfully specified, provide information inline or refer to a constant source, may instantiate templates

Templatescontain constant information and variables to be instantiated by fully specified objects or inheriting templates

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

75

Document CompositionDocument Composition

Templates can be used as models for documents:

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

76

Visualizing the object approachVisualizing 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

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

77

Beuys in JazzBeuys in Jazz

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Einsatz moderner Web Application Server

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

79

Web Service ManagementWeb Service ManagementWeb Application ServerWeb 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

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

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

MasonMasonPerl-basierter Web Application Server

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

81

MasonMasonPerl-basierter Web Application ServerPerl-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

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

82

MasonMasonPerl-basierter Web Application ServerPerl-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

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

83

MasonMasonPerl-basierter Web Application Server

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

84

MasonMasonPerl-basierter Web Application Server

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

85

MasonMasonPerl-basierter Web Application Server

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

86

MasonMasonPerl-basierter Web Application ServerPerl-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)

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

87

MasonMasonPerl-basierter Web Application ServerPerl-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

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

88

MasonMasonPerl-basierter Web Application ServerPerl-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

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

89

MasonMasonPerl-basierter Web Application ServerPerl-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

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

90

MasonMasonPerl-basierter Web Application ServerPerl-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

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

91

Mason und die *SQL-DB-AnbindungMason 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

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

ZT Univ.-LektorDipl.-Ing. Dr. Markus Schranz

staatlich befugter und beeideter Ingenieurkonsulent für InformatikTechnischer Direktor pressetext.austria

Web Service EngineeringWeb Service Engineering

Praktischer Einsatz von Web 2.0

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

93ZT Schranz Informationstechnologie KEG

Web 2.0 in der PraxisWeb 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

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

94ZT Schranz Informationstechnologie KEG

Projekt-SpezifikationProjekt-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, Textemit 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)

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

95ZT Schranz Informationstechnologie KEG

Web 2.0 Prinzipien in der AnwendungWeb 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/AngabeWAE.html– Bearbeitungskomponente– Menukomponente– Templatekomponente– Datenbankanbindung– AJAX-Content Management (opt.)

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

96ZT Schranz Informationstechnologie KEG

Hello World

<%init>my $text = “dieser Text wird nie angezeigt“;</%init>

Statische Mason-Komponente

Mason HandlingMason Handling

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

97ZT Schranz Informationstechnologie KEG

Hello World, this page is for users that are at least <% $age %>

years old.

<%args>$name => undef$age => 18</%args><%init>my $text = “test“;</%init>

Argumente in Mason-Komponenten

Mason HandlingMason Handling

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

98ZT Schranz Informationstechnologie KEG

<html><head><title><% $mytitle %></title><body><& $m->call_next() &></body></html><%init>my $self = $m->request_comp;my $mytitle = $self->attr(“title“);</%init>

Template hierarchie: autohandler

Mason HandlingMason Handling

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

99ZT Schranz Informationstechnologie KEG

<html><head><title><% $mytitle %></title><body>% $m->call_next()</body></html><%init>my $self = $m->request_comp;My $mytitle = $self->call_method(“title“,%ARGS);</%init>

Template hierarchie: autohandler

Mason HandlingMason Handling

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

100ZT Schranz Informationstechnologie KEG

Hello World<%attr>title => “Hello World Title“</%attr>

<%method title> <%args> </%args> <%init> return “Hello World Title“; </%init></%method>

Component attributes and methods

Mason HandlingMason Handling

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

101ZT Schranz Informationstechnologie KEG

Hello World<% $dbresults %><%init>my $dbresults = ““;$dbx{´test´}->select({fields=>´name,...´,...});While (my $tmp = $dbx{´test´}->fetchrow_hashref()) { push(@myresult,$tmp); $dbresults .= $tmp->{´name´};}</%init>

Mehr dazu bei der Angabe, bei DBIx::Abstract und www.masonhq.com

Persistent Database connetion

Mason HandlingMason Handling

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

102ZT Schranz Informationstechnologie KEG

AJAX und MasonAJAX 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/