Datengetriebene Internet Geschäfts Anwendungen in Echtzeit

In diesem Blogbeitrag soll gezeigt werden wie im B2C/B2B Bereich Adressen der Schweiz für Kunden/Unternehmen in Echtzeit im Webbereich zur Verfügung gestellt werden.

Namics durfte den neuen Auftritt der Geschäftsanwendung der Künzlerbachmann AG Direktmarketing http://app.ch-address.ch/ realisieren. Anforderungen an die neue Plattform waren:

  • Hohe Performance
  • Modularer und datengesteuerter Aufbau
  • Widerverwendbarkeit der einzelnen Kriteriencontrols
  • Skalierbarkeit
  • .Net als Basistechnologie

Modalisierung

Die Selektionsseite, Kern dieser Anwendung, in der sich der Benutzer bewegt, wurde in sogenannte „Selektionsmodule“ unterteilt. Benutzer können die gewünschten Adressen anhand verschiedener Kriterien/Modulen zusammenstellen. So lassen sich die Regionen beispielsweise mit Hilfe einer interaktiven Karte.Ein anderes Selektionsmodule bietet die Auswahl aus verschiedenen verschiedenen Handelskategorien wie „Fischerei und Aquakultur“.

Jedes Selektionsmodul hat verschiedene Ausprägungen. Abhängig der Daten wird das entsprechende Selektionsmodul gerendert. Dieses besitzt eigene Operationen, die in Echtzeit mit dem Benutzer interagieren.

Beispiel Geographie Suche

2490-KB_geo-thumb-500x414-2489.png

Beispiel Selektionsmodul: „Liste mit Suche“:

2493-KB_Kategorien-thumb-500x186-2492.png

Auch „kommunizieren“ Module untereinander oder sind abhängig voneinander. Wählt ein Benutzer demnach verschiedene Kriterien aus, so wird eine neue Berechnung der Anzahl vorgenommen:

Beispiel Berechnung Anzahl Adressen:

2505-KB_Summary-thumb-239x266-2495.png

Echtzeit und Performance
-> Synergie zwischen Terrific und .NET

Die grössten Herausforderungen war es die Geschäftsdaten grafisch performant aufzubereiten und bei jeder Interaktion eines Benutzers in Echtzeit die neue Auswahl aufzubereiten und nachzuladen.

Um dieser Anforderung gerecht zu werden musste die Last auf verschiedene Komponenten verteilt werden. Jede dieser Komponenten wird heute auf verschiedenen System gehostet.

2499-KB_Componenten-thumb-500x219-2498.png

Die Renderlogik stellt bei einer Aktion des Benutzers eine Anfrage an die Applikationslogik. Diese verarbeitet diese, gibt die Nutzdaten an die Business Logik und gibt diese an das entsprechende Control zurück.
Komponentendetails

I Backend
Alle Geschäftsprozesse, sprich Preisberechnungen, Berechnung der Anzahl – Adressen und Kundentracking, werden auf Basis SQL realisiert. Das Backend, – auf das Namics aufgesetzt hat, wurde von Künzlerbachmann bereitgestellt.

II Middleware
Der Grösste Teil der Middleware ist eine Implementierung in reinem .NET. Diese Schicht hält die Daten bereit, verwaltet die Benutzer, tauscht Bestellungen mit dem Backend aus und stellt alle notwendigen Operationen mittels WCF Services via Rest für Terrific zur Verfügung. Zwischen dem Client und der Middleware werden lediglich noch REST Daten getauscht.

