SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Downloaden Sie, um offline zu lesen
Chris2an	
  Safran,	
  Anja	
  Lorenz	
  und	
  Mar2n	
  Ebner



Webtechnologien
Technische Anforderungen an Informationssysteme
Dieses	
   Kapitel	
   gibt	
   eine	
   Einführung	
   in	
   die	
   technischen	
   Grundlagen	
   von	
   Webtechnologien,	
   welche	
   im
Rahmen	
   von	
   LernsoHware	
   Verwendung	
   finden	
   können.	
   Basierend	
   auf	
   der	
   zugrunde	
   liegenden	
   Infra-­‐
struktur	
  des	
  Internets	
  hat	
  vor	
  allem	
  das	
  World	
  Wide	
  Web	
  im	
  letzten	
  Jahrzehnt	
  alle	
  Arten	
  von	
  Informa2-­‐
onssystemen,	
   auch	
   solche	
   für	
   das	
   Lernen	
   und	
   Lehren,	
   nachhal2g	
   beeinflusst.	
   Dementsprechend	
   ist	
   ein
Grundverständnis	
   der	
   entsprechenden	
   Technologien	
   und	
   technischen	
   Anforderungen	
   von	
   Vorteil,	
   um
Chancen	
  und	
  Grenzen	
  von	
  webbasierter	
  LernsoHware	
  zu	
  erläutern.	
  Durch	
  die	
  zugrunde	
  liegenden	
  Archi-­‐
tekturen	
  und	
  Protokollen	
  des	
  World	
  Wide	
  Web	
  haben	
  sich	
  in	
  den	
  letzten	
  Jahren	
  Technologien	
  wie	
  Weban-­‐
wendungen	
   und	
   Webservices	
   entwickelt,	
   die	
   größere	
   und	
   reichhal2gere	
   Applika2onen	
   im	
   Web	
   ermög-­‐
lichen	
  als	
  zu	
  dessen	
  Anfangszeit.	
  Diese	
  Möglichkeiten	
  führten	
  einerseits	
  zu	
  der	
  Entwicklung	
  von	
  Rich	
  In-­‐
ternet	
   Applica2ons	
   als	
   „Internetanwendungen	
   mit	
   Desktop-­‐Feeling“	
   und	
   andererseits	
   zum	
   Aukommen
von	
  Mashups,	
  in	
  welchen	
  diverse	
  Inhalte	
  und	
  Funk2onalitäten	
  anderer	
  Applika2onen	
  in	
  innova2ven	
  Sze-­‐
narien	
  neu	
  kombiniert	
  werden.	
  Beide	
  Ansätze	
  sind	
  in	
  der	
  aktuellen	
  Entwicklung	
  von	
  Informa2onssystemen
für	
  das	
  Lernen	
  und	
  Lehren	
  unabdingbar.




Quelle:	
  
Robert	
  Ulmer
hEp://www.flickr.com/photos/46422485@N03/5335122125	
  [2011-­‐01-­‐28]



                                                                                #webtech
                                                                                #einfuehrung	
  
                                                                                #informa2k

                                                                                Version	
  vom	
  1.	
  Februar	
  2011



                                                                       Für	
  dieses	
  Kapitel	
  wird	
  noch	
  ein	
  Pate	
  gesucht,
 Jetzt Pate werden!                                          mehr	
  Informa2onen	
  unter:	
  hEp://l3t.eu/patenschaH
2	
  —	
  Lehrbuch	
  für	
  Lernen	
  und	
  Lehren	
  mit	
  Technologien	
  (L3T)


                                                                                                     gelvorschrift, welche den Datenaustausch und die
1. Einleitung
                                                                                                     Kommunikation zwischen Computern detailliert be-
Das World Wide Web bzw. das Internet hat in den                                                      schreibt. Die verschiedenen Verantwortungen werden
letzten Jahren einen großen Stellenwert in unserer                                                   im Fall der Kommunikation in Rechnernetzen auf
heutigen „Informationsgesellschaft“ eingenommen.                                                     einzelne Protokolle aufgeteilt. Diese Aufteilung kann
So verwundert es auch nicht, dass ein großer Teil der                                                man über das OSI-Schichtenmodell (Open System
aktuellen Umsetzungen von Informationssystemen                                                       Interconnection) der internationalen Standardisie-
für das Lernen und Lehren auf Webtechnologien ba-                                                    rungsgesellschaft ISO (International Standardization
siert. Auch Trendtechnologien wie Soziale Medien                                                     Organisation), in dem Protokolle einer Ebene nur je-
finden zunehmend Eingang in das Lernen und                                                           weils über Protokolle der benachbarten Ebenen Be-
Lehren mit Technologien.                                                                             scheid wissen müssen, einheitlich beschreiben.
    Für das Verständnis der technischen Anforde-                                                        Die Ebenen des OSI-Schichtenmodells (siehe Ta-
rungen an speziell für das Lernen und Lehren entwi-                                                  belle 1) beschreiben die Kommunikation in verschie-
ckelte Informationssysteme ist demnach auch ein zu-                                                  denen Abstraktionsstufen. So beschäftigt sich die un-
mindest grundlegendes technisches Verständnis der                                                    terste Schicht (1) mit der physikalischen Übertragung,
darunter liegenden Webtechnologien notwendig. Be-                                                    während sich die oberste Schicht (7) mit Anwen-
dingt durch die Architektur und Geschichte des                                                       dungen auseinandersetzt. Grob werden diese
World Wide Web bieten diese Ansätze zwar ein                                                         Schichten in anwendungs- und transportorientierte
großes Potential, stehen aber auch einigen techni-                                                   Schichten unterteilt. Im Rahmen dieses Kapitels
schen Einschränkungen gegenüber. Dieses Kapitel                                                      werden wir uns nur mit anwendungsorientierten Pro-
soll grundlegendes Wissen über diese Technologien                                                    tokollen beschäftigen.
vermitteln und bestenfalls das Interesse nach detail-                                                   Basierend auf dem Internet, als Verbindung unter-
lierter weiterführender Information zu den angespro-                                                 schiedlicher Computernetze, ermöglichen diverse
chenen Technologien, welche in einschlägiger Fachli-                                                 Protokolle den Zugriff auf eine Vielzahl von Anwen-
teratur nachgelesen werden können, wecken.                                                           dungen. Die wohl prominenteste dieser Anwen-
                                                                                                     dungen ist das World Wide Web.
2. Grundlegende	
  Technologien
                                                                                                     3. Das	
  World	
  Wide	
  Web
Das Internet ist eine weltweite Verknüpfung von Da-
tennetzen, welche Ende der 1960er Jahre in den USA                                                   Seit seiner Entwicklung im Jahr 1989 durch die For-
vom DARPA (Defense Advanced Research Projects                                                        schergruppe um Sir Tim Berners-Lee (Cailliau, 1995),
Agency) initiiert und aus dem daraus entstandenen                                                    wurde aus dem World Wide Web (WWW) die wohl
ARPANET (Advanced Research Projects Agency)                                                          bekannteste und meist benutzte Anwendung des In-
hervorging (Vinton Cerf, 1993).                                                                      ternets. In vielen Fällen wird der Begriff Internet,
                                                                                                     obwohl er nur die darunterliegende Netzwerkinfra-
         Der	
   Begriff	
   Internet	
   als	
   solcher	
   bezeichnete	
   hierbei	
   ei-­‐       struktur bezeichnet, inzwischen als Synonym für das
  !      gentlich	
   das	
   entstehende	
   „interconnected	
   network“,
         also	
   eine	
   Technologie	
   zur	
   Kommunika2on	
   (Austausch
                                                                                                     World Wide Web verwendet. Beim WWW handelt es
                                                                                                     sich um eine verteilte Sammlung von Dokumenten,
         von	
   Daten)	
   zwischen	
   verschiedenen,	
   weltweit	
   ver-­‐                      welche unter Verwendung von Internet-Protokollen
         teilten	
   Computernetzen,	
   ohne	
   die	
   dazu	
   nö2ge
                                                                                                     über eine Anwendung abrufbar sind. Diese Doku-
         Hardware	
  und	
  Netzwerktechnologie	
  genau	
  zu	
  kennen.
                                                                                                     mente sind untereinander mittels Hyperlinks ver-
                                                                                                     knüpft und bilden dadurch ein weltweites Netz an In-
  Die Kommunikation in diesem Netzwerk wird                                                          formationen. Die Anwendung, mit der auf diese
über Protokolle geregelt. Ein Protokoll ist eine Re-                                                 Seiten zugegriffen werden kann, wird als Browser be-


           7                     Anwendungsschicht                                                                                     HTTP(S)
           6                     Darstellungsschicht                                      Anwendungsorien2erte	
                         FTP
           5                   Kommunika2onsschicht                                            Schichten                              POP,	
  SMTP
           4                       Transportschicht                                                                                    TCP	
  UDP
           3                     VermiElungsschicht                                         Transportorien2erte	
                         IP
           2                      Sicherungsschicht                                               Schichten
                                                                                                                                       Ethernet
           1                    Physikalische	
  Schicht
      Tabelle	
  1:	
  OSI-­‐Schichtenmodell
Webtechnologien.	
  Technische	
  Anforderungen	
  an	
  Informa2onssysteme—	
  3


zeichnet. Bekannte Browser sind der Internet Ex-                                            meisten Anwendungen im Web ist es aber notwendig,
plorer von Microsoft, Firefox von Mozilla, Safari von                                       mehrere Anfragen in Zusammenhang zueinander zu
Apple oder Opera von Opera Software.                                                        sehen. So besteht zum Beispiel der Bestellvorgang in
                                                                                            einem Webshop durchaus aus mehreren sequentiellen
           Weitere	
   Browser	
   können	
   Sie	
   bspw.	
   bei	
   Wikipedia
                                                                                            Anfragen (Auswahl der Waren, Eingabe der Adresse,
  !        finden	
   (hEp://de.wikipedia.org/wiki/Liste_von_Web-­‐
           browsern)	
   oder	
   in	
   der	
   L3T-­‐Gruppe	
   bei	
   Mister	
   Wong
                                                                                            Bestätigung des Kaufes). Solche Zusammenhänge
                                                                                            können nicht durch das Protokoll selbst verwaltet
           unter	
  #webbrowser	
  #l3t	
  .                                                werden, sondern müssen durch die Anwendungen
                                                                                            gehandhabt werden, welche ihre Daten über HTTP
                                                                                            übertragen. Es können hierzu Sitzungen (Sessions)
   Jedes Dokument im Web ist durch eine URL                                                 verwendet werden, in denen eine eindeutige ID mit
