Ein Portal entwickeln lassen: So geht`s!
- Website
Das (Web-)Portal ist der Einstiegspunkt in einem komplexen System und ermöglicht es dem Anwender schnell und übersichtlich an Informationen und Funktionalitäten des Systems zu gelangen.
Um ein erfolgreich ein Portal entwickeln zu lassen, müssen viele Gesichtspunkte beachtet werden. Diese bringen wir Ihnen im Folgenden näher. Zunächst werden wir aber den Begriff Portal genauer eingrenzen.
Was ist ein Portal?
In der theoretischen Informatik wird ein System als Portal bezeichnet wenn es mehrere Anwendungen, Prozesse und Dienste vereint und dabei folgende Funktionen bereitstellt:
- Personalisierung
- Sicherheit
- Suche
- Präsentation von Informationen
Es dient also der Vereinheitlichung von vielen unterschiedlichen Systemen.
Personalisierung
Ein Portal ermöglicht es die Navigation und den Aufbau der angezeigten Informationen für jeden Nutzer oder jede Rolle zu individualisieren. So sieht beispielsweise ein Vertriebsmitarbeiter in dem internen Portal die gesamte Sales-Pipeline, aber ein Mitarbeiter in der Logistik nur die für ihn relevanten Daten der finalen Bestellung.
Sicherheit
Unter Sicherheit ist hierbei zu verstehen, dass die verfügbaren Informationen und Funktionen je nach Nutzer (oder Rolle) eingeschränkt werden können. So kann zum Beispiel in einem Online-Shop ein Kunde Produkte nur suchen und bestellen, ein Mitarbeiter kann aber auch neue Produkte erstellen und vorhandene bearbeiten.
Suche
Ein Portal muss es dem Anwender ermöglichen nach für ihn relevanten Daten und Informationen zu suchen. Klassischerweise wird hierfür ein Suchinput verwendet. Auch eine gut sortierte interaktive Visualisierung der Informationen kann im groben Sinne als Suche bezeichnet werden.
Präsentation von Informationen
Die in dem Portal dargestellten Informationen müssen eine geeignete Präsentation haben. Es werden dem Anwender also nicht einfach nur Rohdaten aus einem System gezeigt sondern zum Beispiel eine Aggregation von Daten mehrerer Systeme in einer angemessenen Form, wie einem Diagram oder einer standardisierten Tabelle.
Was ist ein Webportal?
Meist hört man den Begriff Portal nur in Form des Webportals. Was ist aber der genaue Unterschied? Historisch hat sich der Begriff Webportal in den 1990ern durchgesetzt, als die meisten Internetanbieter und die ersten Suchmaschinen eine Übersichtsseite als Einstieg in das Internet anboten. Sie wollten so den noch frischen Internetnutzer an das World Wide Web heranführen – wohlgemerkt an ein World Wide Web, das damals noch sehr viel übersichtlicher war als heute. Diese Webportale haben meist nicht vollwertig die klassische Definition eines Portals abgedeckt.
Heutzutage sind mit Webportalen in der Regel Portale gemeint, die mit den Technologien der Webentwicklung erstellt wurden. Diese können dadurch einfach in einem Webbrowser aufgerufen und bedient werden. Ob die Anwendung dabei im Internet oder Intranet liegt ist hierbei irrelevant.
Ein Webportal planen
Um ein Webportal zu entwickeln bedarf es einer detaillierten Planung vorab. Dabei sollten Sie vor allem die folgenden Kriterien in Betracht ziehen.
Nutzer und Nutzergruppen
Sie sollten sich zunächst Gedanken machen, welche Anwender das Portal nutzen sollen und welche Rollen diese verkörpern. Hierbei sollten Sie vom Portaladministrator bis hin zum alltäglichen Endnutzer denken und diesen individuelle Use-Cases zuordnen. Durch diese Nutzeranalyse lassen sich bereits erste Anforderungen definieren. Zum Beispiel wird der Login und die Registrierung in den meisten Fällen etwas simpler ausfallen wenn es um ein B2C Portal geht. Bei einem B2B Portal kann es aber erforderlich sein eine Mandantenverwaltung umzusetzen oder andere Mechanismen zur Nutzerkontrolle einzubauen.
Komponenten
Wichtigster Bestandteil eines Portals sind die verschiedenen Anwendungen, Prozesse und Dienste, welche in dem Portal vereint werden. Dazu gehören unter anderem Datenbanken, Programme, und Geräte im eigenen System und auch in externen Systemen.
Ein Mitarbeiter soll zum Beispiel in der Lage sein nach Dokumenten in einer Datenbank zu suchen, diese einem Kollegen zu senden und in seinem Büro drucken zu lassen. In diesem Fall wären die Komponenten die Datenbank, der Drucker und eine interne Kommunikationsanwendung wie zum Beispiel Slack. Fragen Sie an dieser Stelle am besten bereits nach Dokumentationen zu den einzelnen Komponenten! Die Entwickler werden diese benötigen.
Berechtigungen
Aus den Ergebnissen der Nutzer- und Komponentenanalyse kann ein erstes Berechtigungsmodell erstellt werden. Welche Berechtigungen für den Zugriff auf die einzelnen Komponenten soll es geben? In der Regel kann man dort zwischen drei Berechtigungen differenzieren: Einsehen/Lesen, Anlegen/Editieren und Löschen. Es entstehen also 3*{Anzahl der Komponenten} Berechtigungen. In den meisten Fällen kann man viele von diesen aber als eine Berechtigung zusammenfassen.
Ein konkretes Portal entwickeln lassen
Nach der Analyse kann in der Regel die Implementierung gestartet werden. Hierbei zerteilen wir das Problem in drei grobe Aufgaben:
1. Die Portalanwendung
Hierbei handelt es sich um die Anwendung, die dafür zuständig ist das Portal zu verwalten und zu visualisieren. Es ermöglicht Login und Registrierung, Navigation durch die verschiedenen Ansichten des Portals, eine eingebaute Rechtekontrolle und die Interaktion mit den unterschiedlichen Komponenten. Sie definiert also wer auf welche Weise womit interagieren kann. So können zum Beispiel Anwender einer bestimmten Gruppe verschiedene Programme (die als Komponenten zur Verfügung gestellt werden) ausführen um ihren täglichen Arbeitsablauf zu vereinfachen. Administratoren können diese Anwendungen zusätzlich verwalten und konfigurieren.
2. Die Komponenten anbinden
Die Schwierigkeit, bestehende Komponenten anzubinden liegt darin, dass diese Komponenten nicht mit dem Portal im Hinterkopf erstellt wurden. Daher bieten diese meist keine Schnittstellen an, über die die Platform mit ihnen kommunizieren kann. In diesem Fall müssen die Komponenten um Schnittstellenfunktionen erweitert werden. Dabei bietet es sich an, diese Schnittstellen nach allgemeinen Standards aufzubauen. Für eine Komponente, welche Datensätze verwaltet, bietet sich zum Beispiel der CRUD-Ansatz an.
Für eine Komponente, die Funktionen zur Verfügung stellt, sind komplexere Schnittstellen und weitere Abwägungen notwendig. Bei einer rein internen funktionalen Komponente sind funktionelle Schnittstellenstrukturen oder “Handles” angemessen. Bei einer Komponente, die vielleicht auch noch von extern genutzt werden soll bietet sich zum Beispiel SOAP an.
3. Berechtigungssystem erstellen
Es bietet sich an die Berechtigungsverwaltung und -kontrolle in einem separaten Dienst zu erstellen. Dieser wird dann von der Anwendung und den Komponenten verwendet um die Berechtigungen zu erfragen. Dies bietet den Vorteil, dass die Rechteverwaltung abstrahiert wird und die konkrete Umsetzung nicht relevant ist für alle anderen Komponenten. So kann man später Anpassungen vornehmen. Häufig gibt es bereits eine Methode um interne Berechtigungen abzubilden, wie zum Beispiel Microsofts Active Directory. Auf so etwas kann natürlich aufgebaut werden.
Das fertige Webportal
Das Resultat der ganzen Mühen ist ein sauberes Netzwerk aus Komponenten, welche als eigenständige Produkte angesehen werden können. Alle bieten einen einheitlichen Zugriff, den die Plattform-Anwendung verwendet um Zugriff zu den Funktionen und Informationen der Komponenten zu gewähren. Der Berechtigungsdienst kann verwendet werden um Zugriff und Verwendung zu validieren. Das einbinden neuer Komponenten ist durch die Standards der Konnektoren erheblich vereinfacht und kann im besten Fall sogar im laufenden Betrieb erfolgen.
Sie haben detaillierte Fragen oder wünschen eine individuelle Beratung zu einem konkreten Projekt? Unsere Spezialisten für Plattformentwicklung beraten Sie gerne. Selbstverständlich können Sie auch bei uns Ihr Portal entwickeln lassen. Sprechen Sie uns einfach an!