III Frontend
Wie bekommt man nun eine schnelle interaktive Webseite? Man trennt die Interaktion von der Logik auf, d.h. sämtliche Benutzerinteraktionen werden auf der Benutzerseite, sprich dem Browser, ausgelagert. Terrific (http://blog.namics.com/2010/06/terrific-part1.html) heisst das Zauberwort, das den Browser zu einem vollständigen selbständigen Layer ausbaut. Alle Operationen werden auf der Middleware durchgeführt, die Anzeige übernimmt der Client. Die Middleware rendert nur mehr das Grund HTML. Die Last auf der Middleware sinkt und kann den Prozess des Renders an die Browser jedes einzelnen Benutzers abgeben.

Skalierbarkeit

Durch die Windows Communcation Foundation (WCF, http://msdn.microsoft.com/en-us/netframework/aa663324.aspx) wird eine einfache Skalierbarkeit möglich. Die Logik könnte noch einmal separat auf einen eigenen Server ausgelagert werden, um noch mehr Performance zu erreichen:

2502-KB_Architektur-thumb-500x289-2501.jpg

Wiederverwendbarkeit

.NET Implementierung
Jede entwickelte Kompenente lässt sich dank implementierten Interfaces beliebig austauschen und beliebig wiederverwendeten. Dafür lässt sich das Managed Extensibility Framework (MEF, http://mef.codeplex.com) einsetzen, welches das Komponentenmanagement übernimmt und stark vereinfacht.
Frontend
Dank Terrific ist jedes Modul im Frontend beliebig austauschbar und kann auch wiederverwendet werden, da es sich an die vordefinierten Regeln und das Design hält.

Fazit
Das Ergebniss dieses Projekts ist eine hochperformante und wiederverwendbare Webanwendung, die in Zukunft einfach zu warten ist. Erweiterungen sind dank der Komponenten und definierten Schnittstellen einfach zu tauschen.

SharePoint 2010 Document Management und Managed Metadata – Überblick

Dieser Artikel soll die Grundlagen der Verwaltung von Dokumenten in SharePoint kurz beschreiben. Er ist Teil der Serie SharePoint 2010 Enterprise Content Management.

Überblick

Um Daten jeglicher Art in SharePoint zu speichern, werden Listen bestehend aus Spalten genutzt. Auch beim Dokumentenmanagement gibt es keine Ausnahme und so werden Metadaten eines Dokuments in Spalten einer Dokumentenbibliothek gespeichert… out-of-the-box bietet so eine Bibliothek folgende Funktionen:

  • Checkin / Checkout
  • Gruppierung, Sortierung, Filterung
  • Versionierung
  • Genehmigung
  • Berechtigungen
  • Workflows

Wie auch im Web Content Management kann ein Autor Informationen bereitstellen und durch Prozesse die Qualität sicherstellen. Durch Filterung oder Sortierung können Informationen einfacher gefunden werden. Übrigens: Nach Metadaten kann direkt gesucht werden, je vollständiger und aussagekräftiger, um so höher die Qualität der Suche.

Office Integration

Dokumente können, müssen aber nicht über die Bibliothek direkt bearbeitet werden. Aufgrund der Integration von SharePoint und Microsoft Office kann man aus Word z.B. Metadaten ändern und Dokumente ein- oder auschecken.

1989-image_thumb.png 

SharePoint 2010 im Vergleich zu SharePoint 2007

SharePoint 2007 beinhaltet die grundlegenden Funktionen im Bereich Dokumentenmanagement (siehe oben), ergänzt um Records Management. An sich war das Records Management nicht DoD 5015.2 zertifiziert, über ein Resource Kit konnte dies nachträglich umgesetzt werden. Ob das jemand gemacht hat ist mir nicht bekannt, jedenfalls bleibt das Fazit, dass SharePoint 2007 Verbesserungspotential hatte und SharePoint 2010 dort ansetzt.

SharePoint Foundation 2010

SharePoint Foundation 2010 bietet ebenfalls die grundlegenden Funktionen im Bereich Dokumentenmanagement (siehe oben). Features wie Managed Metadata oder Records Management sind auschliesslich im SharePoint Server 2010 vorhanden.

Fazit

SharePoint enthält sowohl in der 2007er als auch 2010er Version Funktionen für die Verwaltung von Dokumenten. Erweitert wird das Ganze in SharePoint 2010 um Managed Metadata (wird demnächst verlinkt…).

SharePoint 2010 Web Content Management (WCM) – Überblick

Über SharePoint 2010 Web Content Management wurde schon einiges geschrieben und daher wird es hier nur einen Post dazu geben. Grundsätzlich haben sich die Konzepte in SharePoint 2010 nicht geändert… die Grundlagen kann man hier nachlesen:

Überblick

Beide SharePoint Versionen ermöglichen das Bereitstellen von Informationen über ein konsitentes Look and Feel. Es ist

  • robust,
  • flexibel erweiterbar und ermöglicht eine
  • einfache und schnelle Bereitstellung von Informationen.

Die Arbeit der Autoren ist mit der neuen Version etwas effizienter. Beide Versionen unterstützen Staging-Szenarien über Content Deployment.

Wenn ein Unternehmen SharePoint einsetzt hat es auch Kontrolle über die Informationen, es gibt out-of-the-box:

  • Versionierung
  • Checkin / Checkout
  • Genehmigung
  • Workflows, flexibel erweiterbar

Qualitativ hochwertige Inhalte können über Prozesse bereitgestellt werden.

Neu in SharePoint 2010 ist das Web Analytics Feature, out-of-the-box gibt es (Quelle):

  • Traffic reports: These reports provide metrics such as:
    1. How much traffic your site gets (Number of Page Views);
    2. Who visits your sites (Top Visitors);
    3. How visitors arrive at your site (Top Referrers);
    4. Daily Unique Visitors, Top Destinations, Top Browsers, etc;
  • Search reports: These reports give you insight into what users are searching for, for example:
    1. How many times users searched (Number of Queries);
    2. What were the most used search terms (Top Queries);
    3. What queries have high failure rates (Failed Queries);
    4. Best Bet Usage, Search keywords, etc;
  • Inventory reports: These reports display key metrics regarding the inventory of your sites:
    1. What is the total disk drive space user (Storage Usage);
    2. How many sites exist (Number of Sites);
    3. Top Site Product Versions, Top Site Languages, etc;

SharePoint 2010 im Vergleich zu SharePoint 2007

Meine Erfahrungen:

  • Das neue Ribbon erfordert etwas Einarbeitung, bringt aber alle Funktionen zusammen. Man muss sich nicht mehr durch die Seiten klicken und kann so effizienter arbeiten.
  • Das Branding lässt sich nun besser umsetzen, CSS lässt sich durch die CSSRegistration besser kontrollieren und es müssen weniger Kopfstände gemacht werden, um Masterpages anzupassen.
  • Die Erstellung der Variations ist etwas ungewohnt, muss ich nun in die Central Administration, um den TimerJob direkt auszuführen.
  • Neu gibt es ein Rating, welches aber nicht in anonymen Seiten verfügbar ist…
  • Das Html und der Editor sind besser als in SharePoint 2007… weiterhin wurde mehr in die Barrierefreiheit investiert.

Eckdaten

  • Ribbon, für den schnellen Zugriff auf alle Funktionen
  • Sauberes Html, dadurch
    • Support für eine breite Anzahl an Browsern
    • Barrierefreiheit
    • SEO
  • Erweiterter RichText Editor, mehr Funktionen und konformes HTML
  • Flexiblere Agregation von Inhalten
  • Web Analytics
  • Einfachere Medienunterstützung, z.B. Videos

SharePoint Foundation 2010

SharePoint Foundation 2010 ist eine frei verfügbare Lösung im Bereich Kollaboration und integriert sich nahtlos in Microsoft Office. Es bietet allerdings keine Funktionen im Bereich Web Content Management (WCM).

Fazit

SharePoint 2010 bietet für den Kunden mehr Möglichkeiten… SharePoint 2010 macht als Entwickler Spass… Microsoft hat wesentliche Funktionen verbessert… Zusammen mit den out-of.the-box Möglichkeiten im Bereich Kollaboration und der Suche ist SharePoint 2010 eine sehr starke Plattform für das Bereitstellen von Informationen, für interne und externe Zusammenarbeit sowie das Auffinden (und Darstellen) von Daten und Informationen.

SharePoint 2010 Enterprise Content Management

SharePoint 2010 bietet verschiedene Funktionen zum Thema Content Management, welche unter dem Namen Enterprise Content Management (ECM) zusammengefasst werden. Bereits vor einem Jahr habe ich über Web Content Management (WCM) mit SharePoint 2007 geschrieben:

Die heutige Serie von Artikeln soll dort anschliessen und umfasst folgende Themen:

  1. SharePoint 2010 Web Content Management
  2. SharePoint 2010 Document Management und Managed Metadata
    • Überblick
    • Details 1
    • Details 2
    • Zusammenfasung
      (Links folgen)

Enterprise Content Management

Der Begriff Enterprise Content Management umfasst im Kontext von SharePoint 2010 folgende Themen:

  • Web Content Management (WCM)
  • Document Management
  • Managed Metadata
  • Records Management (wird nicht behandelt)
  • Digital Asset Management (wird nicht behandelt)

Je nach Quelle wird der Begriff Content Management durchaus unterschiedlich interpretiert, grundlegend kann man aber sagen, dass es sich um die Verwaltung von digitalen Informationen über einen Lebenszyklus handelt. Diese digitalen Informationen beinhalten z.B. Dokumente (pdf, Word), Webseiten, Multimedia oder andere Daten. Diese werden

  • erstellt, aktualisiert und veröffentlicht bzw.
  • gelöscht oder archiviert.

Am Prozess sind unterschiedliche Personen wie z.B. der Autor beteiligt.

Quellen

Microsoft selber stellt folgende Resource Center zur Verfügung:

Für Document Management und Digital Asset Management sind meines Wissens keine Resource Center vorhanden. Da mir die Resource Center momentan eher wie eine Gruppierung von Links zu TechNet vorkommen, ist das nicht weiter schlimm, da man dort zu allen Themen etwas findet.

Nächster Artikel: SharePoint 2010 Web Content Management

SharePoint Connector for Confluence (PartIV) Federated Search

Im 4. und letzten Teil meiner Serie über den SharePoint Connector for Confluence geht es nun im die Federated Search.

Folgende Voraussetzungen sind gegeben: Es muss ein SharePoint 2010 Server vorhanden sein (Standard oder Enterprise), da in SharePoint2010 Foundation keine Federated Search unterstützt wird. Auf der Confluence Seite muss das OpenSearch plugin installiert sein und so konfiguriert, dass es sich die Suchresultate mit SharePoint "shared".

Bei der Konfiguration auf der SharePoint Seite ist zu beachten, dass der "Location Type" auf OpenSearch konfiguriert ist. Das wichtigste hier ist auch wieder die Authentifizierung. Idealerweise, ist das ganze ja so oder so als SSO und AD integriert aufgesetzt. Ansonsten ist eine Konfiguration möglich, welche das hinterlegen eines Benutzers für alle Such Abfragen möglich macht, aber auch Forms Authentication, Anonymous und SSS (Secure Store Service) sind möglich. Wie immer ist hier die SSO / Ad Integration empfohlen, so dass auch gleich die Suchresultate aus Confluence Security trimmed sind.

Auch hier kann man von 2 Seiten die Installation vornehmen. Zur einen Seite, dass man von SharePoint aus Confluence Content findet und natürlich umgekehrt.

Confluence Resultate in der SharePoint Suche: Wie bereits erwähnt, wird hier der Weg via Federated Search gegangen. (Open Search). Das heisst, dass nicht der SharePoint Crawler den Confluence Content indexiert, sondern das Query wird bei der Suchabfrage dem Confluence Server übergeben und in der Resultate Seite von SharePoint dargestellt. Die Indexierung und der Index wird wie gewohnt auf dem Confluence Server vorgenommen. Dazu wird auf der Resultate Seite ein Federated Result WebPart platziert, welches dies dann übernimmt.

clip_image001[1]

Die Resultate werden nun innerhalb dieses WebParts dargestellt. Es kann via XSLT das Design und die Darstellung angepasst werden und es kann auch ein Link dargestellt werden, wo mehr Resultate aus diesem Content erscheinen. (Öffnet die Result Page von Confluence).

clip_image002[1]

Das ganze funktioniert auch aus dem Confluence Wiki, natürlich einfach mit umgekehrten Vorzeichen. Hier ist die Installation des Opensearch Plugins notwendig. Zusätzlich kann man das SharePoint Decorator Theme installieren, welche mir dann beim Suchfenster ermöglicht zu selektieren, welchen Content ich durchsuchen möchte. Danach kann ich wählen zwischen "SharePoint & Confluence" und "Confluence only".

clip_image003[1]

Das Prinzip der Abfrage ist nun gleich wie wenn man aus SharePoint sucht, nur das diesmal natürlich auch Confluence das Query an den SharePoint Server gesandt wird und dann die Resultate auf der Confluence Resultat Seite dargestellt werden.

Grundsätzlich eine gute Sache. Das ganze basiert auf Open Search, das heisst, es ist nicht wirklich eine spezifische SharePoint / Confluence Angelegenheit. Ob dies so eingestzt werden soll und kann, hängt natürlich von vielen Faktoren ab. Ich persönlich würde jetzt vermutlich eher dahin tendieren, dass ich eine Search Engine für meine Firma bestimmen würde (In diesem Fall natürlich SharePoint) und würde dann für Confluence einen eigenen Scope einrichten und SharePoint auch gleich den Confluence Content indexieren lassen. Somit müsste man nur einen Index, Search Service etc. warten und pflegen. Aber wie gesagt, dies ist von vielen technischen, politischen Faktoren abhängig, und kann so natürlich nicht allgemein beantwortet werden.

Seite 1 von 712345...Letzte »