(Uniform Resource Locator) identifiziert. Diese URL                                         jeder Anfrage versendet wird. Eine andere Mög-
besteht im Web zumeist aus drei Komponenten: Pro-                                           lichkeit ist die Verwendung von Cookies, mit denen
tokoll, Host und Pfad.                                                                      der Browser persistente Informationen (zum Beispiel
                                                                                            Kundendaten) zu einem Webserver lokal speichern
           Diese	
  Komponenten	
  der	
  URL	
  sind	
  folgendermaßen	
  an-­‐            kann. Üblicherweise beginnen solche Sessions mit der
  !        geordnet:	
  protokoll://host/pfad                                               Anmeldung mittels Login und Passwort und enden
                                                                                            durch Abmeldung, oder wenn der Browser ge-
           Die	
  URL	
  kann	
  darüber	
  hinaus	
  einen	
  Port	
  („Anschluss“
           am	
  Server;	
  hEp://www.example.org:80)	
  und	
  Anfrage-­‐                  schlossen wird.
           string	
   (zusätzliche	
   Informa2onen	
   wie	
   die	
   Inhalte	
   einer
           Suchanfrage;	
   hEp://www.example.org:80/demo/ex-­‐
                                                                                                       HTTP	
   ist	
   ein	
   zustandsloses	
   Anfrage/Antwort-­‐Protokoll
           ample.cgi?land=de&stadt=aa)	
  beinhalten.
                                                                                               !       und	
  dient	
  zur	
  ÜbermiElung	
  von	
  Daten	
  im	
  WWW.


           Iden2fizieren	
  Sie	
  die	
  drei	
  Teile	
  der	
  URL                        HTTPS	
  
   ?       hEp://de.wikipedia.org/wiki/Wikipedia:Hauptseite
                                                                                            Die Übertragung der Daten in Klartextform bei
                                                                                            HTTP ist nicht in jedem Fall wünschenswert. So
HTTP	
                                                                                      könnten sensible Daten wie zum Beispiel Kenn-
                                                                                            wörter durch beliebige „Zuhörer“ (an z.B. den für die
Der Browser verständigt sich mit dem Webserver                                              Übertragung nötigen Servern) abgefangen werden.
über das Hyptertext Transfer Protocol. Wie jedes                                            Aus diesem Grund wurde das Hypertext Transfer
Protokoll beschreibt HTTP den Aufbau der Nach-                                              Protocol Secure (HTTPS) als Verfahren entwickelt,
richten vom Client an den Server. Die Kommuni-                                              um Daten im Web abhörsicher zu übermitteln. Das
kation erfolgt immer über Anfragen des Clients an                                           Protokoll ist an sich identisch zu HTTP, allerdings
den Server und zugehörige Antworten. Alle Nach-                                             werden die Daten mittels dem Protokoll Secure
richten werden als Klartext, also unverschlüsselt,                                          Socket Layer bzw. Transport Layer Security
übermittelt.                                                                                (SSL/TLS) verschlüsselt. Zu Beginn der verschlüssel-
   Durch diesen Aufbau der Kommunikation ist eine                                           ten Verbindung muss sich bei HTTPS der Server
zentrale Problematik der Entwicklung von Weban-                                             identifizieren. Dies geschieht über ein Zertifikat,
wendungen bedingt: Der Server kann nicht von sich                                           welches die Identität bestätigen soll. Bei der ersten
aus mit dem Client kommunizieren, da er immer auf                                           Anfrage an einen Webserver kann es notwendig sein,
eine Anfrage angewiesen ist. Wartet eine Anwendung                                          dass die Authentizität dieses Zertifikates bestätigt
nun auf ein bestimmtes Ereignis (zum Beispiel das                                           werden muss.
Ergebnis einer aufwendigen Berechnung), kann der
                                                                                            HTML	
  
Server den Client nicht über dessen Eintritt verstän-
digen, sondern der Client muss in regelmäßigen Ab-                                          Die eigentlichen Dokumente, die über HTTP vom
ständen Anfragen über den Status an den Server                                              Server an den Client übermittelt werden, sind meist
schicken. Dies bringt natürlich einerseits zusätzlichen                                     HTML-Dokumente. Die Hypertext Markup Lan-
Netzwerkverkehr und anderseits zusätzliche Ar-                                              guage (HTML) ist eine Auszeichnungssprache,
beitszeit des Servers mit sich.                                                             welche in erster Linie die Struktur von Inhalten be-
   Zu beachten gilt bei HTTP, dass es sich um ein                                           schreibt. Der Browser zeigt anhand von HTML und
zustandsloses Protokoll handelt. Alle Anfragen sind                                         der mitgelieferten Formatierungsinformation diese
somit voneinander unabhängig zu betrachten. Für die                                         Dokumente am Client an.
4	
  —	
  Lehrbuch	
  für	
  Lernen	
  und	
  Lehren	
  mit	
  Technologien	
  (L3T)


   Eine Auszeichnungssprache dient zur Be-                                             kann diese somit einfacher gewartet und erweitert
schreibung von Daten und soll in erster Linie deren                                    werden, da Anpassungen nur am Server erfolgen
Struktur (Überschriften, Tabellen, etc.) und die Ver-                                  müssen. Bei der Benutzung ergibt sich der Vorteil,
bindungen der Dokumente (mittels Hyperlinks) be-                                       dass die zusätzliche Installation einer Software wei-
schreiben. HTML erlaubt darüber hinaus auch die                                        testgehend entfällt.
Beschreibung der Formatierung des Dokumentes. Es                                          Andererseits bringt dieser Ansatz auch einige
hat sich aus vielfältigen Gründen eingebürgert, das                                    Nachteile. So ist eine ständige Internetverbindung
Layout (die Formatierung) eines Dokumentes von                                         mit ausreichender Bandbreite notwendig. Zudem
den eigentlichen Inhalten zu trennen. Dadurch kann                                     kann der Server, bedingt durch die Tatsache, dass
man Dokumente für verschiedene Schnittstellen und                                      HTTP auf dem Anfrage-/Antwort-Prinzip basiert,
Anwendungen verwenden und muss nur das jeweilige                                       nicht selbstständig Informationen an die Clients
Layout anpassen. Zudem ist auf diese Weise auch                                        senden, sondern ist auf periodische Anfragen ange-
eine Verwendung der Dokumente für Menschen mit                                         wiesen. Zu guter Letzt bedeutet unter anderem das
Beeinträchtigungen (wie Sehschwächen) effizient                                        zustandslose Design des Protokolls, dass auf eine
möglich. Üblicherweise wird also das Aussehen der                                      Vielzahl von möglichen Angriffsszenarien einge-
HTML-Dokumente in einer separaten Datei be-                                            gangen werden sowie die Sicherheit der Weban-
schrieben. Diese Cascading Style Sheets (CSS)                                          wendung ein nicht zu vernachlässigender, zentraler
werden ebenfalls vom Browser über HTTP ange-                                           Bestandteil der Entwicklung der Software sein muss.
fordert.
                                                                                       Webservices	
  
Webanwendungen	
  
                                                                                       Webservices sind eine spezielle Art von Webanwen-
Im Laufe der Zeit haben sich die Anforderungen an                                      dungen, die der Bereitstellung von Daten für andere
Informationssysteme im Web vom der bloßen Zur-                                         Applikationen dienen (World Wide Web Consortium,
verfügungstellung von Dokumenten in Richtung aus-                                      2004). Sie sind üblicherweise Application Programm-
gefeilter Programmlogik weiterentwickelt. Wie im                                       ing Interfaces (API) und stellen als solche eine ein-
Kapitel Informationssysteme aufgezeigt, erfordern                                      heitlich definierte Schnittstelle für fremde Anwen-
natürlich auch Informationssysteme für das Lernen                                      dungen zur Verfügung um auf die Funktionalität des
und Lehren solch eine Programmlogik. Diese Pro-                                        Service zuzugreifen.
gramme, die auf einem Webserver ausgeführt                                                 In Zusammenhang mit Informationssystemen für
werden, werden als Webanwendungen bezeichnet.                                          das Lernen und Lehren bietet die Integration solcher
Wie bei statischen Webseiten wird clientseitig ein                                     Webservices innovative Ansätze für die Einbindung
Browser zur Interaktion mit dem Webserver ver-                                         externer Ressourcen und Funktionalitäten in ein der-
wendet und die Daten werden mittels HTTP(S) über-                                      artiges Informationssystem (Vossen & Westerkamp,
mittelt.                                                                               2003).
   Im Unterschied zu einer einfachen Webseite über-                                        Anders als bei Webanwendungen werden bei
mittelt der Webserver beim Aufruf der URL aller-                                       Webservices üblicherweise keine HTML-Dokumente
dings nicht ein bereits vorliegendes Dokument,                                         vom Server geladen, da für die aufrufenden Applika-
sondern ruft ein Programm auf, welches aus einer                                       tionen Formatierungen sowie die Lesbarkeit für
Vorlage für Inhalt und Formatierung sowie aus va-                                      menschliche Benutzer/innen irrelevant sind und der
riablen Daten dynamisch ein Dokument erstellt und                                      Fokus rein auf dem Inhalt liegt.
an den Client übermittelt. Der Browser übernimmt in                                        Der Grundgedanke von Webservices ist die Mög-
diesem Fall also die Rolle der Benutzerschnittstelle                                   lichkeit der automatischen Verarbeitung von Daten
für ein auf dem Server ausgeführtes Programm.                                          im Web durch Softwareagenten, welche lose ge-
Mit Webanwendungen kann komplexe Software reali-                                       koppelt Aufgaben für Benutzer/innen ausführen.
siert werden, welche clientseitig nur einen Web-                                       Webservices stellen ihre detailliert beschriebene
browser bzw. entsprechende PlugIns benötigt. Für                                       Funktionalität hierbei anderen Anwendungen zur
die Entwicklerin oder den Entwickler der Software                                      Verfügung, seien dies autonome Agenten, Weban-
                                                                                       wendungen oder andere Webservices. Dadurch
         Webanwendungen	
   sind	
   Computerprogramme,	
   die	
   auf                können Entwickler/innen bereits bestehende Funk-
   !     einem	
  Webserver	
  laufen	
  und	
  den	
  Browser	
  des	
  Clients
         als	
  BenutzerschniEstelle	
  verwenden.
                                                                                       tionalitäten in ihren eigenen Anwendungen ver-
                                                                                       wenden (Mashup, siehe Seite 7).
Webtechnologien.	
  Technische	
  Anforderungen	
  an	
  Informa2onssysteme—	
  5


Die technologische Umsetzung erfolgt meist über                                     XHTML eine auf XML basierende Auszeichnungs-
eine der folgenden Möglichkeiten:                                                   sprache, welche zur Beschreibung von Webseiten
▸ SOAP/WSDL: Ein flexibles System, in dem                                           dient.
   Nachrichten über das Simple Object Access                                        5. Einführung	
  in	
  die	
  Applika8onsentwicklung	
  für	
  das
   Protocoll (SOAP) ausgetauscht werden. Wie diese                                  Web	
  
   Nachrichten für die einzelnen Webservices aus-
   sehen, wird über die Web Services Description                                    Die Entwicklung von Webapplikationen und -ser-
   Language (WSDL) beschrieben. Anfragen und                                        vices kann generell in zwei Gruppen von Ansätzen
   Antworten sind in XML, einer allgemeinen Aus-                                    unterteilt werden. Bei serverseitigen Ansätzen er-
   zeichnungssprache für hierarchische Daten, ge-                                   folgt die Verarbeitung der Programmlogik am
   schrieben. In den Nachrichten werden die ge-                                     Webserver, der Client (und damit der Benutzer und
   wünschten Funktionen des Webservice aufge-                                       die Benutzerin) erhält lediglich das Ergebnis. Bei cli-
   rufen, die Antworten werden vom Server retour-                                   entseitigen Ansätzen erfolgt zumindest ein Teil des
   niert.                                                                           Programmablaufes am Rechner der Benutzer/innen.
▸ Representational State Tranfer (REST) be-                                         In realen Anwendungen wird meist eine Kombi-
   zeichnet eine Technologie, in der jede einzelne                                  nation von Ansätzen beider Gruppen verwendet.
   Funktion des Webservice über eine individuelle                                   Seversei8ge	
  Ansätze	
  
   URL aufgerufen wird. Die Kommunikation er-
   folgt zustandslos, ist also nicht von Sitzungen, Be-                             Der Vorteil von serverseitigen Ansätzen liegt in der
   nutzerdaten oder ähnlichem abhängig.                                             Tatsache, dass der Client außer einem Browser keine
                                                                                    weiteren Programme benötigt. Der eigentliche Pro-
                                                                                    grammcode wird serverseitig verarbeitet und das Er-
         Beschreiben	
   Sie	
   die	
   Unterschiede	
   zwischen	
   Weban-­‐     gebnis, meist ein (X)HTML-Dokument, an den
  ?      wendungen	
   und	
   Webservices!	
   Vergleichen	
   Sie	
   Ihre
         Antwort	
  mit	
  Tabelle	
  2.
                                                                                    Client gesandt. Der Nachteil von serverseitigen An-
                                                                                    sätzen liegt an der Verminderung der Reaktionsge-
                                                                                    schwindigkeit. Einerseits erfordert jede Nutzeraktion
                                                                                    einen erneuten HTTP-Request (Anfrage) und damit
                                                                                    einen neuen Aufruf der Seite. Andererseits benötigt
             Webanwendung                           Webservice
                                                                                    das Ausführen der Programmlogik Rechenzeit am
      Zielgruppe:	
  (menschliche)         Zielgruppe:	
  andere	
  Ap-­‐           Server und vermindert somit zusätzlich dessen Reak-
      Benutzer	
                           plika2onen	
                             tionszeit.
      Ausgabe	
  als	
  HTML	
             Ausgabe	
  als	
  XML	
  o.ä.	
  für         PHP ist der heute wohl am meisten verbreitete
      Clientsei2ges	
  Programm:           Maschinen	
  op2mierte                   serverseitige Ansatz für Webapplikationen. Die Ab-
      Browser	
                            Formate	
  
                                                                                    kürzung, ursprünglich „Personal Home Page tools“,
                                           Verarbeitung	
  in	
  anderen
                                                                                    ist ein rekursives Akronym für PHP:, „Hypertext Pre-
                                           Applika2onen	
  
                                                                                    processor“ (The PHP Group, 2010). Es handelt sich
                                                                                    bei PHP um eine Skriptsprache, das heißt der eigent-
      Tabelle	
  2:	
  Unterschiede	
  von	
  Webanwendung	
  und
                                                                                    liche Programmcode wird nicht zu einem Bytecode
      Webservice
                                                                                    kompiliert (der direkt vom Rechner ausgeführt
4. XML	
                                                                            werden kann), sondern bei jedem Aufruf von einem
                                                                                    Interpreter neu verarbeitet. Dieser Performance-
   Die EXtensible Markup Language (XML) be-                                         Nachteil kann aber durch optionale Erweiterungen
schreibt eine sehr allgemeine, flexible und für indivi-                             der Software kompensiert werden. PHP-Pro-
duelle Bedürfnisse erweiterbare Auszeichnungs-                                      grammcode wird innerhalb der Dokumente durch ein
sprache. Wie HTML dient sie zur Darstellung struk-                                  vorangestelltes <?php und ?> am Ende des Codes ge-
turierter Inhalte, ist aber in erster Linie nicht für die                           kennzeichnet. Der Interpreter ignoriert Inhalte au-
menschenlesbare Darstellung gedacht. Sie ist von                                    ßerhalb dieser Begrenzungen und übermittelt diese
konkreten Plattformen und Implementierungen un-                                     unverändert an den Client. So kann Programmlogik
abhängig und durch ihre Charakteristik als Meta-                                    beispielsweise direkt in HTML-Auszeichnungen ein-
sprache vielseitig verwendbar. Letzteres bedeutet,                                  gebettet werden. Seine Verbreitung hat PHP meh-
dass sich auf Basis von XML durch Verwendung                                        reren Aspekten zu verdanken. Einerseits steht es im
eines Schemas spezialisierte Dialekte für einzelne An-                              Rahmen vieler günstiger Webhosting-Angebote zur
wendungsfälle definieren lassen. So ist beispielsweise                              Verfügung (vorinstalliert auf Servern), da es einfach
6	
  —	
  Lehrbuch	
  für	
  Lernen	
  und	
  Lehren	
  mit	
  Technologien	
  (L3T)


zu installieren, zu warten und in bestehende                                           denen .NET-Programmiersprachen erstellt werden.
Webserver zu integrieren ist. Andererseits ist PHP für                                 Gebräuchlich sind hierbei C# (C Sharp) und
Entwickler/innen schnell zu erlernen und sehr fle-                                     VB.NET (Visual Basic.NET). Anders als bei PHP
xibel. Nachteile liegen in der Tatsache, dass PHP po-                                  werden bei ASP.NET Programm-Code und HTML
tentiell erlaubt, schlechter skalierbare und unsichere                                 voneinander getrennt. Da der Programmcode da-
Webanwendungen zu entwickeln, auch wenn hier die                                       durch kompiliert vorliegen kann, wird die Abar-
konkrete Umsetzung einen deutlichen Einfluss haben                                     beitung beschleunigt. Der Nachteil von ASP.NET
kann. Speziell unerfahrenen Entwicklerinnen und                                        liegt in der Tatsache, dass die Technologie sowohl
Entwicklern fällt es mit anderen Technologien                                          proprietär als auch kostenpflichtig ist und darüber
leichter, auf die Aspekte Skalierbarbeit und Sicherheit                                hinaus einen Microsoft Webserver erfordert.
Rücksicht zu nehmen, da sie dort zur Einhaltung ent-
                                                                                       Clientsei(ge	
  Ansätze	
  
sprechender Regeln gezwungen werden.
    Java Servlets basieren auf der objektorientieren                                   Im Gegensatz zu serverseitigen Ansätzen wird hier
Programmiersprache Java. Sie sind Java-Klassen (lo-                                    die Programmlogik direkt auf dem Client abgear-
gisch gekapselte Teile von Programmcode), welche                                       beitet. Dies bietet den Vorteil, dass sowohl weniger
auf einem Server für die Abarbeitung von Anfragen                                      Datenverkehr notwendig ist, als auch die Ressourcen
der Clients zuständig sind. Als Antwort auf diese An-                                  des Webservers geschont werden. Von Nachteil ist al-
fragen liefern Servlets dynamisch generierte HTML-                                     lerdings, dass clientseitig eine komplexere Software
Dokumente. Anders als bei PHP werden diese Pro-                                        erforderlich ist, der Client entsprechend leistungs-
gramme nicht zur Laufzeit interpretiert, sondern                                       fähig sein muss um die Programme abarbeiten zu
liegen bereits kompiliert vor, was die Abarbeitung be-                                 können und potentiell sicherheitskritische Berech-
schleunigt. Obwohl die Entwicklung mit Java die Ein-                                   nungen nur auf der Serverseite durchgeführt werden
arbeitung in eine komplexere Technologie bedeutet,                                     sollten.
bietet diese Technologie einige Vorteile. So kann sie                                      Die wohl wichtigste Basistechnologie in diesem
durch Anwendung der richtigen Architektur große                                        Zusammenhang ist JavaScript. Der Interpreter für
Verbesserungen in Skalierbarkeit und Erweiterbarkeit                                   diese Sprache ist bereits in den Browser integriert,
bedeuten. Um abgearbeitet zu werden benötigen Java                                     wodurch keine zusätzliche Softwareinstallation not-
Servlets einen Servlet Container, wie Apache Tomcat,                                   wendig ist. Allerdings sind diese Interpreter je nach
der den einfachen Webserver ersetzt. Diese technolo-                                   Browser unterschiedlich, was für die Entwicklung der
gische Einschränkung ist auch der Grund dafür, dass                                    Software zusätzlichen Aufwand bedeutet, um Java-
Java Servlets eher bei großen (Business-)Anwen-                                        Script-Programme auf allen (bzw. möglichst vielen)
dungen als bei kleinen und mittleren Webanwen-                                         Browsern lauffähig („browser-save“) zu machen. Ja-
dungen verwendet werden. Nur wenige Webhoster                                          vascript-Programme können entweder direkt in
bieten Pakete mit einem Servlet Container an, da die                                   HTML-Seiten integriert sein oder in eigene Dateien
Installation und die Administration aufwendiger ist.                                   ausgelagert werden. Die implementierte Funktiona-
    Java Server Pages (JSP) sind eine weitere auf Java                                 lität kann hierbei von einfachen Aufgaben, wie der
basierende Technologie. Bei klassischen Servlets ist                                   Validierung von Formulareingaben, bis hin zu dyna-
die Ausgabe der resultierenden Webseiten recht auf-                                    mischer Manipulation der vom Webserver übertra-
wendig. Syntaktisch wird bei JSP, ähnlich wie bei                                      genen Webseite reichen.
PHP, der Java Programmcode mit <%@ und %> abge-                                            Asynchronous JavaScript and XML (AJAX) be-
grenzt. Der Rest des Dokumentes wird nicht inter-                                      zeichnet ein Konzept von Webanwendungen, bei
pretiert und enthält die HTML-Beschreibung der                                         denen JavaScript eingesetzt wird, um Informationen
Webseite. Somit sind JSP Seiten ähnlich den Servlets,                                  von einem Webserver anzufordern. Bei klassischen
erlauben jedoch die Kombination von Programm-                                          Webseiten muss wiederum für jede Aktion vom
und HTML-Code in einem Dokument und er-                                                Client eine Anfrage erstellt und die Antwort des
leichtern so beide Technologien miteinander zu kom-                                    Servers vom Browser interpretiert werden. Dies er-
binieren.                                                                              fordert ein komplettes Neuladen der Seite, auch
    Active Server Pages (ASP) war ursprünglich ein                                     wenn sich nur kleine Teile ändern. Mit AJAX werden
PHP ähnlicher Ansatz, der auf proprietären Techno-                                     vom Webserver nur mehr Teilinhalte angefordert.
logien der Firma Microsoft basiert. In der Weiterent-                                  Diese werden als XML-Dokumente übermittelt und
wicklung als ASP.NET basiert die aktuelle Techno-                                      anhand der XML-Struktur interpretiert. AJAX mani-
logie auf dem Microsofts .NET-Framework. Die ei-                                       puliert nun die bereits geladene Seite und ändert nur
gentlichen Anwendungen können hierbei in verschie-                                     jene Daten, die wirklich notwendig sind. Dadurch
Webtechnologien.	
  Technische	
  Anforderungen	
  an	
  Informa2onssysteme—	
  7



                                                           Serversei'ger	
                                                              Clientsei'ger	
  
                                                               Ansatz                                                                       Ansatz
   Vorteile                    unabhängig	
  von	
  clientsei2ger	
  SoHwareausstat-­‐                 Reak2onszeiten	
  ähnlich	
  zu	
  Desktop-­‐Anwendungen	
  
                               tung                                                                    nur	
  benö2gte	
  Inhalte	
  werden	
  geladen	
  und	
  in	
  die	
  aktuelle
                               gleiches	
  Verhalten	
  auf	
  allen	
  Clients                        Seite	
  integriert	
  
   Nachteile                   jede	
  Ak2on	
  erfordert	
  einen	
  Aufruf	
  serversei2ger          Verhalten	
  von	
  Browser	
  (JavaScript	
  Engine)	
  abhängig	
  
                               Funk2onalität	
                                                         Sicherheit	
  der	
  Anwendungen	
  ist	
  aufwendiger	
  zu	
  gewähr-­‐
                               jede	
  Ak2on	
  erfordert	
  kompleEes	
  Neuladen	
  der              leisten	
  
                               aktuellen	
  Seite	
  

      Tabelle	
  3:	
  Vor-­‐	
  und	
  Nachteile	
  des	
  serverseitigen	
  und	
  des	
  clientseitigen	
  Ansatzes

erhält man wesentlich performantere („schnellere“)                                                   Funktionalitäten oder Integration fremder Inhalte in
Applikationen, mit denen ein Verhalten ähnlich zu                                                    eine Webapplikation werden als Mashup bezeichnet.
Desktop-Anwendungen (in „Klick-Geschwind-                                                            Dieser Begriff wurde ursprünglich in der Musik-
igkeit“) erreicht wird. Dies führte im nächsten Schritt                                              branche verwendet, um Remixes zu beschreiben. Im
zu RIA.                                                                                              Zusammenhang von Webapplikationen bedeutet es
    Als „Rich Internet Application“ (RIA) bezeichnet                                                 eine in der Anwendung transparente Integration
man jene Webanwendungen, welche durch client-                                                        fremder Dienste und Inhalte.
seitige Anwendung von JavaScript Möglichkeiten wie                                                      Damit sind jedoch auch Nachteile verbunden:
vergleichbare Desktop-Anwendungen bieten. So ist                                                     ▸ Wer haftet bei sicherheitskritischen Anwendungen,
es zum Beispiel mit diesem Ansatz möglich, Office-                                                      wenn Funktionen nicht korrekt funktionieren,
Anwendungen als Webanwendungen zu implemen-                                                             zum Beispiel wenn bei Lernsoftware eine Appli-
tieren. Anders als bei Desktop-Anwendungen müs-                                                         kation die Prüfungsfragen falsch auswertet?
sen diese allerdings nicht installiert werden und                                                    ▸ Alle Server, welche die Services anbieten, müssen
bieten die Möglichkeit auf jedem Rechner, welcher                                                       ständig verfügbar sein – dies liegt jedoch nicht in
über einen kompatiblen Browser verfügt, ausgeführt                                                      der Verantwortung des Betreibers.
zu werden (sind also unabhängig vom verwendeten                                                      ▸ Das Urheberrecht bzw. die Lizenzierung führt zu
Betriebssystem). Die Daten werden hierbei zentral                                                       der Frage, ob man die Funktionen überhaupt inte-
auf dem Server hinterlegt. Die Interaktion mit dem                                                      grieren darf (bei Facebook, Google Maps etc. mag
Webserver ist auf ein Minimum beschränkt, was flüs-                                                     dies augenscheinlich sein, bei kommerziellen An-
siges Arbeiten mit RIA ermöglicht.                                                                      bietern ist dies aber nicht gegeben).

          Stellen	
  Sie	
  die	
  Vor-­‐	
  und	
  Nachteile	
  von	
  server-­‐	
  und	
  cli-­‐           Ein	
   Mashup	
   ist	
   die	
   Integra2on	
   von	
   Inhalten	
   und	
   Funk-­‐
  ?       entsei2gen	
   Ansätzen	
   gegenüber.	
   Vergleichen	
   Sie	
   Ihre
          Antwort	
  mit	
  Tabelle	
  3.
                                                                                                       !     2onalitäten	
  anderer	
  Webapplika2onen	
  in	
  die	
  eigene.


6. Vor	
  Gebrauch	
  gut	
  schü:eln	
  –	
  Syndika(on	
  und	
  Inte-­‐                           Programmierschni:stellen	
  
gra(on	
  
                                                                                                     Application Programming Interfaces (API) sind
Moderne Webapplikationen verdanken einen großen                                                      wohldefinierte Schnittstellen für die Interaktion mit
Teil ihrer Verbreitung der Tatsache, dass deren Ver-                                                 Applikationen. Im Zusammenhang mit Webapplika-
knüpfung zu einem immer zentraleren Teil ihrer                                                       tionen werden sie üblicherweise als Webservices im-
Funktionalität wird. Dies geht über einfache Hyper-                                                  plementiert und liefern entweder XML-Daten oder
links weit hinaus: Inhalte und Funktionalitäten                                                      vergleichbare strukturierte Daten wie die einfachere
werden zur Verfügung gestellt und in andere Web-                                                     JavaScript Object Notation (JSON). Sowohl SOAP-
Applikationen integriert. So wird eine Kreativität bei                                               als auch REST-Ansätze sind möglich, auch wenn der
der Erstellung von neuen Applikationen ermöglicht,                                                   Trend der letzten Jahre in Richtung REST-Anwen-
wie sie ohne diese Offenheit und den daraus resultie-                                                dungen weist. Einerseits können API dazu verwendet
renden Vorteil bestehende Funktionalität nicht erneut                                                werden um Funktionalität zur Verfügung zu stellen,
selbst implementieren zu müssen, nur schwer vor-                                                     wie zum Beispiel die Darstellung von Koordinaten in
stellbar wäre. Die Syndikation mehrerer fremder
8	
  —	
  Lehrbuch	
  für	
  Lernen	
  und	
  Lehren	
  mit	
  Technologien	
  (L3T)


Karten mittels der Google-Maps-API. Abbildung 1                                                     nannte Feeds, zur Verfügung gestellt werden. Die
zeigt ein Beispiel der Visualisierung von geographi-                                                Daten liegen hierbei in einem XML Format vor. RSS
schen Koordinaten mittels der Google Maps API.                                                      dient hauptsächlich zur Benachrichtigung bei häufig
                                                                                                    aktualisierten Informationen, wie Weblogs oder
                                                                                                    Nachrichtenseiten. Benutzer/innen können RSS-
                                                                                                    Feeds mit einem Client abonnieren, der ihnen immer
                                                                                                    die jeweils neuesten Meldungen anzeigt. Abbildung 2
                                                                                                    zeigt das gebräuchlichste Icon für RSS-Feeds, wie es
                                                                                                    zum Beispiel im Browser Firefox Verwendung findet.
                                                                                                    In Webapplikationen bietet RSS eine gute Mög-
                                                                                                    lichkeit zur Syndikation von Daten aus unterschied-
                                                                                                    lichen Quellen. Da die Daten in XML vorliegen,
                                                                                                    können sie einfach maschinell weiterverarbeitet und
                                                                                                    in die eigene Webseite integriert werden.



      Abbildung	
  1:	
  TUGeowiki:	
  Integration	
  von	
  Kartenma-­‐
      terial	
  über	
  die	
  Google	
  Maps	
  API.	
  Quelle:	
  Safran	
  und                         Abbildung	
  2:	
  	
  Icon	
  für	
  RSS	
  Feeds	
  
      Zaka,	
  2008
                                                                                                    Widgets	
  
                                                                                                    Eine dritte Technologie, die bei der Integration ver-
   Andererseits können solche Applikationen auch                                                    schiedener Webanwendungen Anwendung findet,
Inhalte zur Verfügung stellen. So ist es mit der Flickr-                                            sind Widgets. Ein Widget ist ein kleines, in sich abge-
API zum Beispiel möglich, auf Fotos des Internet-                                                   schlossenes Programm, das im Rahmen einer an-
dienstes zuzugreifen. Andere API ermöglichen bei-                                                   deren grafischen Benutzeroberfläche abläuft. Übli-
spielsweise die Integration von Daten aus sozialen                                                  cherweise ist die Funktionalität solch eines Widgets
Netzwerken, wie die Facebook-API.                                                                   spezialisiert und eingeschränkt. Im Desktop-Bereich
                                                                                                    haben sich Widgets inzwischen bei den meisten Be-
RSS	
  
                                                                                                    triebssystemen durchgesetzt und können entweder
Real Simple Syndication (RSS) beschreibt eine Tech-                                                 direkt als Teil des Desktops (wie Gadgets in Mi-
nologie, mit deren Hilfe Inhalte von Websites, soge-                                                crosoft Windows) oder über eine getrennte Widget-

   In der Praxis: Die Personal Learning Environment an der TU Graz
   Als	
  Praxisbeispiel	
  für	
  ein	
  Mashup	
  kann	
  die	
  Personal	
  Learning             eigneten,	
  zu	
  ihrem	
  Studium	
  benö2gten	
  Widgets	
  auszusuchen
   Environment	
   (PLE)	
   an	
   der	
   Technischen	
   Universität	
   Graz	
   ge-­‐          und	
   diese	
   nach	
   ihren	
   aktuellen	
   Bedürfnissen	
   zu	
   konfigu-­‐
   nannt	
   werden.	
   In	
   dieser	
   persönlichen	
   Lernumgebung	
   sind                   rieren.
   verschiedene,	
   zum	
   Teil	
   unabhängige	
   und	
   verteilte	
   Dienste
   der	
   TU	
   Graz	
   so	
   wie	
   andere	
   Webanwendungen	
   aus	
   dem	
   In-­‐
   ternet	
  integriert.	
  Abbildung	
  3	
  stellt	
  dieses	
  Grundkonzept	
  gra-­‐
   p h i s c h	
   d a r .	
   U n i v e r s i t ä t s d i e n s t e	
   w i e	
   d a s
   Administra2onssystem	
   (TUGRAZ.online),	
   LMS	
   (TUGTC),	
   Blo-­‐
   gosphere	
  (TUGLL)	
  und	
  viele	
  Lernobjekte	
  für	
  unterschiedliche
   Lehrveranstaltungen	
  sind	
  in	
  der	
  PLE	
  kombiniert.
   Zusätzlich	
   dazu	
   können	
   zahlreiche	
   fremde	
   Lernobjekte	
   und
   webbasierte	
   Dienste	
   wie	
   Google-­‐Applika2onen,	
   Flickr,
   YouTube,	
  TwiEer,	
  FaceBook,	
  etc.	
  integriert	
  werden.	
  Die	
  Inte-­‐
   gra2on	
   dieser	
   Dienste	
   erfolgt	
   miEels	
   Widgets.	
   Das	
   PLE	
   als
   eine	
   Rich	
   Internet	
   Applica2on	
   (RIA)	
   bietet	
   ein	
   Mashup	
   von
   Widgets,	
  die	
  an	
  den	
  persönlichen	
  Nutzungsbedürfnissen	
  an-­‐                    Abbildung	
  3:	
  PLE:	
  Mashup	
  von	
  Widgets	
  ermöglicht	
  die	
  Inte-­‐
   passbar	
  sind.	
  Die	
  Benutzer/innen	
  sind	
  in	
  der	
  Lage	
  sich	
  die	
  ge-­‐   gra2on	
   von	
   verschiedenen	
   Universitätsdiensten	
   sowie	
   der
                                                                                                    fremden	
  Ressourcen	
  aus	
  dem	
  Internet.
Webtechnologien.	
  Technische	
  Anforderungen	
  an	
  Informa2onssysteme—	
  9


Engine (wie das Dashboard bei Mac OS X) benutzt                            mutung einer Desktop-Anwendung vermittelt wird.
werden. Im Zusammenhang mit Webapplikationen                               Durch die Anwendung von AJAX haben sich die Re-
bezeichnet der Begriff Widget genauso eine eigen-                          aktionszeiten der Webanwendungen erheblich ver-
ständige, abgeschlossene und in eine andere Appli-                         bessert.
kation integrierte Funktionalität. Diese sind meist in-                       Zu guter Letzt gehört Syndikation und Integration
nerhalb der Benutzerschnittstelle der eigentlichen                         zum Stand der Technik in vielen Anwendungsbe-
Webapplikation mehr oder weniger frei positio-                             reichen. Durch die Möglichkeiten, welche Webser-
nierbar. So können Widgets zum Beispiel Daten über                         vices und RIA bieten, kann auf Funktionalität und
einen RSS-Feed abrufen, oder auf Funktionalitäten                          Inhalte anderer Anwendungen leicht zurückgegriffen
mittels einer API zugreifen. Ein Beispiel für Widgets                      werden. Diese können nahtlos in die eigene Benut-
sind die Apps des sozialen Netzwerks Facebook,                             zungsschnittstelle integriert werden.
welche nicht selbst von Facebook, sondern von an-                          Literatur
deren Entwicklerinnen und Entwicklern erstellt, aber
in die Webapplikation Facebook integriert werden.                          ▸ Vinton Cerf (1993). The history of Internet. In: B. Aboba
Für Benutzer/innen ist kaum ein Unterschied er-                              (Hrsg.), The Online User's Encyclopedia, Addison-Wesley.
kennbar. Über eine API greifen diese Apps zusätzlich                       ▸ Cailliau, R. (1995). A Little History of the World Wide Web.
auf die Funktionalität von Facebook zu.                                      URL: http://www.w3.org/History.html [2010-09-08].
                                                                           ▸ Safran, C. & Zaka, B. (2008). A Geospatial Wiki for m-
7. Aktuelle	
  Trends	
  in	
  der	
  Entwicklung	
  von	
  Webanwen-­‐
                                                                             Learning. In: Proceedings of the 2008 International Confe-
dungen	
  
                                                                             rence on Computer Science and Software Engineering, IEEE
In den letzten Jahren haben sich drei Ansätze bei der                        Computer Society, Washington, 5, 109-112.
Entwicklung von Webanwendungen durchgesetzt.                               ▸ The PHP Group. (2010). Hypertext Preprocessor. URL:
Vom serverseitigen Standpunkt aus bieten viele, vor                          http://www.php.net [2010-01-04].
allem bekannte und große Webanwendungen, wie die                           ▸ Vossen, G. & Westerkamp, P. (2003). E-Learning as a Web
verschiedenen Google-Produkte oder Facebook, par-                            Service. In: Proceedings of the Seventh International Database
allel zu ihren Webanwendungen Webservices als API                            Engineering and Applications Symposium, Los Alamitos, CA,
an. Dies ermöglicht und ermutigt die Verwendung                              USA: IEEE Computer Society, 242.
ihrer Funktionalität in anderen Webanwendungen.                            ▸ World Wide Web Consortium (2004). Web Services Archi-
    Vom clientseitigen Standpunkt sind RIA der Stand                         tecture. URL: http://www.w3.org/TR/ws-arch/#id2268743
der Technik. Hier wird bei vielen Webanwendungen                             [2010-01-12].
darauf Wert gelegt, dass den Benutzern die An-

Weitere ähnliche Inhalte

Ähnlich wie Webtechnologien - Technische Anforderungen an Informationssysteme

Das Internet ist dezentral. Und andere gefährliche Mythen
Das Internet ist dezentral. Und andere gefährliche MythenDas Internet ist dezentral. Und andere gefährliche Mythen
Das Internet ist dezentral. Und andere gefährliche MythenSebastian Deterding
 
Handout struktur und geschichte des internet
Handout struktur und geschichte des internetHandout struktur und geschichte des internet
Handout struktur und geschichte des internetJan Gerhards
 
Jörissen: Medienbildung und das Social Web (Preprint)
Jörissen: Medienbildung und das Social Web (Preprint)Jörissen: Medienbildung und das Social Web (Preprint)
Jörissen: Medienbildung und das Social Web (Preprint)Benjamin Jörissen
 
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1Goldmann: Urheberrechtliche Probleme im Internet – Teil 1
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1Raabe Verlag
 
Semantic web d
Semantic web dSemantic web d
Semantic web dBortecin
 
Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Intelliact AG
 
Semantic Web für Menschen wie du und ich
Semantic Web für Menschen wie du und ichSemantic Web für Menschen wie du und ich
Semantic Web für Menschen wie du und ichTobias Kuhn
 
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)Thomas Tunsch
 
Trend one destination_outernet_whitepaper_itb_2011_german
Trend one destination_outernet_whitepaper_itb_2011_germanTrend one destination_outernet_whitepaper_itb_2011_german
Trend one destination_outernet_whitepaper_itb_2011_germanITB Berlin
 
Outernet Whitepaper (German)
Outernet Whitepaper (German)Outernet Whitepaper (German)
Outernet Whitepaper (German)TRENDONE GmbH
 
soziales semantisches web
soziales semantisches websoziales semantisches web
soziales semantisches web_veronika_
 

Ähnlich wie Webtechnologien - Technische Anforderungen an Informationssysteme (20)

Semantisches Web
Semantisches WebSemantisches Web
Semantisches Web
 
Barrierefreiheit - Grundlage gerechter webbasierter Lernchancen
Barrierefreiheit - Grundlage gerechter webbasierter LernchancenBarrierefreiheit - Grundlage gerechter webbasierter Lernchancen
Barrierefreiheit - Grundlage gerechter webbasierter Lernchancen
 
Webtechnologien - Technische Anforderungen an Informationssysteme
Webtechnologien - Technische Anforderungen an InformationssystemeWebtechnologien - Technische Anforderungen an Informationssysteme
Webtechnologien - Technische Anforderungen an Informationssysteme
 
Informationssysteme - Technische Anforderungen für das Lernen und Lehren
Informationssysteme - Technische Anforderungen für das Lernen und LehrenInformationssysteme - Technische Anforderungen für das Lernen und Lehren
Informationssysteme - Technische Anforderungen für das Lernen und Lehren
 
Das Internet ist dezentral. Und andere gefährliche Mythen
Das Internet ist dezentral. Und andere gefährliche MythenDas Internet ist dezentral. Und andere gefährliche Mythen
Das Internet ist dezentral. Und andere gefährliche Mythen
 
[9] Nu P 05 1
[9] Nu P 05 1[9] Nu P 05 1
[9] Nu P 05 1
 
Handout struktur und geschichte des internet
Handout struktur und geschichte des internetHandout struktur und geschichte des internet
Handout struktur und geschichte des internet
 
Jörissen: Medienbildung und das Social Web (Preprint)
Jörissen: Medienbildung und das Social Web (Preprint)Jörissen: Medienbildung und das Social Web (Preprint)
Jörissen: Medienbildung und das Social Web (Preprint)
 
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1Goldmann: Urheberrechtliche Probleme im Internet – Teil 1
Goldmann: Urheberrechtliche Probleme im Internet – Teil 1
 
Semantic web d
Semantic web dSemantic web d
Semantic web d
 
Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)Innovations- und Informationskultur mit Web 2.0 (2010)
Innovations- und Informationskultur mit Web 2.0 (2010)
 
Semantic Web für Menschen wie du und ich
Semantic Web für Menschen wie du und ichSemantic Web für Menschen wie du und ich
Semantic Web für Menschen wie du und ich
 
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)
Mangel an Museumsknoten: Vernetzungsfähigkeit einer Gedächtnisorganisation (PDF)
 
[13] Nu P 08 2
[13] Nu P 08 2[13] Nu P 08 2
[13] Nu P 08 2
 
Trend one destination_outernet_whitepaper_itb_2011_german
Trend one destination_outernet_whitepaper_itb_2011_germanTrend one destination_outernet_whitepaper_itb_2011_german
Trend one destination_outernet_whitepaper_itb_2011_german
 
Outernet Whitepaper (German)
Outernet Whitepaper (German)Outernet Whitepaper (German)
Outernet Whitepaper (German)
 
Member79
Member79Member79
Member79
 
soziales semantisches web
soziales semantisches websoziales semantisches web
soziales semantisches web
 
[10] Nu P 06 1
[10] Nu P 06 1[10] Nu P 06 1
[10] Nu P 06 1
 
Gerlach Hauptmann Innovative Verwaltung Twitter Wiki Blog&Co
Gerlach Hauptmann Innovative Verwaltung Twitter Wiki Blog&CoGerlach Hauptmann Innovative Verwaltung Twitter Wiki Blog&Co
Gerlach Hauptmann Innovative Verwaltung Twitter Wiki Blog&Co
 

Mehr von L3T - Lehrbuch für Lehren und Lernen mit Technologie

Mehr von L3T - Lehrbuch für Lehren und Lernen mit Technologie (20)

Einleitung - zum Lehrbuch und dem etwas anderen Lehrbuchprojekt
Einleitung - zum Lehrbuch und dem etwas anderen LehrbuchprojektEinleitung - zum Lehrbuch und dem etwas anderen Lehrbuchprojekt
Einleitung - zum Lehrbuch und dem etwas anderen Lehrbuchprojekt
 
Von der Kreidetafel zum Tablet - Eine technische Übersicht
Von der Kreidetafel zum Tablet - Eine technische ÜbersichtVon der Kreidetafel zum Tablet - Eine technische Übersicht
Von der Kreidetafel zum Tablet - Eine technische Übersicht
 
Die Geschichte des WWW - Persönlicher Bericht aus europäischer Perspektive
Die Geschichte des WWW - Persönlicher Bericht aus europäischer PerspektiveDie Geschichte des WWW - Persönlicher Bericht aus europäischer Perspektive
Die Geschichte des WWW - Persönlicher Bericht aus europäischer Perspektive
 
Hypertext - Geschichte, Systeme, Strukturmerkmale und Werkzeuge
Hypertext - Geschichte, Systeme, Strukturmerkmale und WerkzeugeHypertext - Geschichte, Systeme, Strukturmerkmale und Werkzeuge
Hypertext - Geschichte, Systeme, Strukturmerkmale und Werkzeuge
 
Standards für Lehr- und Lerntechnologien - Metadaten, Inhaltsformate und Besc...
Standards für Lehr- und Lerntechnologien - Metadaten, Inhaltsformate und Besc...Standards für Lehr- und Lerntechnologien - Metadaten, Inhaltsformate und Besc...
Standards für Lehr- und Lerntechnologien - Metadaten, Inhaltsformate und Besc...
 
Human-Computer-Interaction - Usability Engineering im Bildungskontext
Human-Computer-Interaction - Usability Engineering im BildungskontextHuman-Computer-Interaction - Usability Engineering im Bildungskontext
Human-Computer-Interaction - Usability Engineering im Bildungskontext
 
Didaktisches Handeln - Die Beziehung zwischen Lerntheorien und Didaktischem D...
Didaktisches Handeln - Die Beziehung zwischen Lerntheorien und Didaktischem D...Didaktisches Handeln - Die Beziehung zwischen Lerntheorien und Didaktischem D...
Didaktisches Handeln - Die Beziehung zwischen Lerntheorien und Didaktischem D...
 
Medienpädagogik - Strömungen, Forschungsfragen und Aufgaben
Medienpädagogik - Strömungen, Forschungsfragen und AufgabenMedienpädagogik - Strömungen, Forschungsfragen und Aufgaben
Medienpädagogik - Strömungen, Forschungsfragen und Aufgaben
 
Forschungszugänge und -methoden im interdisziplinären Feld des technologieges...
Forschungszugänge und -methoden im interdisziplinären Feld des technologieges...Forschungszugänge und -methoden im interdisziplinären Feld des technologieges...
Forschungszugänge und -methoden im interdisziplinären Feld des technologieges...
 
Planung und Organisation - Technologieeinsatz von der Bedarfsanalyse bis zur ...
Planung und Organisation - Technologieeinsatz von der Bedarfsanalyse bis zur ...Planung und Organisation - Technologieeinsatz von der Bedarfsanalyse bis zur ...
Planung und Organisation - Technologieeinsatz von der Bedarfsanalyse bis zur ...
 
Multimedia und Gedächtnis - Kognitionspsychologische Sicht auf das Lernen mit...
Multimedia und Gedächtnis - Kognitionspsychologische Sicht auf das Lernen mit...Multimedia und Gedächtnis - Kognitionspsychologische Sicht auf das Lernen mit...
Multimedia und Gedächtnis - Kognitionspsychologische Sicht auf das Lernen mit...
 
Mobiles und ubiquitäres Lernen - Technologien und didaktische Aspekte
Mobiles und ubiquitäres Lernen - Technologien und didaktische AspekteMobiles und ubiquitäres Lernen - Technologien und didaktische Aspekte
Mobiles und ubiquitäres Lernen - Technologien und didaktische Aspekte
 
Prüfen mit Computer und Internet - Didaktik, Methodik und Organisation von E-...
Prüfen mit Computer und Internet - Didaktik, Methodik und Organisation von E-...Prüfen mit Computer und Internet - Didaktik, Methodik und Organisation von E-...
Prüfen mit Computer und Internet - Didaktik, Methodik und Organisation von E-...
 
Blogging und Microblogging - Anwendungsmöglichkeiten im Bildungskontext
Blogging und Microblogging - Anwendungsmöglichkeiten im BildungskontextBlogging und Microblogging - Anwendungsmöglichkeiten im Bildungskontext
Blogging und Microblogging - Anwendungsmöglichkeiten im Bildungskontext
 
Einsatz kollaborativer Werkzeuge - Lernen und Lehren mit webbasierten Anwendu...
Einsatz kollaborativer Werkzeuge - Lernen und Lehren mit webbasierten Anwendu...Einsatz kollaborativer Werkzeuge - Lernen und Lehren mit webbasierten Anwendu...
Einsatz kollaborativer Werkzeuge - Lernen und Lehren mit webbasierten Anwendu...
 
Offene und partizipative Lernkonzepte - E-Portfolios, MOOCs und Flipped Class...
Offene und partizipative Lernkonzepte - E-Portfolios, MOOCs und Flipped Class...Offene und partizipative Lernkonzepte - E-Portfolios, MOOCs und Flipped Class...
Offene und partizipative Lernkonzepte - E-Portfolios, MOOCs und Flipped Class...
 
Qualitätssicherung im E-Learning - Veränderungen durch derzeitige Technologie...
Qualitätssicherung im E-Learning - Veränderungen durch derzeitige Technologie...Qualitätssicherung im E-Learning - Veränderungen durch derzeitige Technologie...
Qualitätssicherung im E-Learning - Veränderungen durch derzeitige Technologie...
 
Offene Lehr- und Forschungsressourcen - Open Access und Open Educational Reso...
Offene Lehr- und Forschungsressourcen - Open Access und Open Educational Reso...Offene Lehr- und Forschungsressourcen - Open Access und Open Educational Reso...
Offene Lehr- und Forschungsressourcen - Open Access und Open Educational Reso...
 
Simulationen und simulierte Welten - Lernen in immersiven Lernumgebungen
Simulationen und simulierte Welten - Lernen in immersiven LernumgebungenSimulationen und simulierte Welten - Lernen in immersiven Lernumgebungen
Simulationen und simulierte Welten - Lernen in immersiven Lernumgebungen
 
Die Akteur-Netzwerk-Theorie - Eine Techniktheorie für das Lernen und Lehren m...
Die Akteur-Netzwerk-Theorie - Eine Techniktheorie für das Lernen und Lehren m...Die Akteur-Netzwerk-Theorie - Eine Techniktheorie für das Lernen und Lehren m...
Die Akteur-Netzwerk-Theorie - Eine Techniktheorie für das Lernen und Lehren m...
 

Webtechnologien - Technische Anforderungen an Informationssysteme

  • 1. Chris2an  Safran,  Anja  Lorenz  und  Mar2n  Ebner Webtechnologien Technische Anforderungen an Informationssysteme Dieses   Kapitel   gibt   eine   Einführung   in   die   technischen   Grundlagen   von   Webtechnologien,   welche   im Rahmen   von   LernsoHware   Verwendung   finden   können.   Basierend   auf   der   zugrunde   liegenden   Infra-­‐ struktur  des  Internets  hat  vor  allem  das  World  Wide  Web  im  letzten  Jahrzehnt  alle  Arten  von  Informa2-­‐ onssystemen,   auch   solche   für   das   Lernen   und   Lehren,   nachhal2g   beeinflusst.   Dementsprechend   ist   ein Grundverständnis   der   entsprechenden   Technologien   und   technischen   Anforderungen   von   Vorteil,   um Chancen  und  Grenzen  von  webbasierter  LernsoHware  zu  erläutern.  Durch  die  zugrunde  liegenden  Archi-­‐ tekturen  und  Protokollen  des  World  Wide  Web  haben  sich  in  den  letzten  Jahren  Technologien  wie  Weban-­‐ wendungen   und   Webservices   entwickelt,   die   größere   und   reichhal2gere   Applika2onen   im   Web   ermög-­‐ lichen  als  zu  dessen  Anfangszeit.  Diese  Möglichkeiten  führten  einerseits  zu  der  Entwicklung  von  Rich  In-­‐ ternet   Applica2ons   als   „Internetanwendungen   mit   Desktop-­‐Feeling“   und   andererseits   zum   Aukommen von  Mashups,  in  welchen  diverse  Inhalte  und  Funk2onalitäten  anderer  Applika2onen  in  innova2ven  Sze-­‐ narien  neu  kombiniert  werden.  Beide  Ansätze  sind  in  der  aktuellen  Entwicklung  von  Informa2onssystemen für  das  Lernen  und  Lehren  unabdingbar. Quelle:   Robert  Ulmer hEp://www.flickr.com/photos/46422485@N03/5335122125  [2011-­‐01-­‐28] #webtech #einfuehrung   #informa2k Version  vom  1.  Februar  2011 Für  dieses  Kapitel  wird  noch  ein  Pate  gesucht, Jetzt Pate werden! mehr  Informa2onen  unter:  hEp://l3t.eu/patenschaH
  • 2. 2  —  Lehrbuch  für  Lernen  und  Lehren  mit  Technologien  (L3T) gelvorschrift, welche den Datenaustausch und die 1. Einleitung Kommunikation zwischen Computern detailliert be- Das World Wide Web bzw. das Internet hat in den schreibt. Die verschiedenen Verantwortungen werden letzten Jahren einen großen Stellenwert in unserer im Fall der Kommunikation in Rechnernetzen auf heutigen „Informationsgesellschaft“ eingenommen. einzelne Protokolle aufgeteilt. Diese Aufteilung kann So verwundert es auch nicht, dass ein großer Teil der man über das OSI-Schichtenmodell (Open System aktuellen Umsetzungen von Informationssystemen Interconnection) der internationalen Standardisie- für das Lernen und Lehren auf Webtechnologien ba- rungsgesellschaft ISO (International Standardization siert. Auch Trendtechnologien wie Soziale Medien Organisation), in dem Protokolle einer Ebene nur je- finden zunehmend Eingang in das Lernen und weils über Protokolle der benachbarten Ebenen Be- Lehren mit Technologien. scheid wissen müssen, einheitlich beschreiben. Für das Verständnis der technischen Anforde- Die Ebenen des OSI-Schichtenmodells (siehe Ta- rungen an speziell für das Lernen und Lehren entwi- belle 1) beschreiben die Kommunikation in verschie- ckelte Informationssysteme ist demnach auch ein zu- denen Abstraktionsstufen. So beschäftigt sich die un- mindest grundlegendes technisches Verständnis der terste Schicht (1) mit der physikalischen Übertragung, darunter liegenden Webtechnologien notwendig. Be- während sich die oberste Schicht (7) mit Anwen- dingt durch die Architektur und Geschichte des dungen auseinandersetzt. Grob werden diese World Wide Web bieten diese Ansätze zwar ein Schichten in anwendungs- und transportorientierte großes Potential, stehen aber auch einigen techni- Schichten unterteilt. Im Rahmen dieses Kapitels schen Einschränkungen gegenüber. Dieses Kapitel werden wir uns nur mit anwendungsorientierten Pro- soll grundlegendes Wissen über diese Technologien tokollen beschäftigen. vermitteln und bestenfalls das Interesse nach detail- Basierend auf dem Internet, als Verbindung unter- lierter weiterführender Information zu den angespro- schiedlicher Computernetze, ermöglichen diverse chenen Technologien, welche in einschlägiger Fachli- Protokolle den Zugriff auf eine Vielzahl von Anwen- teratur nachgelesen werden können, wecken. dungen. Die wohl prominenteste dieser Anwen- dungen ist das World Wide Web. 2. Grundlegende  Technologien 3. Das  World  Wide  Web Das Internet ist eine weltweite Verknüpfung von Da- tennetzen, welche Ende der 1960er Jahre in den USA Seit seiner Entwicklung im Jahr 1989 durch die For- vom DARPA (Defense Advanced Research Projects schergruppe um Sir Tim Berners-Lee (Cailliau, 1995), Agency) initiiert und aus dem daraus entstandenen wurde aus dem World Wide Web (WWW) die wohl ARPANET (Advanced Research Projects Agency) bekannteste und meist benutzte Anwendung des In- hervorging (Vinton Cerf, 1993). ternets. In vielen Fällen wird der Begriff Internet, obwohl er nur die darunterliegende Netzwerkinfra- Der   Begriff   Internet   als   solcher   bezeichnete   hierbei   ei-­‐ struktur bezeichnet, inzwischen als Synonym für das ! gentlich   das   entstehende   „interconnected   network“, also   eine   Technologie   zur   Kommunika2on   (Austausch World Wide Web verwendet. Beim WWW handelt es sich um eine verteilte Sammlung von Dokumenten, von   Daten)   zwischen   verschiedenen,   weltweit   ver-­‐ welche unter Verwendung von Internet-Protokollen teilten   Computernetzen,   ohne   die   dazu   nö2ge über eine Anwendung abrufbar sind. Diese Doku- Hardware  und  Netzwerktechnologie  genau  zu  kennen. mente sind untereinander mittels Hyperlinks ver- knüpft und bilden dadurch ein weltweites Netz an In- Die Kommunikation in diesem Netzwerk wird formationen. Die Anwendung, mit der auf diese über Protokolle geregelt. Ein Protokoll ist eine Re- Seiten zugegriffen werden kann, wird als Browser be- 7 Anwendungsschicht HTTP(S) 6 Darstellungsschicht Anwendungsorien2erte   FTP 5 Kommunika2onsschicht Schichten POP,  SMTP 4 Transportschicht TCP  UDP 3 VermiElungsschicht Transportorien2erte   IP 2 Sicherungsschicht Schichten Ethernet 1 Physikalische  Schicht Tabelle  1:  OSI-­‐Schichtenmodell
  • 3. Webtechnologien.  Technische  Anforderungen  an  Informa2onssysteme—  3 zeichnet. Bekannte Browser sind der Internet Ex- meisten Anwendungen im Web ist es aber notwendig, plorer von Microsoft, Firefox von Mozilla, Safari von mehrere Anfragen in Zusammenhang zueinander zu Apple oder Opera von Opera Software. sehen. So besteht zum Beispiel der Bestellvorgang in einem Webshop durchaus aus mehreren sequentiellen Weitere   Browser   können   Sie   bspw.   bei   Wikipedia Anfragen (Auswahl der Waren, Eingabe der Adresse, ! finden   (hEp://de.wikipedia.org/wiki/Liste_von_Web-­‐ browsern)   oder   in   der   L3T-­‐Gruppe   bei   Mister   Wong Bestätigung des Kaufes). Solche Zusammenhänge können nicht durch das Protokoll selbst verwaltet unter  #webbrowser  #l3t  . werden, sondern müssen durch die Anwendungen gehandhabt werden, welche ihre Daten über HTTP übertragen. Es können hierzu Sitzungen (Sessions) Jedes Dokument im Web ist durch eine URL verwendet werden, in denen eine eindeutige ID mit (Uniform Resource Locator) identifiziert. Diese URL jeder Anfrage versendet wird. Eine andere Mög- besteht im Web zumeist aus drei Komponenten: Pro- lichkeit ist die Verwendung von Cookies, mit denen tokoll, Host und Pfad. der Browser persistente Informationen (zum Beispiel Kundendaten) zu einem Webserver lokal speichern Diese  Komponenten  der  URL  sind  folgendermaßen  an-­‐ kann. Üblicherweise beginnen solche Sessions mit der ! geordnet:  protokoll://host/pfad Anmeldung mittels Login und Passwort und enden durch Abmeldung, oder wenn der Browser ge- Die  URL  kann  darüber  hinaus  einen  Port  („Anschluss“ am  Server;  hEp://www.example.org:80)  und  Anfrage-­‐ schlossen wird. string   (zusätzliche   Informa2onen   wie   die   Inhalte   einer Suchanfrage;   hEp://www.example.org:80/demo/ex-­‐ HTTP   ist   ein   zustandsloses   Anfrage/Antwort-­‐Protokoll ample.cgi?land=de&stadt=aa)  beinhalten. ! und  dient  zur  ÜbermiElung  von  Daten  im  WWW. Iden2fizieren  Sie  die  drei  Teile  der  URL HTTPS   ? hEp://de.wikipedia.org/wiki/Wikipedia:Hauptseite Die Übertragung der Daten in Klartextform bei HTTP ist nicht in jedem Fall wünschenswert. So HTTP   könnten sensible Daten wie zum Beispiel Kenn- wörter durch beliebige „Zuhörer“ (an z.B. den für die Der Browser verständigt sich mit dem Webserver Übertragung nötigen Servern) abgefangen werden. über das Hyptertext Transfer Protocol. Wie jedes Aus diesem Grund wurde das Hypertext Transfer Protokoll beschreibt HTTP den Aufbau der Nach- Protocol Secure (HTTPS) als Verfahren entwickelt, richten vom Client an den Server. Die Kommuni- um Daten im Web abhörsicher zu übermitteln. Das kation erfolgt immer über Anfragen des Clients an Protokoll ist an sich identisch zu HTTP, allerdings den Server und zugehörige Antworten. Alle Nach- werden die Daten mittels dem Protokoll Secure richten werden als Klartext, also unverschlüsselt, Socket Layer bzw. Transport Layer Security übermittelt. (SSL/TLS) verschlüsselt. Zu Beginn der verschlüssel- Durch diesen Aufbau der Kommunikation ist eine ten Verbindung muss sich bei HTTPS der Server zentrale Problematik der Entwicklung von Weban- identifizieren. Dies geschieht über ein Zertifikat, wendungen bedingt: Der Server kann nicht von sich welches die Identität bestätigen soll. Bei der ersten aus mit dem Client kommunizieren, da er immer auf Anfrage an einen Webserver kann es notwendig sein, eine Anfrage angewiesen ist. Wartet eine Anwendung dass die Authentizität dieses Zertifikates bestätigt nun auf ein bestimmtes Ereignis (zum Beispiel das werden muss. Ergebnis einer aufwendigen Berechnung), kann der HTML   Server den Client nicht über dessen Eintritt verstän- digen, sondern der Client muss in regelmäßigen Ab- Die eigentlichen Dokumente, die über HTTP vom ständen Anfragen über den Status an den Server Server an den Client übermittelt werden, sind meist schicken. Dies bringt natürlich einerseits zusätzlichen HTML-Dokumente. Die Hypertext Markup Lan- Netzwerkverkehr und anderseits zusätzliche Ar- guage (HTML) ist eine Auszeichnungssprache, beitszeit des Servers mit sich. welche in erster Linie die Struktur von Inhalten be- Zu beachten gilt bei HTTP, dass es sich um ein schreibt. Der Browser zeigt anhand von HTML und zustandsloses Protokoll handelt. Alle Anfragen sind der mitgelieferten Formatierungsinformation diese somit voneinander unabhängig zu betrachten. Für die Dokumente am Client an.
  • 4. 4  —  Lehrbuch  für  Lernen  und  Lehren  mit  Technologien  (L3T) Eine Auszeichnungssprache dient zur Be- kann diese somit einfacher gewartet und erweitert schreibung von Daten und soll in erster Linie deren werden, da Anpassungen nur am Server erfolgen Struktur (Überschriften, Tabellen, etc.) und die Ver- müssen. Bei der Benutzung ergibt sich der Vorteil, bindungen der Dokumente (mittels Hyperlinks) be- dass die zusätzliche Installation einer Software wei- schreiben. HTML erlaubt darüber hinaus auch die testgehend entfällt. Beschreibung der Formatierung des Dokumentes. Es Andererseits bringt dieser Ansatz auch einige hat sich aus vielfältigen Gründen eingebürgert, das Nachteile. So ist eine ständige Internetverbindung Layout (die Formatierung) eines Dokumentes von mit ausreichender Bandbreite notwendig. Zudem den eigentlichen Inhalten zu trennen. Dadurch kann kann der Server, bedingt durch die Tatsache, dass man Dokumente für verschiedene Schnittstellen und HTTP auf dem Anfrage-/Antwort-Prinzip basiert, Anwendungen verwenden und muss nur das jeweilige nicht selbstständig Informationen an die Clients Layout anpassen. Zudem ist auf diese Weise auch senden, sondern ist auf periodische Anfragen ange- eine Verwendung der Dokumente für Menschen mit wiesen. Zu guter Letzt bedeutet unter anderem das Beeinträchtigungen (wie Sehschwächen) effizient zustandslose Design des Protokolls, dass auf eine möglich. Üblicherweise wird also das Aussehen der Vielzahl von möglichen Angriffsszenarien einge- HTML-Dokumente in einer separaten Datei be- gangen werden sowie die Sicherheit der Weban- schrieben. Diese Cascading Style Sheets (CSS) wendung ein nicht zu vernachlässigender, zentraler werden ebenfalls vom Browser über HTTP ange- Bestandteil der Entwicklung der Software sein muss. fordert. Webservices   Webanwendungen   Webservices sind eine spezielle Art von Webanwen- Im Laufe der Zeit haben sich die Anforderungen an dungen, die der Bereitstellung von Daten für andere Informationssysteme im Web vom der bloßen Zur- Applikationen dienen (World Wide Web Consortium, verfügungstellung von Dokumenten in Richtung aus- 2004). Sie sind üblicherweise Application Programm- gefeilter Programmlogik weiterentwickelt. Wie im ing Interfaces (API) und stellen als solche eine ein- Kapitel Informationssysteme aufgezeigt, erfordern heitlich definierte Schnittstelle für fremde Anwen- natürlich auch Informationssysteme für das Lernen dungen zur Verfügung um auf die Funktionalität des und Lehren solch eine Programmlogik. Diese Pro- Service zuzugreifen. gramme, die auf einem Webserver ausgeführt In Zusammenhang mit Informationssystemen für werden, werden als Webanwendungen bezeichnet. das Lernen und Lehren bietet die Integration solcher Wie bei statischen Webseiten wird clientseitig ein Webservices innovative Ansätze für die Einbindung Browser zur Interaktion mit dem Webserver ver- externer Ressourcen und Funktionalitäten in ein der- wendet und die Daten werden mittels HTTP(S) über- artiges Informationssystem (Vossen & Westerkamp, mittelt. 2003). Im Unterschied zu einer einfachen Webseite über- Anders als bei Webanwendungen werden bei mittelt der Webserver beim Aufruf der URL aller- Webservices üblicherweise keine HTML-Dokumente dings nicht ein bereits vorliegendes Dokument, vom Server geladen, da für die aufrufenden Applika- sondern ruft ein Programm auf, welches aus einer tionen Formatierungen sowie die Lesbarkeit für Vorlage für Inhalt und Formatierung sowie aus va- menschliche Benutzer/innen irrelevant sind und der riablen Daten dynamisch ein Dokument erstellt und Fokus rein auf dem Inhalt liegt. an den Client übermittelt. Der Browser übernimmt in Der Grundgedanke von Webservices ist die Mög- diesem Fall also die Rolle der Benutzerschnittstelle lichkeit der automatischen Verarbeitung von Daten für ein auf dem Server ausgeführtes Programm. im Web durch Softwareagenten, welche lose ge- Mit Webanwendungen kann komplexe Software reali- koppelt Aufgaben für Benutzer/innen ausführen. siert werden, welche clientseitig nur einen Web- Webservices stellen ihre detailliert beschriebene browser bzw. entsprechende PlugIns benötigt. Für Funktionalität hierbei anderen Anwendungen zur die Entwicklerin oder den Entwickler der Software Verfügung, seien dies autonome Agenten, Weban- wendungen oder andere Webservices. Dadurch Webanwendungen   sind   Computerprogramme,   die   auf können Entwickler/innen bereits bestehende Funk- ! einem  Webserver  laufen  und  den  Browser  des  Clients als  BenutzerschniEstelle  verwenden. tionalitäten in ihren eigenen Anwendungen ver- wenden (Mashup, siehe Seite 7).
  • 5. Webtechnologien.  Technische  Anforderungen  an  Informa2onssysteme—  5 Die technologische Umsetzung erfolgt meist über XHTML eine auf XML basierende Auszeichnungs- eine der folgenden Möglichkeiten: sprache, welche zur Beschreibung von Webseiten ▸ SOAP/WSDL: Ein flexibles System, in dem dient. Nachrichten über das Simple Object Access 5. Einführung  in  die  Applika8onsentwicklung  für  das Protocoll (SOAP) ausgetauscht werden. Wie diese Web   Nachrichten für die einzelnen Webservices aus- sehen, wird über die Web Services Description Die Entwicklung von Webapplikationen und -ser- Language (WSDL) beschrieben. Anfragen und vices kann generell in zwei Gruppen von Ansätzen Antworten sind in XML, einer allgemeinen Aus- unterteilt werden. Bei serverseitigen Ansätzen er- zeichnungssprache für hierarchische Daten, ge- folgt die Verarbeitung der Programmlogik am schrieben. In den Nachrichten werden die ge- Webserver, der Client (und damit der Benutzer und wünschten Funktionen des Webservice aufge- die Benutzerin) erhält lediglich das Ergebnis. Bei cli- rufen, die Antworten werden vom Server retour- entseitigen Ansätzen erfolgt zumindest ein Teil des niert. Programmablaufes am Rechner der Benutzer/innen. ▸ Representational State Tranfer (REST) be- In realen Anwendungen wird meist eine Kombi- zeichnet eine Technologie, in der jede einzelne nation von Ansätzen beider Gruppen verwendet. Funktion des Webservice über eine individuelle Seversei8ge  Ansätze   URL aufgerufen wird. Die Kommunikation er- folgt zustandslos, ist also nicht von Sitzungen, Be- Der Vorteil von serverseitigen Ansätzen liegt in der nutzerdaten oder ähnlichem abhängig. Tatsache, dass der Client außer einem Browser keine weiteren Programme benötigt. Der eigentliche Pro- grammcode wird serverseitig verarbeitet und das Er- Beschreiben   Sie   die   Unterschiede   zwischen   Weban-­‐ gebnis, meist ein (X)HTML-Dokument, an den ? wendungen   und   Webservices!   Vergleichen   Sie   Ihre Antwort  mit  Tabelle  2. Client gesandt. Der Nachteil von serverseitigen An- sätzen liegt an der Verminderung der Reaktionsge- schwindigkeit. Einerseits erfordert jede Nutzeraktion einen erneuten HTTP-Request (Anfrage) und damit einen neuen Aufruf der Seite. Andererseits benötigt Webanwendung Webservice das Ausführen der Programmlogik Rechenzeit am Zielgruppe:  (menschliche) Zielgruppe:  andere  Ap-­‐ Server und vermindert somit zusätzlich dessen Reak- Benutzer   plika2onen   tionszeit. Ausgabe  als  HTML   Ausgabe  als  XML  o.ä.  für PHP ist der heute wohl am meisten verbreitete Clientsei2ges  Programm: Maschinen  op2mierte serverseitige Ansatz für Webapplikationen. Die Ab- Browser   Formate   kürzung, ursprünglich „Personal Home Page tools“, Verarbeitung  in  anderen ist ein rekursives Akronym für PHP:, „Hypertext Pre- Applika2onen   processor“ (The PHP Group, 2010). Es handelt sich bei PHP um eine Skriptsprache, das heißt der eigent- Tabelle  2:  Unterschiede  von  Webanwendung  und liche Programmcode wird nicht zu einem Bytecode Webservice kompiliert (der direkt vom Rechner ausgeführt 4. XML   werden kann), sondern bei jedem Aufruf von einem Interpreter neu verarbeitet. Dieser Performance- Die EXtensible Markup Language (XML) be- Nachteil kann aber durch optionale Erweiterungen schreibt eine sehr allgemeine, flexible und für indivi- der Software kompensiert werden. PHP-Pro- duelle Bedürfnisse erweiterbare Auszeichnungs- grammcode wird innerhalb der Dokumente durch ein sprache. Wie HTML dient sie zur Darstellung struk- vorangestelltes <?php und ?> am Ende des Codes ge- turierter Inhalte, ist aber in erster Linie nicht für die kennzeichnet. Der Interpreter ignoriert Inhalte au- menschenlesbare Darstellung gedacht. Sie ist von ßerhalb dieser Begrenzungen und übermittelt diese konkreten Plattformen und Implementierungen un- unverändert an den Client. So kann Programmlogik abhängig und durch ihre Charakteristik als Meta- beispielsweise direkt in HTML-Auszeichnungen ein- sprache vielseitig verwendbar. Letzteres bedeutet, gebettet werden. Seine Verbreitung hat PHP meh- dass sich auf Basis von XML durch Verwendung reren Aspekten zu verdanken. Einerseits steht es im eines Schemas spezialisierte Dialekte für einzelne An- Rahmen vieler günstiger Webhosting-Angebote zur wendungsfälle definieren lassen. So ist beispielsweise Verfügung (vorinstalliert auf Servern), da es einfach
  • 6. 6  —  Lehrbuch  für  Lernen  und  Lehren  mit  Technologien  (L3T) zu installieren, zu warten und in bestehende denen .NET-Programmiersprachen erstellt werden. Webserver zu integrieren ist. Andererseits ist PHP für Gebräuchlich sind hierbei C# (C Sharp) und Entwickler/innen schnell zu erlernen und sehr fle- VB.NET (Visual Basic.NET). Anders als bei PHP xibel. Nachteile liegen in der Tatsache, dass PHP po- werden bei ASP.NET Programm-Code und HTML tentiell erlaubt, schlechter skalierbare und unsichere voneinander getrennt. Da der Programmcode da- Webanwendungen zu entwickeln, auch wenn hier die durch kompiliert vorliegen kann, wird die Abar- konkrete Umsetzung einen deutlichen Einfluss haben beitung beschleunigt. Der Nachteil von ASP.NET kann. Speziell unerfahrenen Entwicklerinnen und liegt in der Tatsache, dass die Technologie sowohl Entwicklern fällt es mit anderen Technologien proprietär als auch kostenpflichtig ist und darüber leichter, auf die Aspekte Skalierbarbeit und Sicherheit hinaus einen Microsoft Webserver erfordert. Rücksicht zu nehmen, da sie dort zur Einhaltung ent- Clientsei(ge  Ansätze   sprechender Regeln gezwungen werden. Java Servlets basieren auf der objektorientieren Im Gegensatz zu serverseitigen Ansätzen wird hier Programmiersprache Java. Sie sind Java-Klassen (lo- die Programmlogik direkt auf dem Client abgear- gisch gekapselte Teile von Programmcode), welche beitet. Dies bietet den Vorteil, dass sowohl weniger auf einem Server für die Abarbeitung von Anfragen Datenverkehr notwendig ist, als auch die Ressourcen der Clients zuständig sind. Als Antwort auf diese An- des Webservers geschont werden. Von Nachteil ist al- fragen liefern Servlets dynamisch generierte HTML- lerdings, dass clientseitig eine komplexere Software Dokumente. Anders als bei PHP werden diese Pro- erforderlich ist, der Client entsprechend leistungs- gramme nicht zur Laufzeit interpretiert, sondern fähig sein muss um die Programme abarbeiten zu liegen bereits kompiliert vor, was die Abarbeitung be- können und potentiell sicherheitskritische Berech- schleunigt. Obwohl die Entwicklung mit Java die Ein- nungen nur auf der Serverseite durchgeführt werden arbeitung in eine komplexere Technologie bedeutet, sollten. bietet diese Technologie einige Vorteile. So kann sie Die wohl wichtigste Basistechnologie in diesem durch Anwendung der richtigen Architektur große Zusammenhang ist JavaScript. Der Interpreter für Verbesserungen in Skalierbarkeit und Erweiterbarkeit diese Sprache ist bereits in den Browser integriert, bedeuten. Um abgearbeitet zu werden benötigen Java wodurch keine zusätzliche Softwareinstallation not- Servlets einen Servlet Container, wie Apache Tomcat, wendig ist. Allerdings sind diese Interpreter je nach der den einfachen Webserver ersetzt. Diese technolo- Browser unterschiedlich, was für die Entwicklung der gische Einschränkung ist auch der Grund dafür, dass Software zusätzlichen Aufwand bedeutet, um Java- Java Servlets eher bei großen (Business-)Anwen- Script-Programme auf allen (bzw. möglichst vielen) dungen als bei kleinen und mittleren Webanwen- Browsern lauffähig („browser-save“) zu machen. Ja- dungen verwendet werden. Nur wenige Webhoster vascript-Programme können entweder direkt in bieten Pakete mit einem Servlet Container an, da die HTML-Seiten integriert sein oder in eigene Dateien Installation und die Administration aufwendiger ist. ausgelagert werden. Die implementierte Funktiona- Java Server Pages (JSP) sind eine weitere auf Java lität kann hierbei von einfachen Aufgaben, wie der basierende Technologie. Bei klassischen Servlets ist Validierung von Formulareingaben, bis hin zu dyna- die Ausgabe der resultierenden Webseiten recht auf- mischer Manipulation der vom Webserver übertra- wendig. Syntaktisch wird bei JSP, ähnlich wie bei genen Webseite reichen. PHP, der Java Programmcode mit <%@ und %> abge- Asynchronous JavaScript and XML (AJAX) be- grenzt. Der Rest des Dokumentes wird nicht inter- zeichnet ein Konzept von Webanwendungen, bei pretiert und enthält die HTML-Beschreibung der denen JavaScript eingesetzt wird, um Informationen Webseite. Somit sind JSP Seiten ähnlich den Servlets, von einem Webserver anzufordern. Bei klassischen erlauben jedoch die Kombination von Programm- Webseiten muss wiederum für jede Aktion vom und HTML-Code in einem Dokument und er- Client eine Anfrage erstellt und die Antwort des leichtern so beide Technologien miteinander zu kom- Servers vom Browser interpretiert werden. Dies er- binieren. fordert ein komplettes Neuladen der Seite, auch Active Server Pages (ASP) war ursprünglich ein wenn sich nur kleine Teile ändern. Mit AJAX werden PHP ähnlicher Ansatz, der auf proprietären Techno- vom Webserver nur mehr Teilinhalte angefordert. logien der Firma Microsoft basiert. In der Weiterent- Diese werden als XML-Dokumente übermittelt und wicklung als ASP.NET basiert die aktuelle Techno- anhand der XML-Struktur interpretiert. AJAX mani- logie auf dem Microsofts .NET-Framework. Die ei- puliert nun die bereits geladene Seite und ändert nur gentlichen Anwendungen können hierbei in verschie- jene Daten, die wirklich notwendig sind. Dadurch
  • 7. Webtechnologien.  Technische  Anforderungen  an  Informa2onssysteme—  7 Serversei'ger   Clientsei'ger   Ansatz Ansatz Vorteile unabhängig  von  clientsei2ger  SoHwareausstat-­‐ Reak2onszeiten  ähnlich  zu  Desktop-­‐Anwendungen   tung nur  benö2gte  Inhalte  werden  geladen  und  in  die  aktuelle gleiches  Verhalten  auf  allen  Clients Seite  integriert   Nachteile jede  Ak2on  erfordert  einen  Aufruf  serversei2ger Verhalten  von  Browser  (JavaScript  Engine)  abhängig   Funk2onalität   Sicherheit  der  Anwendungen  ist  aufwendiger  zu  gewähr-­‐ jede  Ak2on  erfordert  kompleEes  Neuladen  der leisten   aktuellen  Seite   Tabelle  3:  Vor-­‐  und  Nachteile  des  serverseitigen  und  des  clientseitigen  Ansatzes erhält man wesentlich performantere („schnellere“) Funktionalitäten oder Integration fremder Inhalte in Applikationen, mit denen ein Verhalten ähnlich zu eine Webapplikation werden als Mashup bezeichnet. Desktop-Anwendungen (in „Klick-Geschwind- Dieser Begriff wurde ursprünglich in der Musik- igkeit“) erreicht wird. Dies führte im nächsten Schritt branche verwendet, um Remixes zu beschreiben. Im zu RIA. Zusammenhang von Webapplikationen bedeutet es Als „Rich Internet Application“ (RIA) bezeichnet eine in der Anwendung transparente Integration man jene Webanwendungen, welche durch client- fremder Dienste und Inhalte. seitige Anwendung von JavaScript Möglichkeiten wie Damit sind jedoch auch Nachteile verbunden: vergleichbare Desktop-Anwendungen bieten. So ist ▸ Wer haftet bei sicherheitskritischen Anwendungen, es zum Beispiel mit diesem Ansatz möglich, Office- wenn Funktionen nicht korrekt funktionieren, Anwendungen als Webanwendungen zu implemen- zum Beispiel wenn bei Lernsoftware eine Appli- tieren. Anders als bei Desktop-Anwendungen müs- kation die Prüfungsfragen falsch auswertet? sen diese allerdings nicht installiert werden und ▸ Alle Server, welche die Services anbieten, müssen bieten die Möglichkeit auf jedem Rechner, welcher ständig verfügbar sein – dies liegt jedoch nicht in über einen kompatiblen Browser verfügt, ausgeführt der Verantwortung des Betreibers. zu werden (sind also unabhängig vom verwendeten ▸ Das Urheberrecht bzw. die Lizenzierung führt zu Betriebssystem). Die Daten werden hierbei zentral der Frage, ob man die Funktionen überhaupt inte- auf dem Server hinterlegt. Die Interaktion mit dem grieren darf (bei Facebook, Google Maps etc. mag Webserver ist auf ein Minimum beschränkt, was flüs- dies augenscheinlich sein, bei kommerziellen An- siges Arbeiten mit RIA ermöglicht. bietern ist dies aber nicht gegeben). Stellen  Sie  die  Vor-­‐  und  Nachteile  von  server-­‐  und  cli-­‐ Ein   Mashup   ist   die   Integra2on   von   Inhalten   und   Funk-­‐ ? entsei2gen   Ansätzen   gegenüber.   Vergleichen   Sie   Ihre Antwort  mit  Tabelle  3. ! 2onalitäten  anderer  Webapplika2onen  in  die  eigene. 6. Vor  Gebrauch  gut  schü:eln  –  Syndika(on  und  Inte-­‐ Programmierschni:stellen   gra(on   Application Programming Interfaces (API) sind Moderne Webapplikationen verdanken einen großen wohldefinierte Schnittstellen für die Interaktion mit Teil ihrer Verbreitung der Tatsache, dass deren Ver- Applikationen. Im Zusammenhang mit Webapplika- knüpfung zu einem immer zentraleren Teil ihrer tionen werden sie üblicherweise als Webservices im- Funktionalität wird. Dies geht über einfache Hyper- plementiert und liefern entweder XML-Daten oder links weit hinaus: Inhalte und Funktionalitäten vergleichbare strukturierte Daten wie die einfachere werden zur Verfügung gestellt und in andere Web- JavaScript Object Notation (JSON). Sowohl SOAP- Applikationen integriert. So wird eine Kreativität bei als auch REST-Ansätze sind möglich, auch wenn der der Erstellung von neuen Applikationen ermöglicht, Trend der letzten Jahre in Richtung REST-Anwen- wie sie ohne diese Offenheit und den daraus resultie- dungen weist. Einerseits können API dazu verwendet renden Vorteil bestehende Funktionalität nicht erneut werden um Funktionalität zur Verfügung zu stellen, selbst implementieren zu müssen, nur schwer vor- wie zum Beispiel die Darstellung von Koordinaten in stellbar wäre. Die Syndikation mehrerer fremder
  • 8. 8  —  Lehrbuch  für  Lernen  und  Lehren  mit  Technologien  (L3T) Karten mittels der Google-Maps-API. Abbildung 1 nannte Feeds, zur Verfügung gestellt werden. Die zeigt ein Beispiel der Visualisierung von geographi- Daten liegen hierbei in einem XML Format vor. RSS schen Koordinaten mittels der Google Maps API. dient hauptsächlich zur Benachrichtigung bei häufig aktualisierten Informationen, wie Weblogs oder Nachrichtenseiten. Benutzer/innen können RSS- Feeds mit einem Client abonnieren, der ihnen immer die jeweils neuesten Meldungen anzeigt. Abbildung 2 zeigt das gebräuchlichste Icon für RSS-Feeds, wie es zum Beispiel im Browser Firefox Verwendung findet. In Webapplikationen bietet RSS eine gute Mög- lichkeit zur Syndikation von Daten aus unterschied- lichen Quellen. Da die Daten in XML vorliegen, können sie einfach maschinell weiterverarbeitet und in die eigene Webseite integriert werden. Abbildung  1:  TUGeowiki:  Integration  von  Kartenma-­‐ terial  über  die  Google  Maps  API.  Quelle:  Safran  und Abbildung  2:    Icon  für  RSS  Feeds   Zaka,  2008 Widgets   Eine dritte Technologie, die bei der Integration ver- Andererseits können solche Applikationen auch schiedener Webanwendungen Anwendung findet, Inhalte zur Verfügung stellen. So ist es mit der Flickr- sind Widgets. Ein Widget ist ein kleines, in sich abge- API zum Beispiel möglich, auf Fotos des Internet- schlossenes Programm, das im Rahmen einer an- dienstes zuzugreifen. Andere API ermöglichen bei- deren grafischen Benutzeroberfläche abläuft. Übli- spielsweise die Integration von Daten aus sozialen cherweise ist die Funktionalität solch eines Widgets Netzwerken, wie die Facebook-API. spezialisiert und eingeschränkt. Im Desktop-Bereich haben sich Widgets inzwischen bei den meisten Be- RSS   triebssystemen durchgesetzt und können entweder Real Simple Syndication (RSS) beschreibt eine Tech- direkt als Teil des Desktops (wie Gadgets in Mi- nologie, mit deren Hilfe Inhalte von Websites, soge- crosoft Windows) oder über eine getrennte Widget- In der Praxis: Die Personal Learning Environment an der TU Graz Als  Praxisbeispiel  für  ein  Mashup  kann  die  Personal  Learning eigneten,  zu  ihrem  Studium  benö2gten  Widgets  auszusuchen Environment   (PLE)   an   der   Technischen   Universität   Graz   ge-­‐ und   diese   nach   ihren   aktuellen   Bedürfnissen   zu   konfigu-­‐ nannt   werden.   In   dieser   persönlichen   Lernumgebung   sind rieren. verschiedene,   zum   Teil   unabhängige   und   verteilte   Dienste der   TU   Graz   so   wie   andere   Webanwendungen   aus   dem   In-­‐ ternet  integriert.  Abbildung  3  stellt  dieses  Grundkonzept  gra-­‐ p h i s c h   d a r .   U n i v e r s i t ä t s d i e n s t e   w i e   d a s Administra2onssystem   (TUGRAZ.online),   LMS   (TUGTC),   Blo-­‐ gosphere  (TUGLL)  und  viele  Lernobjekte  für  unterschiedliche Lehrveranstaltungen  sind  in  der  PLE  kombiniert. Zusätzlich   dazu   können   zahlreiche   fremde   Lernobjekte   und webbasierte   Dienste   wie   Google-­‐Applika2onen,   Flickr, YouTube,  TwiEer,  FaceBook,  etc.  integriert  werden.  Die  Inte-­‐ gra2on   dieser   Dienste   erfolgt   miEels   Widgets.   Das   PLE   als eine   Rich   Internet   Applica2on   (RIA)   bietet   ein   Mashup   von Widgets,  die  an  den  persönlichen  Nutzungsbedürfnissen  an-­‐ Abbildung  3:  PLE:  Mashup  von  Widgets  ermöglicht  die  Inte-­‐ passbar  sind.  Die  Benutzer/innen  sind  in  der  Lage  sich  die  ge-­‐ gra2on   von   verschiedenen   Universitätsdiensten   sowie   der fremden  Ressourcen  aus  dem  Internet.
  • 9. Webtechnologien.  Technische  Anforderungen  an  Informa2onssysteme—  9 Engine (wie das Dashboard bei Mac OS X) benutzt mutung einer Desktop-Anwendung vermittelt wird. werden. Im Zusammenhang mit Webapplikationen Durch die Anwendung von AJAX haben sich die Re- bezeichnet der Begriff Widget genauso eine eigen- aktionszeiten der Webanwendungen erheblich ver- ständige, abgeschlossene und in eine andere Appli- bessert. kation integrierte Funktionalität. Diese sind meist in- Zu guter Letzt gehört Syndikation und Integration nerhalb der Benutzerschnittstelle der eigentlichen zum Stand der Technik in vielen Anwendungsbe- Webapplikation mehr oder weniger frei positio- reichen. Durch die Möglichkeiten, welche Webser- nierbar. So können Widgets zum Beispiel Daten über vices und RIA bieten, kann auf Funktionalität und einen RSS-Feed abrufen, oder auf Funktionalitäten Inhalte anderer Anwendungen leicht zurückgegriffen mittels einer API zugreifen. Ein Beispiel für Widgets werden. Diese können nahtlos in die eigene Benut- sind die Apps des sozialen Netzwerks Facebook, zungsschnittstelle integriert werden. welche nicht selbst von Facebook, sondern von an- Literatur deren Entwicklerinnen und Entwicklern erstellt, aber in die Webapplikation Facebook integriert werden. ▸ Vinton Cerf (1993). The history of Internet. In: B. Aboba Für Benutzer/innen ist kaum ein Unterschied er- (Hrsg.), The Online User's Encyclopedia, Addison-Wesley. kennbar. Über eine API greifen diese Apps zusätzlich ▸ Cailliau, R. (1995). A Little History of the World Wide Web. auf die Funktionalität von Facebook zu. URL: http://www.w3.org/History.html [2010-09-08]. ▸ Safran, C. & Zaka, B. (2008). A Geospatial Wiki for m- 7. Aktuelle  Trends  in  der  Entwicklung  von  Webanwen-­‐ Learning. In: Proceedings of the 2008 International Confe- dungen   rence on Computer Science and Software Engineering, IEEE In den letzten Jahren haben sich drei Ansätze bei der Computer Society, Washington, 5, 109-112. Entwicklung von Webanwendungen durchgesetzt. ▸ The PHP Group. (2010). Hypertext Preprocessor. URL: Vom serverseitigen Standpunkt aus bieten viele, vor http://www.php.net [2010-01-04]. allem bekannte und große Webanwendungen, wie die ▸ Vossen, G. & Westerkamp, P. (2003). E-Learning as a Web verschiedenen Google-Produkte oder Facebook, par- Service. In: Proceedings of the Seventh International Database allel zu ihren Webanwendungen Webservices als API Engineering and Applications Symposium, Los Alamitos, CA, an. Dies ermöglicht und ermutigt die Verwendung USA: IEEE Computer Society, 242. ihrer Funktionalität in anderen Webanwendungen. ▸ World Wide Web Consortium (2004). Web Services Archi- Vom clientseitigen Standpunkt sind RIA der Stand tecture. URL: http://www.w3.org/TR/ws-arch/#id2268743 der Technik. Hier wird bei vielen Webanwendungen [2010-01-12]. darauf Wert gelegt, dass den Benutzern die An-