OOP 2010 Kai Weingärtner I WidasConcepts GmbH Social Web Revolution
2 Steckbrief WidasConcepts GmbH: Strategische IT-Architekturberatung Design und Realisierung von Geschäftsanwendungen Business Intelligence Web X.0 in Technologie & Business Kai Weingärtner: Senior Consultant bei der WidasConcepts GmbH mit dem Fokus auf Web-X.0-Themen sowie Konzeption und Entwicklung von Web-basierten JEE- Anwendungen Autor verschiedener Fachbeiträge in OBJEKTspektrum und anderen Fachmagazinen zum Thema Web X.0/Enterprise X.0, Ajax-Technologien, etc. kai.weingaertner@widas.de
3 Das Social Web Die stille Revolution Sozialer Austausch wird im Web fortgeführt - Weitergeben von Urlaubsfotos - Gespräche über die neuesten Nachrichten - Austausch über Hobbys - Knüpfen und pflegen von Geschäftskontakten Soziale Netzwerke boomen - 3 von 5 Internetnutzern sind in sozialen Netzwerken aktiv - Soziale Netzwerke häufigste Anlaufstelle im Web - Außerdem: Bookmarking, Fotos, Reisen, Musik, Der soziale Kontext findet Einzug in immer mehr Services
4 Das Social Web Die stille Revolution Wozu dient der soziale Kontext? Kontaktpflege Informationsquelle?! Identifizierung! Kontakte knüpfen Relevanzfilter Personalisierung
5 Das Social Web Die stille Revolution Lange Zeit lebte der soziale Kontext in Silos? - Chance für neue Social Services war gering - Aktivitäten und Kontakte waren im Silo gefangen Social Networks
6 Das Social Web Die stille Revolution Standards machen das Social Web zugänglich Die Integration in den sozialen Kontext des Benutzers wird möglich Service A Service B
7 Das Social Web Die stille Revolution Standards machen das Social Web zugänglich Die Integration in den sozialen Kontext des Benutzers in externe Anwendungen wird möglich Service A Service B Dies ermöglicht z.b.: - Personalisierte Dienste - Integration von bestehenden Kontakten - Einfacherer Aufbau von Communities - Den Kunden in seinem Kanal abholen Kein Social Service muss mehr bei Null anfangen!
8 Übersicht Die Kernkonzepte des Social Web Die Schlüsseltechnologien Stand heute Ausblick Anwendungsfälle (jetzige, künftige) Wie kann ich starten?
9 Kernkonzepte des Social Web Web-Identität Wer bin ich?! Was passiert um mich herum? Wen kenne ich? Activity streams Social Graph
10 Web-Identität: Wer bin ich? Die Eintrittskarte ins Social Web Profildaten Bild
11 Web-Identität: Einordnung Merkmale Portabel Dauerhaft Eindeutig XFN rel=me Links Authentifizierung Profildaten FOAF
12 Web-Identität mit Offener Web-Standard für portable Identitäten URI als Identifier Umfasst Spezifikationen für Authentifizierung Profildaten Service-Discovery http://myopenid.com/joe myopenid.com Relying Party Identity Provider Bietet Login per OpenID Delegiert Authentifizierung Verwaltet OpenIDs Bietet Authentifizierung
13 Web-Identität mit Mit expliziter Authentifizierung 1 http://myopenid.com/joe Login 3 Authentifizierung 2 redirect http://myopenid.com Login 4 Ok / Ablehnung Relying Party Identity Provider
14 Web-Identität mit Ohne explizite Authentifizierung 1 Login http://myopenid.com/joe 2 redirect http://myopenid.com Login 3 Ok Authentifiziert Relying Party Identity Provider
15 Web-Identität mit Vorteile: Relying Party Identity Provider Zu verbessern: Single-Sign-On Mehr Kontrolle über Web-Identität Vereinfachte Registrierungen / Logins Authentifizierung ausgelagert Mehr Registrierungen Zusätzliche Profildaten ggf. Verknüpfung zu anderen Diensten Maßgeschneiderte Identity-Services ggf. Mehrwertdienste wie Profil, Service-Discovery User Experience (Login mit URI) Login-Badges / WebFinger (Email-Adresse) Phishing-Gefahr behebbar (z.b. Information Cards)
16 User Experience Beispielseiten Stackoverflow.com Dopplr.com Zoho.com Sourceforge.com
17 Einbinden externer Dienste am Beispiel dopplr.com Verbindung zu Kontakten Einbinden der Urlaubsfotos Aber die Anbindung der einzelnen Services geschieht manuell
18 Einbinden über Web-Identität Service discovery http://myopenid.com/joe Service-Registry Registrierung mit Web-Identität Import über Service API Hier wird die Web-Identität als Service-Registry genutzt
19 Service-Discovery per Web-Identität Service Discovery (Yardis / LRDD) Beta dopplr.com myopenid.com/.host-meta http://myopenid.com/xrd-profile/joe http://www.facebook.com/joe myopenid.com/xrd-profile/{user} http://twitter.com/joe http://www.myspace.com/joe http://www.flickr.com/photos/joe LRDD: Link-base Resource Descriptor Discovery Service Registry (XRD(S))
20 OAuth Vorteile - Keine Herausgabe von Credentials - Mehr Kontrolle über die Freigaben Bekannte SP: - Google - Twitter - Flickr - LinkedIn - OpenSocial Zugriff über user access token Protected Resource Consumer (z.b. dopplr) Resource Owner (z.b. Flickr)
21 Web-Identität: Zusammenfassung Viele Nutzer haben bereits eine (ohne es zu wissen) Steigert die Zahl der Registrierungen! Aber login user experience noch uneinheitlich Beliebt, da weit verbreitet und weitere Features Mittel der Datenfreigabe im Social Web Immer mehr Service Provider Außerdem: Information Cards ersetzen Passworteingabe Kann mit OpenID kombiniert werden
22 Social Graph: Wen kenne ich? Familie Freunde Kollegen
23 Social Graph: Zentral oder verteilt? verteilt XFN zentral FOAF Viele weitere
24 Verteilter Social Graph FOAF: RDF-Schema zur Beschreibung von Profildaten und Kontakten XFN: Beschreibt die Beziehung zur verlinkten URL (Profil) <a href="http://dave-blog.example.org/" rel="friend met">dave</a> Social Graph API: Liefert den öffentlichen Social Graph aus beiden Quellen joe joey mike mike12 Freunde wiederfinden (rel=friend) Liste eigener Profile (rel=me)
25 Optionen beim zentralen Social Graph Hole ich mir den Social Graph oder gehe ich zum Social Graph? Service z.b. OAuth + Contacts API OpenSocial-Container / Facebook
26 OpenSocial als Social Network Container - Wird von vielen Social Networks genutzt - REST basierte Social API + Widget API - Implementierungen für div. Plattformen Social Mashup Social Application Social Website Nutzungsvarianten Google
27 Social Graph: Zusammenfassung Verteilter Social Graph (Social Graph API) Aktuell nur offene Social Graphs Unterstützt von manchen, aber nicht den großen SNs Beispiele: Twitter, Last.fm, Flickr, Typepad Zentraler Social Graph (einbinden) Große Social Networks öffnen sich (z.b. Facebook, LinkedIn, Google) Gesicherter Zugriff auf Social Graph OpenSocial Große Community, genutzt in vielen Social Networks Beispiele: Google, MySpace, LinkedIn, Xing, Lokalisten Container-Implementierungen für die meisten Plattformen
28 Activity streams
29 Activity streams Meine Aktivitäten im Social Web
30 Activity streams: Anatomie einer Aktivität Person Aktion Zeit Joe schreibt Viele Grüße von der OOP über Twitter {via SMS} vor 1 Minute Objekt Kanal Kontext
31 Activity streams: Flussrichtungen Aggregator r/w one-way Widget im Container Quellen
32 Activity streams: Protokolle Die Basis: RSS / Atom Zeitbasiert, one-way, Pull for updates Mehr Kontext: Activitystrea.ms Activity-Semantik basierend auf Atom-Format Genutzt u.a. von Facebook und MySpace Realtime feeds RSS-Feed-Push: Pubsubhubbub / RSS-Cloud XMPP: Jabber Protokoll
33 Und was ist mit FacebookConnect? - Login mit Facebook-Account - Zugriff auf Profildaten Web-Identität Social-Graph Abgleich der Kontakte mit Facebook Activity-Streams Posten in den Facebook-Stream
34
35 Use Case: Verbreitung eines social service Findet bestehende Freude Entdeckt neuen Service Über Abgleich mit Social-Graph Erzeugt Inhalte in einem seiner Activity Streams Benutzt bestehende Web-Identität und Profil Inhalte und neuer Service werden gefunden
36 Use Case: Sofortige Personalisierung 1 Registrierung mit Web-Identität (OpenID) 2 Import aus social services (OAuth, Microformate) 3 Personalisierte Seite Musikvorlieben Freunde / Profil - Empfehlungen (Vorlieben, Freunde) - Geburtstage -
37 Use Case: Social Inbox Social Inbox Aggregation/ Filterung
38
39 Was Nutzer künftig erwarten Direkter persönlicher Kontext - Schnelle Anmeldung - Interessensprofil, Lokation - Social Graph Personalisierung Feedback in seinen Social Graph - Direkte, sichtbare Kommunikation - Kommunikation mit Freunden - Activity Streams in sein Netzwerk
40 Was Nutzer künftig erwarten Wie? - Als Anwendung in SN (OpenSocial, Facebook) - Profilabfrage via Open-Stack oder FacebookConnect Wie? - Anbieten eines Streams - Posten in Streams der SN
41 Chancen für Unternehmen (B2C) Einfachere Verbreitung von Social Apps Personalisierte Angebote (+ besseres Marketing) Mehr / direktes Feedback aus Community
42 Chancen für Unternehmen (B2B) Umfassendere Kontaktinformationen (Kontaktimport) Syndizierung von Kommunikationskanälen (Activity Streams)
43 Wie kann ich jetzt starten? Ziel Empfehlung Community auf Seite holen (social nicht core) Social Service Seite (social core) Personalisiertes Angebot Import von Social Graph der / des passendsten Social Networks (z.b. FacebookConnect) Anbindung aller großen SN (Facebook, Twitter, LinkedIn), ggf. noch Service-spezifisch (z.b. Flickr) Profil: FacebookConnect oder OpenId Vorlieben: meist noch Service-spezifisch Social Gadget (im Container) OpenSocial, Facebook API
44 Vielen Dank!