Web Service Engineering: XML und Anwendungen

Slides:



Advertisements
Ähnliche Präsentationen
Web 2.0 Social Network Communities
Advertisements

Business BestPractice
Das Web in der politischen Bildung – Das Politische im Web
E-Commerce Shop System
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Web 2.0 Ringelmann Arthur.
Dynamische Seiten mit Dreamweaver Zugriff auf (mysql) Datenbank mit PHP.
:33 Architektur Moderner Internet Applikationen – Prolog Copyright ©2003 Christian Donner. Alle Rechte vorbehalten. Architektur Moderner.
:35 Architektur Moderner Internet Applikationen – Sonderthema 1 Copyright ©2003 Christian Donner. Alle Rechte vorbehalten. Architektur Moderner.
Soziale Vernetzung & kollektives Wissen
Basis-Architekturen für Web-Anwendungen
Seminar Internetdienste Web 2.0 und Rich Internet Applications (RIA) JavaFX Rainer Scholz.
Web 2.0!? /TU Freiberg/Internet Multimedia/Konrad Froitzheim
Web 2.0!? /TU Freiberg/Internet Multimedia/Konrad Froitzheim
DOM (Document Object Model)
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
HTML - Eine erste Annäherung
PinK Plattform für intelligente Kollaborationsportale Dr. Joachim Quantz, e.V. Berlin, 13. September 2005.
Dr. Michael Geiger Unternehmensberatung und Training
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Projekt Web Engineering
Zukunft des Webs? Dennis Beer Christian Blinde
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
PHProjekt – eine open source Projektmanagementsoftware
Eine Produktion von der Firma Presentations GmbH
20:00.
WEB 2.0 was ist das eigentlich?
Gegenstand EDV Thema: Informative Webseiten
Web 1.0 &Web 2.0 Von Hend Hasan.
Eine Einführung in die CD-ROM
Warum brauche ich ein CMS – Content Management System?
Offsite –Optimierung bzw. wo Sie noch gefunden werden
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Präsentation von Sonja Pathe
HTML-Editoren Eine Präsentation von Erik Kulisch.
Web 2.0 Das ‚neue‘ Internet.
INSTANT MESSAGING LI Xiaohui LIU Miao ZHOU Guanpei Universität Salzburg WAP Präsentation WS 2005/06.
Dipl.-Päd. Irene Tatzgern, MA
EP Media Group SiteKist CMS Version 6.9. ©2014 EP Media Group Internet:
Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Web Application Engineering & Content Management.
Web 1.0 vs. Web 2.0.
Oliver Spritzendorfer Thomas Fekete
Web 1.0 &Web 2.0 Presentation slide for courses, classes, lectures et al. Von Hend Hasan 1.
XML (Extensible Markup Language)
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
Web 2.0 & AJAX (A)sysnchrones (J)avaScript (A)nd (X)ML
Fachberater für Computer an Förderschulen © Wolfgang Bossert 2007 Was ist web 2.0?
Soziale Medien und berufliche Orientierung Thesen aus dem Projekt „Learn2Teach by social web“ Dieses Projekt wurde mit Unterstützung der Europäischen.
Die Entwicklung der Webseiten im Verlauf der Zeit
Web 1.0 vs. Web 2.0.
W W W - World Wide Web. Das World Wide Web kommt aus dem Englischen und bedeutet ‚Weltweites Netz‘ ist ein über das Internet abrufbares Hypertext-System.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
->Prinzip ->Systeme ->Peer – to – Peer
Scripting: Einführung in die ‚Kunst‘ des Unterrichtens mit ICT.
1 Referenten: M.Damm Web Was ist dran? Neue Dot-Com Blase oder echte Chance? Web 2.0.
Semantic Web.
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
Datenbanken im Web 1.
XML Die “E-Lance Economy” oder die “Digital Economy” stellt neue Anforderungen an Funktionalität im Netz. XML wurde vom World Wide Web Consortium (W3C)
Webserver, Apache und XAMPP
ZT Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Technischer Direktor pressetext.austria.
IT-Dienstleistungen E-Learning Systeme Content Management 1 Fallbeispiel ILIAS: Das Repository-Objekt-Plugin „Centra“
Wie wird sich die Wissenschaft rund um Web Content Management Systeme 2016 entwickeln?
XML-basierte Beschreibungssprachen für grafische Benutzerschnittstellen Seminarvortrag im Studiengang „Scientific Programming“ von Steffen Richter.
Mehr als ein Modewort? Exzerpt nach Tim O‘Reilly, Michael Karrer
Eine Produktion von der Firma Presentations GmbH
 Präsentation transkript:

Web Service Engineering: XML und Anwendungen Vortragsunterlagen zur Vortragsreihe MSc Multimedia und MSc NewMediaManagement an der Donauuniversität Krems

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

Web Service Engineering Rückblick Infoblock 2 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 3 Datenbanksysteme Informations-Architektur 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 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 – XML: eine theoretische Einführung

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

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

Web Service Engineering Web 2.0 Schwerpunkt AJAX

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

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

Web 2.0 Schwerpunkt AJAX - Aktuelle Unterlagen im Skriptum angegeben - Umfassendes Übungsbeispiel im PC-Labor http://212.186.223.204/duk/nmm/duk7-ws07-web2.pdf http:// 212.186.223.204 /duk/nmm/duk7-ws07-web2.ppt

Neuauflage eines Erfolgsmediums? 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?

Populistischer Begriff mit inflationärem Eigenleben 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

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

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

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

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

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“

Web Service Engineering Entstehungsgeschichte des Begriffes, Charakteristiken von Web 2.0

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

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

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

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

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.

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

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

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

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

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

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

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

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

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

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

Web Service Engineering Technischer Einsatz von Web 2.0: Was ist AJAX ?

AJAX 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 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 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 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 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 - Beispiele Erstes Beispiel Stellen Sie sich vor, sie müssen der Software zur Auswahl von relevanten Prozesschritten Eingaben übermitteln (etwa Monatsnamen für Datumseingaben) http://test.ztschranz.at/duk/nmm/duknames.mc

AJAX - Beispiele Wie funktioniert das? Wesentliche Komponenten 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 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 - Beispiele 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)

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

Web Service Engineering Praktischer Einsatz von Web 2.0

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

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

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)

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://test.ztschranz.at/angabe/AngabeWAE.html Bearbeitungskomponente Menukomponente Templatekomponente Datenbankanbindung AJAX-Content Management

Statische Mason-Komponente Mason Handling Statische Mason-Komponente Hello World <%init> my $text = “dieser Text wird nie angezeigt“; </%init>

Argumente in Mason-Komponenten Mason Handling Argumente in Mason-Komponenten 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>

Template hierarchie: autohandler Mason Handling Template hierarchie: autohandler <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 Handling Template hierarchie: autohandler <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>

Component attributes and methods Mason Handling Component attributes and methods Hello World <%attr> title => “Hello World Title“ </%attr> <%method title> <%args> </%args> <%init> return “Hello World Title“; </%init> </%method>

Persistent Database connetion Mason Handling Persistent Database connetion 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

AJAX AJAX and Mason Komplexere Aufgaben und Beispiele... 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/