Basistechnologien P2plus - AP Schweiz Informatik AG

Werbung
Basistechnologien P2plus
P2plus : Your Business Solution ...............................3
Einführung .....................................................................4
Microsoft .NET-Plattform...........................................5
P2plus im Netzwerk.....................................................8
P2plus Systemarchitektur........................................ 10
P2plus Client .............................................................. 11
P2plus Webserver...................................................... 15
P2plus Applikationsserver ....................................... 17
Datenhaltung in P2plus........................................... 21
Skalierbarkeit und Anpassung von P2plus.......... 23
© Copyright 12.10.2006 AP Automation + Productivity AG, Karlsruhe
Die in diesen Unterlagen enthaltenen Angaben und Daten können ohne vorherige Ankündigung geändert werden. Ohne
ausdrückliche schriftliche Genehmigung der AP Automation + Productivity AG darf kein Teil dieser Unterlagen für
irgendwelche Zwecke vervielfältigt oder übertragen werden, unabhängig davon, auf welche Art und Weise oder mit welchen
Mitteln, elektronisch oder mechanisch, dies geschieht.
Alle Rechte vorbehalten.
AP/P2/P2plus sind eingetragene Warenzeichen der AP Automation + Productivity AG. Alle anderen Bezeichnungen sind
Marken oder eingetragene Marken der jeweiligen Hersteller.
AP Automation + Productivity AG
Schoemperlenstraße 12 b, 76185 Karlsruhe
Postfach 21 01 62, 76151 Karlsruhe
Internet: http://www.ap-ag.com E-Mail: [email protected]
AP Automation + Productivity AG
P2 plus : Your Business Solution
P2plus ist eine internetbasierende Unternehmenslösung (extended ERP-System) für mittelständische
Produktions- und Handelsunternehmen, die vollständig mit aktuellsten Web-Technologien (HTML,
XML, Web Services, SOAP) auf Basis von Microsoft .NET entwickelt wurde. Damit nimmt P2plus eine
führende Rolle unter den eERP-Systemen ein. P2plus wurde 2003 mit dem Microsoft .NET Award für
eines der besten .NET-basierenden Kundenprojekte im Mittelstand ausgezeichnet. Der hohe
Innovationsgrad und Kundennutzen unserer extended ERP-Lösung fanden außerdem internationale
Anerkennung durch die Verleihung des Microsoft .NET Solution Awards 2002 als weltweit beste
Anwendungslösung auf Basis der zukunftsweisenden .NET-Plattform.
P2plus geht weit über den Leistungsumfang klassischer ERP-Systeme hinaus: Customer Relationship
Management, E-Business, Wissensorganisation, aber auch Advanced Planning & Scheduling und
Supply Chain Management sind integrale Bestandteile von P2plus. Damit deckt P2plus alle betrieblichen Funktionsbereiche mit dem gleichen Anwenderkomfort in einer einheitlichen Internettechnologie ab:
Customer Relationship Management (CRM)
Warenwirtschaft (WWS)
Produktionsplanung und –steuerung (PPS)
Betriebsdatenerfassung (BDE)
Projektverwaltung und Grobplanung für Anlagen- und Werkzeugbauer
Serviceabwicklung und Help Desk
Advanced Planning & Scheduling (APS)
Finanz- und Rechnungswesen (F+R)
Controlling und Management-Informationssystem mit OLAP-Technologie (Business
Intelligence)
E-Business mit Internet Shop, Supply Chain Management und Marktplatzintegration
insbesondere auch für Automobilzulieferer
Knowledge Management mit Intranet, Workflow und Dokumentenverwaltung.
Auf der Basis von Microsoft Windows 2003 und der .NET Entwicklungsplattform wurde P2plus als
n-tier-Applikation unter intensiver Nutzung modernster XML-Technologien vollständig neu realisiert.
Dabei ist auf dem Client-Rechner lediglich ein Browser (Internet Explorer ab Version 6.0) erforderlich.
Auf dem Webserver werden die Internet Information Services (IIS) von Windows 2003 genutzt. Die
Geschäftslogik wurde in Web Services umgesetzt und wird vom Applikationsserver bereitgestellt. Die
Datenhaltungsebene bilden SQL Server und Exchange Server sowie das Active Directory von
Windows 2003.
P2plus integriert erweiterte ERP-Funktionalität (eERP) auf Basis von .NET und XML Web Services in einer einheitlichen
Systemstruktur und Benutzeroberfläche
Seite 3 von 24
AP Automation + Productivity AG
Aufgrund der komponentenbasierten Systemarchitektur lässt sich P2plus äußerst gut skalieren und
den jeweiligen Erfordernissen optimal anpassen. Insbesondere die Anbindung von Vertriebsbüros oder
Zweigwerken über das Internet, der Aufbau von Extranets unter Einbeziehung von Kunden und
Lieferanten und die Integration in weltumspannende E-Business-Strukturen werden mit P2plus zu
einer einfachen Aufgabe.
Einführung
Mit P2plus wurde eine Applikation geschaffen, die alle Ansprüche an eine internetbasierende
Unternehmenslösung erfüllt und auch künftigen Anforderungen gerecht wird. Dazu wurde die
Funktionalität der bereits erfolgreich eingesetzten Applikation (P2) komplett neu implementiert unter
konsequentem Verzicht auf die Verwendung von Altkomponenten. Auf der Basis der Microsoft .NETPlattform stützt sich P2plus in vollem Umfang auf zukunftsorientierte Technologien. Zukunftsorientiert sind in diesem Zusammenhang vor allem die im Internet verwendeten Technologien.
Im Zusammenspiel der Internettechnologien mit Web Services und relationalen Datenbanken wurde
eine leistungsfähige Applikation entwickelt, deren Besonderheit darin liegt, dass auf einem Client
keine applikationsspezifischen Installationen erforderlich sind, sondern lediglich ein Internet Browser.
Um die Internettechnologien optimal nutzen zu können, ist eine neuartige Programmarchitektur
notwendig, die sich von den bisherigen Anwendungen auf Client-Server-Basis deutlich unterscheidet.
Auf der Client-Seite befindet sich nur ein Internet Browser, während auf der Server-Seite die Web-,
Applikations- und Datenbankserver für die Ausführung der Business-Logik sorgen. Durch diese
sogenannte n-tier-Architektur sind leistungsfähige verteilbare und skalierbare Lösungen möglich.
Die folgende Abbildung zeigt die einzelnen Schichten, über die die Architektur von P2plus realisiert ist.
Die Verwendung aktueller Internettechnologien in P2plus (HTML, XML, CSS, SOAP ... ) bietet
gegenüber herkömmlichen Client-Server-Modellen folgende Vorteile:
Beschränkung der notwendigen Client-Software auf den Internet Explorer ab der Version 5.5.
Geringer Aufwand für Anpassungen und Updates auch bei einer hohen Zahl an Arbeitsplätzen,
weil die gesamte Software an zentraler Stelle installiert wird und nicht jeder Arbeitsplatz
aktualisiert werden muss.
Saubere Trennung der verschiedenen Software-Schichten durch verbindungslose Architektur.
Seite 4 von 24
AP Automation + Productivity AG
Optimale Eignung des Systems für den Einsatz in Netzwerken (Internet, Intranet, VPN); P2plus
eignet sich damit besonders für Unternehmen mit mehreren Standorten, Niederlassungen oder
Filialen.
Einfache Anpassung der Benutzeroberfläche an die Corporate Identity der Kundenunternehmen
durch die Steuerung des Layouts über CSS-Dateien.
Erleichterung der Integration zusätzlicher Software-Module durch die konsequente Nutzung
von Hyperlinks als Kommunikations-Mechanismus und von XML-basierenden Web Services
über SOAP.
Einsatzmöglichkeit von P2plus im Application Service Providing durch das Zusammenspiel von
zentraler Installation und Internetfähigkeit.
Microsoft .NET.NET- Plattform
Microsoft hat mit .NET eine Plattform für Anwendungsentwicklung und Web Services realisiert, die
vollständig auf das Internet ausgerichtet ist. Mit Microsoft .NET rücken flexible Konstellationen von
Computern, Zugangsgeräten und Diensten in den Vordergrund. Applikationen und Dienste
unterschiedlicher Hersteller lassen sich problemlos kombinieren und ermöglichen die Schaffung
umfassender und effizienter Lösungen auf Basis der Internettechnologien. Gemeinsam ist diesen
Applikationen die Kommunikation über Internet-Standardprotokolle sowie die Verwendung von XML
zum Datenaustausch. Microsoft .NET umfasst im einzelnen folgende Komponenten:
Entwicklungswerkzeuge zur Realisierung XML- und SOAP-basierender Anwendungen: Visual
Studio .NET,
Serversysteme für den Betrieb solcher Anwendungen: Windows 2000/2003 Server, Windows
.NET Server,
Systeme für unterschiedliche Clients: Windows XP, Windows CE .NET, Internet Explorer,
die .NET Enterprise Server: SQL Server, Exchange Server, BizTalk Server, ISA Server.
Die Entwicklungen zum weiteren Ausbau der Internet-Integration werden von Microsoft im Rahmen
verschiedener Standardisierungsgremien in Zusammenarbeit mit den wichtigsten weltweit tätigen
Unternehmen (IBM, HP, Sun, ...) laufend weiter vorangetrieben. Durch die enge Zusammenarbeit mit
Microsoft wird die AP Automation + Productivity AG sehr frühzeitig über Erweiterungen an
Softwareprodukten und strategische Veränderungen informiert und kann diese Informationen in den
Entwicklungsprozess von P2plus einbeziehen.
Die .NET-Strategie wird langfristig den Umgang mit dem Web auf allen Ebenen verändern. Die
Realisierung der .NET-Plattform folgt jedoch einem evolutionären Pfad, sie gründet sich auf heute
verfügbare Plattformen und Technologien und baut diese aus, sodass P2plus den Anforderungen des
Marktes entsprechend weiterentwickelt werden kann, denn P2plus basiert schon heute auf allen
verfügbaren .NET-Serverkomponenten.
Web Services
Web Services sind ein neuer Standard des W3C-Konsortiums für Schnittstellen zwischen unterschiedlichen Applikationen, Komponenten und Diensten im Internet. Web Services stützen sich auf
verschiedene einzelne W3C-Standards wie XML, SOAP, UDDI und WSDL.
Über Web Services können Module verschiedener Anwendungen miteinander kommunizieren und
Funktionalitäten gegenseitig nutzen. Im Gegensatz zu anderen Kommunikationsstandards arbeiten
Web Services dabei ohne festen Verbindungsaufbau. Da die Übertragung der Informationen zwischen
Seite 5 von 24
AP Automation + Productivity AG
den Kommunikationspartnern durch den Austausch von Nachrichten realisiert wird, eignen sich Web
Services auch besonders für die Kopplung verteilt liegender Anwendungen.
Folgende Standards sind für die Web Services bestimmend:
XML (Extensible Markup Language): strukturierte Auszeichnungssprache die – anders als
HTML – keine festgelegten Auszeichnungen hat, sondern Syntaxregeln definiert.
Auszeichnungen und Strukturen können in XML auf Basis dieser Syntaxregeln individuell
definiert werden. Durch diese Eigenschaften eignet sich XML besonders gut zum Übertragen
von strukturierten Daten an internetbasierende Applikationen.
SOAP (Simple Object Access Protocol): Protokoll für das Versenden und Empfangen von
Nachrichten über das Web; diese Technologie ermöglicht die Integration von Applikationen
über das Internet, unabhängig vom Betriebssystem.
WSDL (Web Service Description Language): Beschreibungssprache für den Aufruf eines Web
Service seitens einer Applikation; die Beschreibung muss Aufschluss geben über das
verwendete Protokoll, die Adresse und Port-Nummer, die möglichen Prozeduren und
Funktionen sowie die Formate für Input und Output.
UDDI (Universal Description, Discovery and Integration of Business for Web): Geschäftsverzeichnis, in dem Anbieter ihre Dienste registrieren und Softwareentwickler Web Services
gezielt suchen können. Das UDDI-Verzeichnis kann sowohl manuell von Entwicklern als auch
automatisch von Anwendungen durchsucht werden.
In P2plus werden Funktionalitäten in Form von Web Services sowohl auf dem Webserver als auch auf
dem Applikationsserver bereitgestellt.
Die Web Services auf dem Webserver sind die Schnittstelle, um von Client-Applikationen aus
auf die Funktionalität von P2plus zuzugreifen. Der Browser verwendet die Funktionen dieser
Schnittstellen, um nach dem Laden einer Seite über weitere Aufrufe im Hintergrund
ergänzende Daten zu laden, Daten aus der Oberfläche an den Server zurückzusenden und
Funktionen der Applikation ausführen zu lassen. Diese funktionsbezogenen Schnittstellen zur
Anwendung bestehen nicht nur vom Browser-Client aus. Sie sind auch durch andere
Applikationen, wie z. B. Excel, ansprechbar.
Die Web Services auf dem Applikationsserver bilden die funktionale Basis von P2plus. Sie regeln
den Umgang mit Daten und stellen Verarbeitungsfunktionen zur Verfügung.
XML in P2plus
Das universelle Datenformat XML stellt in P2plus eine Basistechnologie dar, die immer dort eingesetzt
wird, wo in klassischen Applikationen Datenformate oder Strukturen von Nachrichten zu definieren
wären:
Daten aus der Datenbank werden in einem universellen XML-Format auf den Client übertragen,
um dort entsprechend der Einstellungen des Benutzers angezeigt zu werden.
Die Integration von aktuellen Office-Programmen (Word und Excel aus den Office-Linien XP
und 2003) erfolgt, indem die Daten aus P2plus vom Webserver im jeweiligen XML-Format
bereitgestellt werden. Excel-Tabellen oder Word-Dokumente können so direkt aus dem P2plus
Web heraus auf der Basis von aktuellen Daten geöffnet werden.
Die primäre Schnittstelle für den Austausch von Daten zwischen P2plus und anderen
Applikationen ist ein XML-Format, in dem die relevanten Daten aus der Datenbank vollständig
enthalten sind.
Andere Datenformate in Schnittstellen, wie z. B. durch Komma separierte Merkmale, werden
mit XML-Transformationen erzeugt (XSLT).
Seite 6 von 24
AP Automation + Productivity AG
Für die Einbindung des BizTalk-Servers werden spezielle XML-Daten zur Verfügung gestellt, in
denen auch die notwendigen Verbindungsdaten enthalten sind.
Nachrichten, die über E-Mail zwischen dem P2plus Internet Shop und der ERP-Installation
ausgetauscht werden, sind als XML-Dateien realisiert.
Die Funktionen aller Software-Komponenten werden in XML-Format beschrieben (WSDL).
Funktionsaufrufe werden zusammen mit den Werten der Parameter über die Grenzen einer
Komponente hinaus im XML-Format beschrieben (SOAP).
Die Konfiguration des P2plus Webservers und des P2plus Web wird durch XML-Dateien
festgelegt (P2plus.config, Web.config).
Die Konfiguration der Datenobjekte, wie z. B. Statuswerte und Konsistenzbedingungen im
Applikationsserver, werden in XML-Dateien abgelegt.
Die Transformation von Datenobjekten in andere Datenobjekte - z. B. von Angeboten in
Aufträge - wird durch XML-Tranformationen beschrieben (XSLT).
Der Inhalt der Navigationsleiste ist als XML-Datei gespeichert (P2Way.xml).
Die Lizenzdatei für eine Installation ist als XML-Datei hinterlegt.
Die Bausteine für Infoseiten (WebParts) sind in XML-Dateien beschrieben.
Aus dieser vielfältigen Nutzung der XML-Technologie ergeben sich zahlreiche Vorteile, die sowohl bei
der Programmierung, als auch während des Betriebs sowie bei der Administration von P2plus zum
Tragen kommen:
XML als Datenformat kann inzwischen in vielen Applikationen zum direkten Datenaustausch
verwendet werden, was die Integration von Anwendungen verschiedener Hersteller vereinfacht.
Da XML-Dateien auf der Speicherung oder Übertragung von Text basieren, ist eine Modifikation
bzw. Analyse der Daten leicht möglich. Die Schnittstellen werden dadurch sehr transparent.
Der Text von XML-Daten wird im Format utf-8 kodiert, sodass keine Probleme bei der
Verwendung von Umlauten, Sonderzeichen oder Zeichen aus anderen Sprachen auftreten.
Über die Kodierung Base64 können auch binäre Daten (Bilder etc.) innerhalb von XML
gespeichert werden.
XML-Daten lassen sich auf einfache Art und Weise signieren und damit jederzeit auf ihre
Unversehrtheit überprüfen. Eine ungewollte oder absichtliche Modifikation der Daten lässt sich
dadurch unmittelbar erkennen.
XML-Daten können während der Übertragung komprimiert werden, um Übertragungskapazitäten zu schonen.
Mit dem Standard XML-Schema ist es leicht möglich, die Struktur von XML-Daten zu
beschreiben und zu überprüfen.
Die Standard XML-Transformationen (XSLT) ermöglichen eine einfache Konvertierung von
Daten in andere Formate.
Durch den XPATH-Standard wird die Suche nach Werten innerhalb von XML-Daten unterstützt.
Die Arbeit mit XML-Daten wird durch das standardisierte Zugriffsmodell XML-Document
ermöglicht, das auf allen gängigen Plattformen wie z. B. Microsoft .NET, Java 1.4 und
JavaScript im Browser verfügbar ist.
Da P2plus diese XML-Technologien intensiv in seinem internen Aufbau nutzt und diese nicht nur in
Schnittstellen anbietet, ergibt sich ein durchgängiges Erscheinungsbild in der Applikationsstruktur, in
der auch kundenspezifische Erweiterungen oder Änderungen effizient durchgeführt werden können.
Ein Systemadministrator kann seine einmal erworbenen XML-Kenntnisse an unzähligen Stellen in
P2plus nutzen, anstatt sich in eine Vielzahl unterschiedlicher Parametrierverfahren oder
Schnittstellenformate einarbeiten zu müssen.
Seite 7 von 24
AP Automation + Productivity AG
Betriebssystem Windows 2000/2003 Server
Das Betriebsystem Windows 2000/2003 Server ist in das .NET-Konzept integriert und optimal für
Web-Applikationen geeignet. Windows 2000/2003 Server enthält verschiedene Komponenten und
Dienste, die in Web-Applikationen genutzt werden können. Diese Komponenten bzw. Dienste tragen
dazu bei, den Programmieraufwand entscheidend zu senken, weil sie bereits Basisfunktionalitäten
liefern, die für eine komponentenbasierte Web-Applikation benötigt werden (InternetInformationsdienste, Sicherheitsdienste, SOAP).
Exchange 2000/2003 Server
In P2plus integriert ist der Microsoft Exchange 2000/2003 Server. Mit dieser Serverapplikation
können Zusammenarbeit und Informationsaustausch der Mitarbeiter eines Unternehmens
untereinander gestaltet werden. Neben der Verwendung als Mailserver kann
Exchange 2000/2003 Server auch zur Organisation und Überwachung von Workflows und zum
Dokumentenmanagement genutzt werden. Er verfügt über Funktionen, die es zulassen, den
Arbeitsfortschritt von Dokumenten zu verfolgen und Dokumente zu archivieren (Web Storage System).
Diese Funktionen sind voll in P2plus integriert.
SQL Server 2000
SQL Server 2000 unterstützt XML und HTTP und ermöglicht dadurch die Integration in InternetApplikationen auf Basis der .NET-Plattform. Mit SQL Server 2000 können XML-Daten genutzt und
erstellt werden. Auch das Einfügen, Aktualisieren und Löschen von Daten über XML ist möglich. Der
SQL Server gewährleistet die für P2plus notwendige Verlässlichkeit der Daten und Sicherheit der
Transaktionen und kann im Cluster und auf mehrere Rechner verteilt betrieben werden. Darüber
hinaus ist SQL Server 2000 auf Windows 2000/2003 abgestimmt und kann dessen Verwaltungsfunktionen mit einbeziehen (integrierte Sicherheit).
P2 plus im Netzwerk
P2plus ist eine Web-Applikation und läuft damit häufig in einem öffentlichen Umfeld. Deswegen
muss mit besonderer Sorgfalt auf den Schutz der Daten geachtet werden. Dazu wurde ein Konzept
entwickelt, das alle notwendigen Sicherheitsaspekte beachtet.
Im Mittelpunkt dieses Sicherheitskonzeptes stehen die folgenden Punkte:
Schutz der Daten vor dem Zugriff Unbefugter
Schutz der Daten vor dem Abfangen, Anzeigen und Kopieren
Schutz der Daten vor Veränderungen bei der Übertragung
Die folgenden Mechanismen für die Datensicherheit Ihrer Web-Applikation sind im Schichtenmodell
des Netzwerks implementiert und werden von P2plus genutzt:
Authentifizierung
Integrität
HTTPS
VPN
Seite 8 von 24
AP Automation + Productivity AG
Authentifizierung
Über die Authentifizierung wird die Identität eines Benutzers bei der Anmeldung am Netzwerk überprüft. Die Überprüfung beruht auf dem Benutzernamen, dem Kennwort sowie Zeit- und Kontoeinschränkungen, die im Active Directory hinterlegt sind. Der Zugang zum Netz über eine nicht
registrierte Identität wird verhindert. Zugriffsberechtigungen auf Dateien und Ordner im Netz
bestehen anhand der über die Authentifizierung festgestellten Identität.
Integrität
Daten werden im Internet nicht als umfassende Pakete übertragen, sondern in kleineren Einheiten, die
nach der Übertragung wieder zusammengesetzt werden müssen. Die eintreffenden Daten werden auf
Unversehrtheit und Vollständigkeit überprüft. Sollte diese Integritätsprüfung ergeben, dass Daten
verändert wurden oder unvollständig sind, wird die Annahme verweigert und dadurch die Bearbeitung
fehlerhafter Daten verhindert.
HTTPS
HTTPS ist ein erweitertes HTTP-Protokoll, das entwickelt wurde, um die Sicherheit der Datenübertragung über das Internet für Einzeltransaktionen zu gewährleisten. Dies geschieht mit Hilfe des
Zusatzprotokolls SSL (= Secure Socket Layer) über digitale Zertifikate, Informationsverschlüsselung
und elektronische Unterschriften.
VPN
Das virtuelle private Netzwerk (VPN) ist die Erweiterung eines privaten Netzwerkes, das
zusammengefasste, verschlüsselte und authentifizierte Verknüpfungen über gemeinsame und
öffentliche Netzwerke hinweg einschließt. VPN-Verbindungen können Remotezugriff und RoutingVerbindungen zu privaten Netzwerken über das Internet bereitstellen. Mit Hilfe von
Verschlüsselungstechnologie wird im Internet ein "Tunnel" aufgebaut, sodass die elektronische
Kommunikation nicht abgehört oder verändert werden kann.
Seite 9 von 24
AP Automation + Productivity AG
P2 plusplus-Systemarchitektur
P2plus ist eine Applikation, die aus mehreren Schichten besteht. Dieser Aufbau wird als n-tierArchitektur bezeichnet. In der folgenden Abbildung ist die Architektur des Systems skizziert.
Jede dieser Schichten enthält unterschiedliche Software-Komponenten. P2plus ist also keine monolithische Applikation, sondern ein Paket aus verschiedenen Komponenten mit klar abgegrenzten
Aufgaben.
Der Client stellt Daten dar und nimmt Benutzereingaben entgegen. Er spricht den Webserver über das
SOAP-Protokoll an.
Der Webserver stellt über die Internet-Informationsdienste von Windows 2003 die Verbindung zum
Client her und verarbeitet dessen Anfragen. Über das SOAP-Protokoll greift er auf die Web Services
zu, die sich auf dem Applikationsserver befinden.
Der Applikationsserver greift auf die Datenbanken zu und bearbeitet die Daten.
Die Datenhaltungsschicht speichert die vom Applikationsserver benötigten Daten. Sie kann auf
mehrere Rechner verteilt sein. In die Datenhaltungsschicht gehören
relationale Datenbanken (SQL Server)
Web Storage System (Exchange Server)
der Fileserver
Active Directory
Alle Server setzen auf eine Windows 2000/2003 Server-Plattform auf.
Seite 10 von 24
AP Automation + Productivity AG
XML – Standardisierte Datenformate
P2plus setzt in vielen Bereichen die XML-Technologien ein. Sie werden verwendet, um Daten
zwischen den einzelnen Komponenten von P2plus auszutauschen und um komplexere Daten, wie z. B.
Datensätze der Datenbank, zu übertragen. Für die Anbindung an Fremdapplikationen wird ein Satz
von standardisierten EDI-Connectors angeboten, die ebenfalls auf XML basieren.
Auch einige andere sehr intensiv genutzte Standards wie z. B. SOAP – die Basis für die Funktionalität
von Web Services – basieren auf dem Austausch von XML-Nachrichten.
Zusammen mit dem Standard-Datenformat XML wird in P2plus kein spezieller Zeichensatz verwendet,
sondern der auf UNICODE basierende utf-8 Standard. Damit ist die Basis für eine vom Sprachraum
unabhängige Applikation geschaffen.
P2 plus Client
Auf den P2plus-Arbeitsplätzen ist keine Installation der Software erforderlich. Die Verwendung der
Internet-Standardtechnologien hat damit eine unmittelbare Senkung des Installationsaufwands zur
Folge. Für den Betrieb von P2plus wird auf dem Client lediglich der Internet Explorer ab der
Version 5.5 benötigt. Auch für die Anbindung an den Webserver ist keine spezielle Software zu
installieren. Es werden die verfügbaren Protokolle http und https sowie VPN-Verbindungen genutzt.
Da für P2plus keine Anwendersoftware auf den Clients installiert ist, existiert auch kein Eintrag im
Start-Menü. Der Einstieg in die Applikation erfolgt über URLs. Diese sind in einer Navigationsleiste in
Aufgaben oder Arbeitsbereiche untergliedert. Auch die Navigationsleiste, der P2Way, muss nur einmal
vom Server geladen werden und entlastet damit die Netzwerkschicht. Im Gegensatz zu FramesetLösungen, mit denen sich ein ähnlicher Seitenaufbau umsetzen lässt, bleiben die verwendeten URLs
vollständig als Navigationsmöglichkeit erhalten.
Im Internet Explorer wird die P2plus-Benutzeroberfläche angezeigt, in der die Daten dargestellt und
bearbeitet werden können. Das Layout der Seiten wird durch eine gemeinsame CSS-Datei gesteuert,
die ein einheitliches Erscheinungsbild aller P2plus-Seiten gewährleistet.
Die folgende Abbildung zeigt die Benutzeroberfläche von P2plus mit ihren Bedienelementen.
Symbolleiste zur Navigation
und Bearbeitung von Datensätzen
Funktionsschaltflächen
Datenfelder zum Anzeigen
und Editieren von Datensätzen
Navigationsleiste P2Way zu
allen P2plus-Seiten
Seite 11 von 24
AP Automation + Productivity AG
Die Oberfläche von P2plus ist gleichzeitig Dokument und Funktionalität, d. h. die Seiten sind offen
und wiederverwendbar. So können Sie z. B. eine Tabelle auf einer P2plus-Seite markieren und über die
Zwischenablage in Excel kopieren. Damit ermöglicht P2plus die Weiterverwendung von Daten auf den
Arbeitsplätzen.
Corporate Design
Über das Corporate Design einer Firma wird ein einheitliches und einprägsames Unternehmensbild in
der Öffentlichkeit vermittelt. Auch bei der Gestaltung des Internet-Auftritts der Firma sowie bei der
Präsentation im Intranet spielt daher ein homogenes Erscheinungsbild eine entscheidende Rolle. Die
durchgängige Verwendung gleicher Arten von Grafiken, Zeichnungen, Tabellen, Zeichen und Schriftsätzen trägt erheblich dazu bei, einen einheitlichen Gesamteindruck herzustellen.
In P2plus wird das Layout der einzelnen Webseiten nicht im HTML-Code definiert, sondern es werden
alle in P2plus verwendeten Formate zentral über ein Cascading Style Sheet (CSS) gesteuert und
dadurch eine einheitliche Darstellung der Web-Site gewährleistet. Werden an der CSS-Datei
Änderungen vorgenommen, so wirken sich diese auf alle Dateien im Web aus.
Über dieses Prinzip der zentralen Steuerung des Layout ist es möglich, das gesamte P2plus Web dem
Corporate Design einer Firma anzupassen. Die Änderungen – wie z. B. Farbeinstellungen, Anpassungen
von Zeichen- oder Absatzformaten oder das Einbinden eines Firmenlogos – müssen lediglich in der
CSS-Datei vorgenommen werden.
HTML-Browser
Die Oberfläche von P2plus besteht aus reinen HTML-Seiten. HTML hat den Vorteil, dass es unabhängig
vom verwendeten Betriebssystem dargestellt wird. Der Client benötigt zum Anzeigen der Seiten
lediglich einen Internet Browser. HTML definiert die Elemente auf einer Seite, das Layout wird über
die CSS-Datei festgelegt.
HTML in der Version ab 4.0 sowie die Verwendung weiterer Internet-Standards wie CSS, JavaScript
und Behaviors bieten nicht nur dir Möglichkeit, HTML-basierte Dokumente zu visualisieren, sondern
auch echte Web-Applikationen zu realisieren und eine Benutzeroberfläche zur Verfügung zu stellen,
wie Anwender sie etwa von Office-Applikationen gewohnt sind.
Trennung von Oberfläche und Datensätzen
Die Arbeitsweise der in P2plus verfügbaren Seiten basiert auf einer strikten Trennung von HTML-Code
für Formulare und Tabellenvorlagen und den zur Arbeit notwendigen Datensätzen. Um eine solche
Trennung zu erzielen, besteht im Browser die Möglichkeit, unabhängig von der aktuell angezeigten
Seite im Hintergrund, Methoden der Web Services auf dem Webserver aufzurufen.
Zur Navigation in Datenbeständen wird eine datenfreie Maske im Browser geladen. Beim Blättern in
Datensätzen werden dann die Daten über einen geeigneten Web Service an den Client übertragen,
sodass eine wiederholte Übertragung der HTML-basierten Masken nicht notwendig ist.
Der Client hat dabei folgende Aufgaben:
Daten vom Server anfordern
Daten in das auf dem Client konfigurierte Datenformat (z. B. Zahlen, Datum) konvertieren
Daten in die Maske oder Tabelle einbauen
unterstützende und prüfende Aufgaben beim Ändern von Daten durchführen
Daten aus der Maske bei Bedarf wieder in ein XML-Format zusammenstellen und an den Server
zurückschicken, z. B. um Funktionalitäten aufzurufen
Seite 12 von 24
AP Automation + Productivity AG
Wiederverwendung von Komponenten
Zusätzliche Komponenten, die von verschiedenen Masken verwendet werden, sind in der Form von
HTML Behaviors in JavaScript realisiert. Während sich durch HTML Script Tags nur eine flache
Struktur von global verfügbaren Variablen und Funktionen realisieren lässt, können Behaviors gezielt
einzelne HTML-Objekte um Methoden und Eigenschaften ergänzen. Diese objektorientierte Erweiterung des HTML-Modells auf dem Client eignet sich besonders für die Entwicklung von umfangreichen Web-Applikationen, da Konflikte zwischen Include-Dateien vermieden werden und das mehrfache Verwenden eines Behaviors in einer Seite möglich ist. Der Browser ist in der Lage, diese Komponenten in seinem Cache zu speichern und so auch hier Ladezeiten und Netzwerklast zu minimieren.
Intelligenz auf dem Client
Die vom Client auszuführenden Aufgaben werden in der Programmiersprache JavaScript umgesetzt –
einer Skriptsprache, die für das Internet entwickelt wurde und auch unter dem Internet-Standard
ECMA Script normiert wurde. JavaScript wird zum Beispiel benötigt, um XML-basierte Daten im
Browser anzuzeigen und zu bearbeiten oder um das Funktionieren von Bedienelementen im Browser
sicherzustellen.
XML als Datenformat
Für die Übertragung von Daten an den Client wird in P2plus das XML-Format verwendet. Dadurch
ergeben sich die folgenden Vorteile:
XML verwendet den utf-8 bzw. Unicode-Standard und ermöglicht so die Übertragung und
Verarbeitung der Sonderzeichen aller weltweit verwendeten Sprachen.
XML ist kein binäres Format, sondern kann auch als Text dargestellt und übertragen werden,
sodass alle Betriebssystem- und Rechnerarchitekturen dieses Format verstehen.
XML ist ein von der Organisation W3C standardisiertes Programmiermodell und steht sowohl
im .NET Framework als auch in den Browsern zur Verfügung. Es bietet umfangreiche
standardisierte Funktionalität zur Suche, Sortierung und Transformation von Daten (XPath,
XSLT, DOM).
Die Verarbeitung und der Transport der Datentypen wie z. B. Datumsangaben oder Zahlen
erfolgt in der durch XML standardisierten Form, sodass die Server einheitlich arbeiten können.
Die Art der Darstellung der Daten im gewünschten Format kann vom Anwender dezentral auf
dem Client bestimmt werden.
Client Performance
Trotz der Architektur in mehreren Schichten ist die Anwendungsgeschwindigkeit auch von der
Leistungsfähigkeit des Clients abhängig.
Der Browser als Client-Plattform ist verantwortlich für
die Darstellung und den Austausch von Daten in Masken,
die Konvertierung von Daten in das Datenformat, das vom Anwender eingestellt wurde,
die Validierung von Eingabedaten und
die Übertragung von Daten vom und zum Webserver.
Durch die Trennung von HTML-Code für das Layout und Nutzdaten ist insbesondere bei umfangreichen Masken ein Arbeiten auch über weite Verbindungen (WAN) möglich.
Seite 13 von 24
AP Automation + Productivity AG
P2plus-Seiten benötigen in der Regel 30 bis 50 KByte HTML-Code. Die weiterhin notwendigen Bilder
und WebObjects, die im Cache des Clients gehalten werden, beanspruchen zusätzlich ca. 100 KByte.
Die einzelnen Datensätze haben dagegen nur eine Größe von 2 bis 6 KByte.
Die gemeinsame Übertragung von HTML-Code und von darin eingebetteten Daten ist somit nur für
sehr einfache Formulare geeignet. P2plus hingegen kann aufgrund der Trennung von Layout- und
Nutzdaten auch umfangreiche und komplexe Masken anbieten. Indem der Client die Daten separat
lädt, wird der Webserver entlastet, da er die HTML-Seiten nur einmal übertragen muss. Insbesondere
langsamere Leitungen werden dadurch weniger stark beansprucht.
Die Geschwindigkeit, mit der der Client die Daten darstellen kann, hängt von dessen Ressourcen wie
Prozessorleistung und Speicherausbau ab. Die benötigte CPU-Zeit wird hauptsächlich durch die
Ausführung von JavaScript und den Aufbau der HTML-Objekte im Browser benötigt.
Auf Basis dieser Struktur stellt P2plus höhere Ansprüche an die Leistungsfähigkeit des Client-Systems,
als sogenannte Thin Client-Lösungen. Dadurch ergeben sich jedoch vergleichsweise geringe
Anforderungen an die verwendeten Server, was sich insbesondere in Lastspitzen positiv auswirkt, wo
viele Benutzer parallel aktiv sind.
P2WebObjects – Standardfunktionen der P2plus-Oberfläche
Damit die P2plus-Seiten die geforderten Funktionen ausführen können, muss das Verhalten verschiedener HTML-Elemente gesteuert werden. Implementiert sind die dazu notwendigen Funktionen nicht
in den P2plus-Seiten selbst, sondern in eigenen Objekten, den P2WebObjects, die im Browser an die
P2plus-Seiten angebunden werden.
Die P2WebObjects regeln beispielsweise:
Layoutanpassungen bei Größenänderungen des Browserfensters: Wird eine sehr kleine
Darstellung des Browserfensters gewählt, regelt P2Layout die Anpassungen der Oberfläche an
die eingestellte Größe.
Die Bearbeitung von HTML-Seiten direkt im Browser: Mit P2Direct können P2plus-Seiten im
Browser durch editierbare Bausteine – WebParts – ergänzt und bearbeitet werden.
Grundfunktionen der Menüleiste: P2Menu regelt das Verhalten der Schaltflächen in der
Symbolleiste.
Darstellung und Handling von Datenbankdaten: P2Form regelt die Darstellung von Datensätzen
und überprüft Eingaben.
P2NavBar ermöglicht es, zwischen Datensätzen zu blättern, zu suchen, Datensätze anzulegen,
zu löschen und zu ändern. Die Funktionen von P2Navbar stehen dem Benutzer in der Symbolleiste zur Verfügung.
Mit den P2WebObjects sind Eigenschaften und Methoden definiert, die über die CSS-Datei an HTMLElemente angebunden sind. Im Gegensatz zu den anderen Möglichkeiten des Scriptings müssen die
Funktionen der P2WebObjects nicht explizit aufgerufen werden. Es ist in den P2WebObjects selbst
definiert, in welchen Situationen eine Funktion ausgeführt wird.
Ein weiterer Vorteil der P2WebObjects besteht darin, dass sie nicht mit jeder P2plus-Seite neu
geladen werden müssen, sondern von weiteren Seiten genutzt werden können. Wie bei der gesamten
clientseitigen Programmierung wird auch für die P2WebObjects JavaScript verwendet.
Seite 14 von 24
AP Automation + Productivity AG
P2Way - übersichtliche Navigation zwischen P2plus-Seiten
Zur Navigation zwischen den P2plus-Seiten steht dem Benutzer die Navigationsleiste P2Way zur
Verfügung. P2Way verwendet nur URLs in der Form von Hyperlinks, die auch auf anderen Wegen
Benutzern zur Verfügung gestellt werden können, wie z. B. durch das Verschicken per E-Mail. Es
besteht auch die Möglichkeit, die P2Way-Einträge direkt in die Favoriten (Bookmarks) zu übernehmen.
In P2plus wird der Zugriff auf die einzelnen Webseiten über die Dateizugriffsrechte geregelt.
Abhängig von diesen Zugriffsrechten werden Hyperlinks im P2Way nur angezeigt, wenn sie auf Seiten
verzweigen, die dem jeweiligen Client auch tatsächlich zugänglich sind. Die Dateizugriffsrechte
werden über die Access Control List (ACL) der Dateien gesteuert.
Da P2Way auf die Verwendung von URLs ausgerichtet ist, können auch Hyperlinks zu externen, nicht
zu P2plus gehörenden Seiten integriert werden.
Auch P2Way selbst wird über die Internet-Informationsdienste zum Client gesandt, sodass auch hier
der Weg, Client-Installationen zu vermeiden, nicht verlassen wird.
Datenübertragung über internationale Standards
Grundvoraussetzung für das Funktionieren des Internets sind einheitliche Standards, über die alle zu
übertragenden Informationen verschickt werden. Diese Standards sind in Übertragungsprotokollen
geregelt, die von jedem Web-Browser unterstützt werden.
Grundlegend ist das Netzwerk-Protokoll TCP/IP, das im internationalen Datenverkehr zur Datenübertragung eingesetzt wird, auch im Internet. TCP/IP regelt die Datenübertragung in einem Netzwerk. Es
verschickt die Daten in kleinen Datenpaketen und stellt sicher, dass die Pakete auch in der richtigen
Reihenfolge beim Empfänger ankommen.
Auf TCP/IP setzt das Hypertext Transfer Protokoll (HTTP) auf. HTTP ist ebenfalls ein internationaler
Standard und regelt die Übertragung von Daten zu einem Web-Browser. Es ist auch zur Datenübertragung in einem Intranet geeignet. Neben HTML-, ASP- und ASPX-Seiten können über dieses
Protokoll auch andere Dateien, wie zum Beispiel Word- oder PDF-Dokumente, übertragen werden.
Ein weiterer internationaler Standard, der auf dem Client eingesetzt wird, ist das Simple Object
Access Protokoll (SOAP). Dieses Protokoll ermöglicht die unabhängige Übertragung von Daten und
HTML-Seiten, sodass in eine bereits übertragene Seite die Daten separat geladen werden können.
Zum Übertragen großer Datenmengen, oder wenn keine ständige Online-Verbindung besteht, ist die
E-Mail der beste Weg. Bei diesem alternativen Weg werden Daten im XML-Format als Text einer
E-Mail vom Client zum Server übertragen und dort weiterverarbeitet.
P2 plus Webserver
Webserver
Die beiden Hauptaufgaben des Webservers sind die Montage der HTML-Seiten sowie die Bereitstellung der Web Services für den Client.
Diese Funktionalität wird über einen einzigen Port angeboten, womit dem Client alle weiteren serverseitigen Komponenten verborgen bleiben. Der Webserver ist damit die einzige Komponente, die vom
Client aus angesprochen werden muss. Insbesondere bei Installationen im global verfügbaren Internet
können alle weiteren Komponenten hinter diesem Server auf einem getrennten Netzwerk aufgebaut
und somit effizient vor dem direkten Zugriff geschützt werden.
Seite 15 von 24
AP Automation + Productivity AG
Daneben ist der Webserver nur für den Transport der Daten zwischen dem Client und den anderen
beiden Serverkomponenten zuständig. Zum Lesen von Datensätzen, insbesondere bei Tabellen mit
vielen Datensätzen, greift der Webserver über ADO.NET direkt auf den SQL Server zu, um einen hohen
Durchsatz zu erreichen. Der sehr detailliert steuerbare Web-Cache verhindert zudem das wiederholte
Erstellen gleicher Inhalte.
Alle Modifikationen an Daten sowie alle Transaktionen werden ausschließlich über den Applikationsserver ausgeführt.
Die Einbindung des Webservers in die ASP.NET-Laufzeitumgebung ermöglicht gegenüber der älteren
Implementierung in Form von interpretierten ASP-Seiten einen besser strukturierten Aufbau des
Webservers. Über ein spezifisches Framework können auf dem Webserver häufig angeforderte
Funktionalitäten in C# umgesetzt und als Klassen zur Verfügung gestellt werden.
Da die bereitgestellten Web Services dem SOAP-Standard entsprechen, können auch andere
Programme (z. B. Excel) die darin hinterlegten Methoden ansprechen. Alle Funktionalitäten der
Gesamtapplikation können über diese Schnittstellen angesteuert werden, und ein direkter Zugriff auf
den Datenbankserver ist nicht mehr notwendig. Mit Hilfe der Web Services ist es damit auch möglich,
Daten zur Verfügung zu stellen, die nicht in dieser Form in der Datenbank hinterlegt sind, sondern aus
dem Datenbestand heraus berechnet werden, wie z. B. den voraussichtlichen Lagerbestand eines
Artikels zu einem Termin in der Zukunft.
Da der Webserver ohne anwenderspezifische Zustandsinformationen (State Information) auskommt,
ist auch bei höheren Anwenderzahlen eine gute Skalierbarkeit gegeben.
Internet-Informationsdienste – dynamische Verarbeitung von
P2plus-Seiten
Auf dem Webserver werden die in Windows 2003 integrierten Internet-Informationsdienste (Internet
Information Services — IIS) eingesetzt. Diese Dienste ermöglichen die Publikation von Webs und webbasierenden Business-Applikationen. Die IIS interpretieren ASPX-Scripts, führen sie aus und übertragen die Seite an den Browser.
Webserver dienten im Internet zunächst nur dazu, eine Anfrage vom Browser entgegenzunehmen und
die geforderte Seite zu übertragen. Eine dynamische Veränderung der Seite war dabei nur im Browser
möglich. Bei webbasierenden Applikationen ist es jedoch notwendig, die Seiten dynamisch zu
verändern bzw. Inhalte zu ergänzen, bevor sie zum Client übertragen werden. Diese Möglichkeiten
ergeben sich durch den Einsatz der ASP.NET-Technologie über die IIS. Umgekehrt verarbeiten die IIS
auch die Informationen, die vom Client an den Webserver gesandt werden, um Aktionen auf dem
Applikationsserver anzustoßen.
P2plus nutzt die ASP.NET-Technologie zur situationsabhängigen Veränderung von Webseiten und zum
Ausführen serverseitiger Funktionen. Bevor eine P2plus-Seite zum Browser übertragen wird, führen
die IIS die darin enthaltenen ASPX-Script-Anweisungen aus und schreiben die angeforderten Datenbankinhalte als XML in die Seite. Im Browser werden reine HTML-Seiten angezeigt, die jedoch nicht
die Dateierweiterung .htm sondern .aspx erhalten. Der Skript-Code wird nicht zum Browser übertragen.
Die folgende Abbildung veranschaulicht den Vorgang der Montage von ASPX-Seiten durch die IIS.
Seite 16 von 24
AP Automation + Productivity AG
P2 plus Applikationsserver
Der Applikationsserver stellt die Komponenten bereit, die die Daten aus der Datenbank holen, verarbeiten und für den Client aufbereiten. Umgekehrt werden die am Client vorgenommenen Änderungen
von Komponenten dieser Schicht verarbeitet und die Speicherung in der Datenhaltungsschicht veranlasst. Alle Transaktionen werden ausschließlich vom Applikationsserver aus begonnen und beendet.
Die Anbindung des Applikationsservers an den Webserver wird anhand von Web Services realisiert, die
vom Applikationsserver bereitgestellt werden. Vor dem Anwendernetzwerk kann der Applikationsserver vollkommen verborgen und so ein direkter Zugriff vermieden werden.
Um seine Aufgaben strukturiert ausführen zu können, existiert im Applikationsserver ein P2plus
Business Framework, innerhalb dessen die eigentliche Business-Logik implementiert wird. Dieses
Framework übernimmt u. a. die Aufgaben der Kommunikation z. B. über Web Services und E-Mail
sowie der objektorientierten Bearbeitung relationaler Daten über eine auf der Datenbank aufsetzende
Objektschicht mit Factory-Klassen. Diese Basisfunktionalität ist in weiten Bereichen durch Parameter
steuerbar, sodass die Standardfunktionalitäten zu den Tabellen der Datenbank, wie z. B. Konsistenzbedingungen, leicht angepasst werden können.
XML-Technologien im Applikationsserver
Die Einbindung des Applikationsservers in das Gesamtsystem von P2plus erfolgt über die auf XML
basierenden Internet-Standards SOAP und WSDL. Damit stehen alle im Applikationsserver realisierten
Funktionalitäten auch über Web Services zur Verfügung.
Auf dieser Ebene befinden sich alle Einstiegspunkte in Transaktionen. Diejenigen Transaktionen, die
von außerhalb des Applikationsservers verwendet werden dürfen, werden dem Client über den Webserver zur Verfügung gestellt.
Seite 17 von 24
AP Automation + Productivity AG
Die folgende Abbildung stellt die Struktur des P2plus Applikationsservers dar.
Weitere Funktionalitäten des Applikationsservers sind u. a.:
HTTP 1.1 Server mit SSL-Verschlüsselung
SOAP 1.2 Implementierung
Thread-Pooling
Datenbank-Connection-Pooling
Transaktions-Handling mit Untertransaktionen und Timeouts
Mandantenfähigkeit
Debug-Ausgaben
Job-Verwaltung
Automatisierte Updates
XML-Export/Import
Event-Handling
Unterstützung mehrerer Datenbanken
P2plus Web Services – Kernfunktionen in P2plus
Die P2plus Web Services bilden die Schnittstelle des Applikationsservers, über die alle Transaktionen
der Business-Logik von P2plus aufgerufen werden. Die P2plus Web Services sind relativ kleine
Einheiten, die in objektorientierter Weise den Umgang mit Daten regeln und Verarbeitungsfunktionen
bereitstellen. Dabei werden Methoden und Eigenschaften, die allgemein gebraucht werden, nur
einmal implementiert und sind aufgrund der Web Services–Technologien von außen über SOAP
aufrufbar. Dadurch ist ein konsistenter Umgang mit Daten gewährleistet, denn in einem P2plus Web
Service müssen nur Methoden implementiert werden, die einen direkten Bezug zu den Daten haben
(Berechnungen, Abhängigkeiten). Methoden von allgemeiner Bedeutung werden dagegen nur einmal
implementiert und stehen durch Vererbung allen P2plus Web Services zur Verfügung.
Seite 18 von 24
AP Automation + Productivity AG
Diese Art der Programmierung ermöglicht eine vereinfachte Implementierung kundenspezifischer
Anpassungen, da neue Funktionen nur an einer Stelle eingefügt werden müssen. Zur Programmierung
der P2plus Web Services auf dem Applikationsserver wird Java eingesetzt. Java ist durch die objektorientierten Möglichkeiten und die Stabilität optimal geeignet, die Geschäftslogik abzubilden.
Der Applikationsserver bietet nach Packages gruppiert viele Web Services an, die jeweils mehrere
Methoden zu einem Business-Objekt zur Verfügung stellen. Diese Struktur wird anhand der P2plusBildschirmseite deutlich, die in der folgenden Abbildung dargestellt ist.
Die Funktionalität von Packages, Klassen und Methoden kann für einzelne Benutzer oder Benutzergruppen gesperrt oder freigegeben werden. Bei jedem Aufruf einer Methode des Applikationsservers
werden die für die Ausführung der Methode erforderlichen Rechte überprüft.
XML-basierte Konfiguration und Instrumentierung
Die Kernkomponenten des Applikationsservers enthalten viele grundsätzlich verfügbare Funktionen,
die für die einzelnen Business-Objekte verwendet werden können. Die genaue Steuerung in diesem
Bereich ist durch detaillierte Parametersätze, Regelwerke und Transformationen in XML-Technologie
realisiert. Dadurch ist es möglich, individuelle Anpassungen nicht durch die Änderung von
Programmen, sondern durch eine geänderte Instrumentierung zu erreichen. In Folgeversionen oder
Updates von P2plus können solche Anpassungen direkt übernommen werden.
P2plus Business Framework
Der innere Aufbau des P2plus Applikationsservers besteht aus einer mehrschichtigen Architektur, dem
P2plus Business Framework, das aus einer umfangreichen Klassenbibliothek zur komfortablen
Entwicklung von Business-Applikationen besteht. Diese leistungsfähige Basisfunktionalität und klar
vorgegebene Strukturen entlasten den Entwickler und erlauben ihm, sich auf seine eigentliche
Aufgabe, die Abbildung betriebswirtschaftlicher Vorgänge, zu konzentrieren.
Die integrierte Datenbank-Schnittstelle unterstützt u. a. Transaction Isolation und Multiple Server
Cursors. Ein integrierter HTTP 1.1-Server mit Thread Pooling erlaubt den Aufruf der in Web Services
umgesetzten Business-Logik über SOAP. Der HTTP-Server unterstützt das HTTPS-Protokoll für
gesicherte Verbindungen über SSL.
Seite 19 von 24
AP Automation + Productivity AG
Um die objektorientierte Business-Logik mit der relationalen Struktur einer SQL-Datenbank zu
verbinden, enthält P2plus Business Framework eine sogenannte Objektschicht. Diese auf Basisklassen
aufbauende Objektschicht trennt die Programmierung von der Datenhaltung. Dem Entwickler
ermöglicht diese Trennung, objektorientiert zu programmieren, obwohl relationale Datenbanken
verwendet werden. Für eine maximale Performance steht jedoch auch SQL direkt zur Verfügung.
Wesentlicher Bestandteil des P2plus Business Frameworks sind die Business-Objekte. Ein BusinessObjekt entspricht dabei einem Datensatz einer Tabelle. Für jede SQL-Tabelle generiert ein SourceGenerator automatisch mehrere Klassen sowie get- und set-Methoden für den typsicheren Zugriff auf
die Spalten der Tabelle. Zur Laufzeit werden die Business-Objekte auf der Basis des Factory Patterns
automatisch zur Verfügung gestellt. Über eine Identity Map ist gewährleistet, dass sich ein BusinessObjekt nur einmal im Speicher befindet, und sich Änderungen an diesem Objekt innerhalb einer
Transaktion somit immer auf dasselbe Objekt beziehen. Komplexe Datenbankabfragen (Queries)
können über Collections abgebildet werden.
In Form von Plugins wird umfangreiche Funktionalität zur Verfügung gestellt, die auch in kundenspezifischen Code direkt eingebunden werden kann.
Für den Datenaustausch mit anderen Applikationen, für die Kommunikation mit Clients und für die
Konfiguration verwendet P2plus Business Framework XML.
P2plus Business Framework unterstützt beliebig viele Mandanten bzw. Tochterfirmen. Tabellen
können dabei ganz oder teilweise, d. h. nur für definierte Spalten, mandantenspezifisch verwaltet
werden. Anwender können jederzeit zwischen verschiedenen Mandanten wechseln. Da Mandanten
und Tochterfirmen vom Framework verwaltet werden, entsteht für den Entwickler kein zusätzlicher
Programmieraufwand im Zusammenhang mit der Mandantenfähigkeit.
Die P2plus-Datenbank kann durch Partitionierung auf mehrere Datenbankserver verteilt werden.
P2plus Business Framework sorgt automatisch dafür, dass die Daten vom richtigen Server geholt
werden. Der in P2plus Business Framework integrierte Transaktionsmonitor überwacht das Ausführen
von Transaktionen, implementiert separate Timeouts für Schreib- und Lesezugriffe und erlaubt
verteilte Transaktionen und Untertransaktionen.
Die Performance der Objektschicht von P2plus Business Framework ist, verglichen mit ähnlichen
Lösungen, sehr hoch, da sich P2plus Business Framework, trotz Objektorientierung und Abstraktion,
eng an SQL anlehnt. Durch effizientes transaktionsbezogenes und transaktionsübergreifendes Caching
sowie durch Connection Pooling, das mehrfache Verwenden von Datenbankverbindungen, werden die
Datenbank-Ressourcen optimal genutzt. Auf den Datenbankserver, aber auch auf XML- und
Konfigurationsdateien, wird nur dann zugegriffen, wenn die Daten nicht bereits im Cache gespeichert
sind.
Für jedes Business-Objekt, also für jede Tabelle, können vielfältige Einstellungen vorgenommen
werden, die als Metadaten in XML-Konfigurationsdateien abgelegt werden. Dazu gehören z. B. die
Definition von Abhängigkeiten, das Durchführen von Integritätsprüfungen, die Behandlung von
Statusübergängen, das Auslösen von Triggern, das Setzen von Defaultwerten und das automatische
Aktualisieren von Objekten. P2plus Business Framework stellt komfortable Möglichkeiten der Ereignisbehandlung zur Verfügung. Ein Ereignis tritt z. B. ein, wenn ein Objekt verändert wird. Durch
Konfiguration kann festgelegt werden, wie auf das Ereignis reagiert werden soll. Möglich ist z. B. die
Protokollierung der Änderung, das Starten eines Workflows, das Versenden einer E-Mail oder der
Aufruf einer beliebigen anderen Funktionalität. Dabei können auch Filter verwendet werden. Das
Verhalten der Business-Objekte lässt sich somit weitgehend durch Konfiguration, d. h. ohne
Programmieraufwand, beeinflussen.
P2plus Business Framework kann auf einem physikalischen Rechner mehrfach installiert werden.
Greifen mehrere Applikationsserver auf dieselbe Datenbank zu, synchronisieren die Applikationsserver
ihre Datencaches automatisch.
Seite 20 von 24
AP Automation + Productivity AG
P2plus Business Framework stellt umfangreiche Debug-Möglichkeiten für eigenen oder mitgelieferten
Source-Code zur Verfügung. Bei Bedarf wird ein umfangreiches Logfile erzeugt und flexibel aufbereitet. Die SOAP-Kommunikation kann protokolliert werden. Wichtige Meldungen werden, wenn
gewünscht durch Kategorien gefiltert, in die Ereignisanzeige geschrieben werden.
P2plus Business Framework unterstützt Microsoft Active Directory und Microsoft Exchange. Der
Zugriff auf Active Directory erfolgt sehr komfortabel; Benutzernamen lassen sich über Active
Directory mit einem Alias versehen, Stammdaten können automatisch mit Active Directory
synchronisiert werden. Microsoft Exchange kann als Mailserver, Document Management System und
Workflow Engine eingesetzt werden.
Datenhaltung in P2 plus
In der Datenhaltungsschicht werden alle Daten gespeichert, die vom Applikationsserver benutzt und
verändert werden. Zu den Komponenten dieser Schicht gehören relationale Datenbanken, das Active
Directory, das Web Storage System von Exchange 2000/2003 Server und der Fileserver.
Der Datenbankserver entspricht dabei der Server-Schicht in der klassischen Client-Server-Architektur.
Auch in der n-tier-Architektur behält der Datenbankserver die Aufgabe, die betriebswirtschaftlichen
Daten zu verwalten.
SQL Server 2000 – Speicher für relationale Daten
P2plus verwendet SQL Server 2000 zur Speicherung relationaler Daten, also Daten, die in Tabellen
organisiert werden können. SQL Server 2000 speichert in diesen Datenbanktabellen die Daten und
ihre Beziehungen zueinander.
SQL Server 2000 kann auch große Datenmengen problemlos verwalten und ist in der Lage, viele
gleichzeitige Zugriffe zu verarbeiten. Durch diese Eigenschaft ist er für kleine Firmen mit wenigen
Arbeitsplätzen ebenso gut geeignet, wie für umfangreiche Installationen mit einem hohen Datendurchsatz.
Der Datenbestand kann mit SQL Server 2000 auch auf mehrere Datenbanken bzw. Rechner verteilt
werden. Die verschiedenen Datenbanktabellen werden dann in Partitionen zu logischen Einheiten
zusammengestellt. Auf diese Partitionen greift P2plus zu und stellt sie zu benutzerspezifischen
Umgebungen zusammen. Diese Datenbankarchitektur erlaubt eine gleichmäßige Auslastung der
Server, sodass auch in Hochlastsituationen ein schneller Datenzugriff sichergestellt ist.
Ein weiterer Bestandteil von SQL Server 2000 sind die Server Analysis Services. Mit Hilfe dieser
Dienste können Sie OLAP-Daten, d. h. Daten der analytischen Online-Verarbeitung, für Analysezwecke
organisieren und auswerten. Die Produktivdatenbank ermöglicht die Aufbereitung und Bereitstellung
der Daten in einem Data Warehouse etwa zum Einsatz in einem Management-Informationssystem.
Die OLAP-Auswertungen werden im Management-Informationssystem von P2plus genutzt.
Active Directory – Verwaltung von Benutzerdaten
Bei der Datenhaltung organisatorischer Objekte (Personen, Gruppen, Adressen) muss für ein Unternehmen sichergestellt werden, dass diese für viele Applikationen sehr wichtigen Informationen nicht
wiederholt gespeichert und gepflegt werden müssen. Um die Benutzerdaten zentral zu verwalten, ist
die Windows 2003-Komponente Active Directory (AD) optimal geeignet.
Seite 21 von 24
AP Automation + Productivity AG
Die Daten werden im AD nicht in Tabellen abgelegt, sondern in hierarchischen Strukturen voneinander
abhängiger Objekte. Zu diesen Objekten werden verschiedene Eigenschaften definiert. Welche
Eigenschaften für welche Objekte definiert werden können, wird in einem Schema festgelegt. Die
Daten des AD können von allen im Netzwerk eingebundenen Komponenten genutzt werden.
P2plus verwendet das AD zum Beispiel, um Namen, Adressen und Identifikationen zu verwalten, auf die
dann auch andere Software-Komponenten (IIS, SQL Server) zugreifen können (integrierte Sicherheit).
Zur Festlegung von Zugriffsrechten auf Dateien und Ordner werden im AD hinterlegte Benutzer und
Gruppen herangezogen. Dabei ist es möglich, sich bei der Bildung von Gruppen an die Unternehmensstruktur anzulehnen, und so z. B. einer ganzen Abteilung Rechte zuzuweisen, die auf untergeordneter
Gruppen- und Benutzerebene eingeschränkt werden können.
Um einen effizienten Zugriff auf die Benutzerdaten aus P2plus heraus zu ermöglichen und um die in
P2plus zusätzlich benötigten Merkmale dieser Daten zu speichern, werden sie auch in der P2plusDatenbank gehalten. Die Daten der P2plus-Datenbank und des AD werden über einen Synchronisationsmechanismus miteinander abgeglichen, sodass eine Datenänderung immer auf das jeweils
andere System übertragen wird. Damit verringert sich der administrative Aufwand zur Datenpflege
erheblich, da z. B. auch Exchange/Outlook auf diese synchronisierten Daten zugreift.
File Server – Ablage von Dokumenten und Dateien
Der Fileserver bietet eine Ablagemöglichkeit für Dateien und Dokumente. Damit eignet er sich z. B. als
Speicher für P2plus-Seiten in einer angepassten Webstruktur. Der Zugriff auf die einzelnen Webseiten
wird über Berechtigungen gesteuert, die festlegen, wer in welcher Form auf eine Datei zugreifen darf.
Die Berechtigungen werden den im Active Directory verwalteten Benutzern und Gruppen zugewiesen.
Die Internet-Informationsdienste überprüfen diese Berechtigungen und bearbeiten eingehende
Anfragen entsprechend.
Web Storage System – Informationsspeicher von Exchange
Das Web Storage System stellt sowohl den Postfachspeicher für Benutzer als auch einen Speicher für
öffentliche Ordner dar. In diesen öffentlichen Ordnern können Dateien und Dokumente abgelegt
werden, die in einem Workflow überwacht werden sollen oder einem Dokumentenmanagement
unterliegen.
Mit dem Web Storage System können Dokumente in einer definierten Struktur im ursprünglichen
Dateiformat verwaltet werden. In vielen Beziehungen können die im Web Storage System
gespeicherten Dokumente aber auch ähnlich wie Datensätze einer Datenbank behandelt werden. Das
betrifft vor allem die Möglichkeiten des Zugriffs und der Abfrage. Durch diese Gemeinsamkeiten
zwischen einer relationalen Datenbank und dem Web Storage System können Datensätze und
dazugehörige Dokumente durch eine gemeinsame Anfrage aufgerufen werden.
Kommunikation mit der Datenhaltungsschicht
Zur Kommunikation mit der Datenhaltungsschicht werden die standardisierten Wege genutzt, die für
den Zugriff auf die verschiedenen Datenquellen geeignet sind.
Auf Datenbankinhalte und Dokumente wird über ActiveX Data Objects (ADO.NET) zugegriffen.
ADO.NET ist die Definition einer Schnittstelle, die den Zugriff auf OLE-Datenbanken oder ODBCDatenquellen zulässt. ADO.NET stellt mit seinen Objekten Eigenschaften und Methoden zur
Verfügung, die die Bearbeitung der Datenbankdaten ermöglichen. So wird z. B. ADO.NET für lesende
Seite 22 von 24
AP Automation + Productivity AG
Datenbankzugriffe des Webservers genutzt, um Datenbankdaten direkt auf P2plus-Seiten zur
Tabellendarstellung zu übertragen.
Neben ADO.NET werden auch die Protokolle LDAP und SMTP zur Kommunikation mit den
Komponenten der Datenhaltungsschicht verwendet. Das Lightweight Directory Access Protocol
(LDAP) definiert den Zugriff auf Verzeichnisdienste. In P2plus wird LDAP zur Kommunikation mit dem
Active Directory eingesetzt. Sowohl die Interaktion mit dem Client als auch die Kommunikation der
Domänencontroller untereinander basiert auf diesem Protokoll. LDAP setzt direkt auf TCP auf, sodass
eine gute Performance sichergestellt ist. Über LDAP kann das Active Directory mit beliebigen
Applikationen oder Verzeichnissen Informationen austauschen, sofern diese LDAP unterstützen.
Das Simple Mail Transfer Protocol (SMTP) ist das Standard-Übertragungsprotokoll für den
Austausch von E-Mails im Internet. SMTP legt fest, wie zwei Mail-Systeme interagieren und wie die
Steuermeldungen zu diesem Zweck aussehen müssen.
Skalierbarkeit und Anpassung von P2 plus
Skalierbarkeit
Ein wichtiger Aspekt bei der Installation eines neuen Systems ist die Skalierbarkeit in Abhängigkeit
von den Gegebenheiten und Erfordernissen des Unternehmens. Dabei ist die Serverlandschaft genauso
zu berücksichtigen wie die unterschiedliche Auslastung der einzelnen Komponenten.
Alle Komponenten von P2plus sind für die Ausführung mehrerer gleichzeitiger Anfragen ausgelegt
und damit skalierbar. So kann eine hohe Zahl an Client-Verbindungen pro Server abgearbeitet werden,
weil auf einer Maschine mehrere Prozesse parallel laufen können.
Durch die Aufteilung der Funktionalitäten von P2plus auf die einzelnen Schichten und Komponenten
ist es sowohl möglich, alle Komponenten auf einem Rechner zu installieren, als auch die Last auf
mehrere Rechner zu verteilen. So können zum Beispiel die P2plus Web Services und die InternetInformationsdienste auf verschiedenen Rechnern installiert sein, wenn beide in einer gemeinsamen
Umgebung zusammengefasst werden.
Einzelne Serverkomponenten können bei Bedarf auch über mehrere Rechner verteilt betrieben
werden. Dies gilt sowohl für den Webserver als auch für den Fileserver und den SQL Server. Wenn sie
als Exchange Server den Enterprise Server einsetzen, so ist auch hier ein Betrieb in einer verteilten
Konfiguration über mehrere Rechner möglich.
Alle Serverkomponenten von P2plus basieren auf Windows 2000/2003 Server. Da dieses Betriebssystem bereits hervorragend für die Skalierung mit zunehmender Prozessorzahl ausgelegt ist, liefert es
die Grundlage, auf der für fast alle Leistungsanforderungen eine optimale und performante
Infrastruktur geschaffen werden kann.
Anpassung der Software
Bei der Entwicklung von P2plus spielt die Möglichkeit, die Software den spezifischen Gegebenheiten
des Kunden anpassen zu können, eine entscheidende Rolle. Auch der Kunde selbst soll Anpassungen
vornehmen können. Dazu wurden Oberflächenwerkzeuge entwickelt, mit denen Anpassungen der
P2plus–Seiten direkt im Browser und ohne zusätzliche, komplizierte Werkzeuge möglich sind. Damit
können die verschiedenen Bausteine, aus denen sich die P2plus–Oberfläche zusammensetzt, auf
einfache Weise neu angeordnet und Inhalte ausgetauscht werden. Die Möglichkeiten erstrecken sich
Seite 23 von 24
AP Automation + Productivity AG
vom Einfügen einfacher Textbereiche über die Implementierung komplexer HTML-Elemente bis zum
Einfügen von Merkmalen aus Datenbanktabellen.
Veränderungen in der Programmierung und in komplexeren HTML-Masken hingegen erfordern
professionelle Entwicklungswerkzeuge. Diese stehen mit Visual Studio .NET zur Verfügung und
ermöglichen Anpassungen auf den verschiedenen Ebenen. Mit Auslieferung von P2plus wird dem
Kunden optional der Source Code der Applikation zur Verfügung gestellt, sodass die durch spezifische
Anforderungen erforderlichen Änderungen direkt im Code umgesetzt werden können.
Die AP Automation + Productivity AG stellt ihren Kunden eine umfangreiche technische Dokumentation und ein breites Schulungsangebot zur Verfügung, das sie in die Lage versetzt, weitreichende
Anpassungen selbst vorzunehmen.
Um eine optimale Betreuung der individualisierten Installationen der Kunden gewährleisten zu
können, werden für P2plus über virtuelle private Netzwerke (VPN) oder ISDN Fernwartungszugänge zu
den Netzwerken der Kunden eingerichtet. Ein solcher Zugang ermöglicht es dem Support-Mitarbeiter,
sich direkt mit dem Netzwerk eines Kunden zu verbinden, um ihn z. B bei Wartungsaufgaben, beim
Durchführen spezifischer Anpassungen, beim Aktualisieren angepasster Installationen oder bei
Problemdiagnosen zu unterstützen.
Seite 24 von 24
Herunterladen