Die Applikationsplattform appNG ist Framework und Applikationsserver zugleichSo entwickelt man heute

Baugerüst und Fundament zugleich: Die von aiticon entwickelte Applikationsplattform appNG ist gleichzeitig ein Framework zur schnellen Entwicklung von Web-Anwendungen sowie der Applikationsserver, in dem die Anwendungen ausgeführt werden.

Viele in Web-Anwendungen häufig benötigte Funktionalitäten hält appNG "out of the box" bereit - sie müssen nicht individuell entwickelt werden. Durch den modularen Aufbau und die glasklare Schichtentrennung kann diese einzigartige "Platform as a Service" (PaaS) zum Beispiel auch als Back-End-Dienst für Smartphone-Apps oder beliebige andere Anwendungen genutzt werden.

Effizientere Unternehmen

Durch das Aggregieren von Informationen und Prozessen sowie die Integration von Applikationen auf einer einzigen Plattform hilft appNG Unternehmen, ihr Wissen wirksam einzusetzen und ihre Prozesse schlanker zu gestalten - kurz, effizienter zu werden.

Für den Benutzer bergen die meisten Programme oder Applikationen zur Unterstützung der Arbeitsabläufe in Unternehmen ein großes Problem: Sie sind nicht sinnvoll miteinander verbunden. Jedes Programm hat eine eigene Oberfläche, der Nutzer muss sich jeweils separat anmelden, es gibt keine Möglichkeit, alle Anwendungen gleichzeitig zu durchsuchen, schlecht gepflegte Information und Duplikate haben sich in zahlreichen Content Silos angesammelt, Wichtiges ist in einzelnen Word- oder Excel-Dateien gespeichert.

Mobile Darstellung

Außerdem bieten nach wie vor die wenigsten Unternehmens-Applikationen die Möglichkeit, auf mobilen Geräten dargestellt zu werden - und das bei der ständig wachsenden Mobilität der Mitarbeiter. Um auch nur den Betrieb herkömmlicher Applikationen aufrecht zu erhalten, sind häufig Spezialisten gefordert; Anwendungen zu installieren und zu aktualisieren ist extrem aufwändig; daher sind viele Unternehmen nicht in der Lage, ihre Anwendungen auf dem neuesten Stand zu halten.

Ziel: Agilität

In der Neu- oder Weiterentwicklung von Individualsoftware müssen oft mit viel Aufwand die Bedürfnisse von Anwendern und Entwicklern in Einklang gebracht werden - sonst wird unter Umständen am eigentlichen Ziel vorbei entwickelt, oder aber der Prozess dauert so lange, dass sich das eigentliche Ziel inzwischen verschoben hat.

Viele Unternehmen versuchen nun, dem Chaos in ihrer IT Herr zu werden, indem sie Mitarbeiter schulen, unter Zwang eine einzige Applikation benutzen, auch wenn sie für so manche Zwecke nicht optimal ist; indem sie mit viel Aufwand separate Programme integrieren oder das Applikationsmanagement outsourcen.

Web-Applikation neu gedacht

Im Laufe der letzten zehn Jahre haben sich Distribution, Einsatz und Installation von Web-Anwendungen nicht nennenswert verändert. Diesen Prozess zu automatisieren ist heute grundsätzlich möglich, verlangt aber hohen Aufwand innerhalb der IT-Abteilung. Hier setzt appNG an - und hebt den gemeinsamen Nenner der Web-Applikationen auf das nächst höhere Level. 

Generische Darstellung

Der zentrale technische Gedanke hinter appNG ist, dass aufgrund der klaren Schichtentrennung die Entwicklung der Geschäftslogik unabhängig von der Darstellung erfolgen kann. Es stellt View-Templates bereit, die für alle Anwendungen eine einheitliche Darstellung vorgeben. Bei Bedarf können einzelne Anwendungen für komplexere Darstellungen die bestehenden Templates überschreiben oder ergänzen.

Daten werden darstellungsneutral gespeichert und können in verschiedenen Formaten (z.B. HTML, PDF, XML, JSON) und/oder in unterschiedlichen Repräsentationen (z.B. HTML Variante 1, HTML Variante 2, PDF Variante 1, PDF Variante 2) ausgegeben werden. Ein integrierter Debug-Modus sowie ein umfangreiches Logging unterstützen den Entwickler.

Einfache Administration

In einer appNG-Instanz können beliebig viele Anwendungen laufen. Diese können wiederum nutzungsabhängig in Sites gebündelt werden. Es muss demnach nur eine appNG Instanz administriert werden. Bei Bedarf kann ein appNG-Cluster aufgebaut werden. Neue Anwendungen und Updates können über eine einheitliche Oberfläche in nur wenigen Schritten bereitgestellt werden; es müssen dazu weder Textdateien editiert noch der Applikationsserver neu gestartet werden.

Anwendungen und Sites verfügen über ein sehr umfangreiches, granulares Gruppen-, Rollen- und Berechtigungskonzept, was die Berechtigungsvergabe einfach und zugleich leistungsfähig macht. appNG bietet verschiedene Möglichkeiten zur Benutzerauthentifizierung an: Formular-, NTLM- und Digest-basierte Authentifizierung sowie SAP Logon Ticket Authentifizierung. Weitere Authentifizierungsmechanismen können individuell und bedarfsgerecht implementiert werden.

In einer appNG-Instanz (Platform) können beliebig viele Sites laufen. Einer Site können wiederum beliebig viele Anwendungen zugeordnet werden. Diese Anwendungen werden zentral bereitgestellt und dann nur noch den entsprechenden Sites zugeordnet. Hierbei kann eine Anwendung eine Site-spezifische Konfiguration erhalten und kann Daten selbstverständlich auch pro Site speichern. Einzelne Sites sind demnach voneinander völlig unabhängig. Innerhalb einer Site können Anwendungen jedoch gegenseitig aufeinander zugreifen. Ferner ist es möglich, mehreren Sites den Zugriff auf die in einer anderen Site laufende Anwendung zu gewähren.

Das Quell-XML beschreibt den Aufbau der Anwendung bzw. wie die einzelnen, durch die Geschäftslogik bereitgestellten, Komponenten miteinander „verdrahtet“ sind. Im Wesentlichen implementiert die Geschäftslogik zwei Kernkomponenten von appNG: Datasources und Actions. Eine Datasource (Datenquelle) stellt Daten beliebiger Herkunft in standardisierter Form bereit. Die Daten können z.B. aus einer Datenbank, aus dem Dateisystem, einer XML-Datei oder von einem Webservice stammen.

Klare Gliederung

Die Daten werden nicht verändert, sondern nur ausgegeben (read). Eine Action verändert Daten. Actions können demnach Daten erzeugen (create), aktualisieren (update) oder löschen (delete). Actions können auch andere Vorgänge auslösen, z.B. einen Daten-Import starten oder die durch den Benutzer manuell geänderte Sortierung von Datensätzen speichern. Actions können zu Events gegliedert werden. Weitere Komponenten, die durch die Geschäftslogik implementiert werden können, sind Webservices sowie die Suchfunktion innerhalb einer Anwendung.

Java-Geschäftslogik und Quell-XML

Der Aufbau einer Anwendung wird wie bereits erwähnt durch das Quell-XML bestimmt. Das bedeutet, dass der Aufbau einer Anwendung auch einzig und allein durch Modifikation des Quell-XMLs verändert werden kann, sofern sich die dahinterstehende Geschäftslogik nicht verändert. Die Entwicklung der Geschäftslogik (Java) und des Quell-XMLs kann demnach getrennt voneinander und auch durch unterschiedliche Personen erfolgen.

Auf Basis des Quell-XMLs wird die Geschäftslogik ausgeführt. Hieraus resultiert das Ziel-XML, welches per XSLT in das Zielformat (z.B. HTML) transformiert wird.Die eigentliche Transformation führt appNG auf Basis des gewählten Templates durch. Eine Anwendung kann für komplexere Darstellungen, die nicht in dem Template enthalten sind oder die von der durch das Template vorgegebenen Darstellung abweichen sollen, bestehende Templates überschreiben.

Warum appNG?

Welche konkreten Vorteile bringt das für Ihr Unternehmen? Ihr Team arbeitet fortan nur noch mit einer einheitlich im Corporate Design Ihres Unternehmens gestalteten Benutzeroberfläche, muss also nur noch ein Nutzungskonzept erlernen. In diesem Browserfenster - die Applikation ist web-basiert - meldet sich jeder Mitarbeiter genau einmal an und erhält dann genau die Informationen aus allen integrierten Systemen, die für seine Abteilung und Position vorgesehen sind.

Stichwortsuche

Eine einfache Stichwortsuche beschleunigt die Suche nach bestimmten Daten und Dokumenten. Egal ob am PC, Tablet, Smartphone oder innerhalb einer anderen Anwendung: mit appNG kann hier wie dort derselbe Inhalt dargestellt werden. Bei Bedarf können mit geringem Aufwand neue Anwendungen hinzugefügt oder bestehende Anwendungen aktualisiert werden - auch mehrfach täglich statt nur einmal im Quartal. Auch der Unterhalt der Systeme wird deutlich einfacher: In einem Anwendungsverzeichnis können die benötigten Applikationen auch von nicht-technischen Mitarbeitern ausgewählt, installiert und aktualisiert werden.

Per definition agil

Der Weg des Unternehmens zu einer solchen Lösung ist dank den Werkzeugen der agilen Entwicklung überraschend kurz. Auf den Anforderungen der Nutzer basierend erstellen unsere technisch versierten Spezialisten einen Protoypen - zunächst noch ohne Programmieraufwand (Stichwort: Rapid Prototyping). Anhand dieses Prototyps, der bereits wie jede andere Anwendung auch auf der appNG-Plattform läuft, erarbeiten wir genau, welche Funktionalitäten von welcher Abteilung für welchen Arbeitsschritt benötigt werden.

Rapid Prototyping

Schließlich wird aus dem Prototyp Schritt für Schritt die voll funktionsfähige Applikation. Zahlreiche häufig benötigte Funktionalitäten wie eine Benutzeroberfläche mit Unterstützung für verschiedene Sprachen, Authentifizierung und Autorisierung, Navigation oder Suchfunktion stehen in appNG schon bereit und können mit geringem Aufwand verwendet werden.

Auch selbst zu betreiben

Natürlich gibt es auf dem Gebiet auch andere Anbieter. appNG hebt sich aber in einigen Punkten entscheidend vom Wettbewerb ab. Bieten die meisten anderen Hersteller nur "gehostete" Lösungen, kann appNG sowohl als Service bezogen als auch vom Kunden selbst betrieben werden. Das eröffnet dem Nutzer die Möglichkeit, private "Clouds" auf Basis von appNG für sensible Daten in ihren eigenen Rechenzentren zu etablieren.

Individuelle Oberfläche

Ein unserer Ansicht nach zentraler Nachteil anderer Lösungen: Sie bieten meist keine individuelle Benutzeroberfläche an. appNG erlaubt dagegen eine einheitliche Optik der Benutzeroberfläche und damit höhrer Benutzerfreundlichkeit, sowie einfachen Zugang auf verschiedenen Endgeräten.

Durch Rapid Prototyping und hohe Code-Qualität aufgrund klarer Trennung der Aufgabenbereiche (Separation of Concerns) verkürzen sich Entwicklungsdauer und Time-to-Market. Zudem bietet appNG tiefere Integrationen wie z.B. eine Volltextsuche über alle Anwendungen hinweg als andere PaaS-Dienste an.

Intuitive Anwedung

appNG ist betont intuitiv in der Anwendung: Applikationen werden über ein Anwendungsverzeichnis zur Verfügung gestellt, installiert und aktualisiert - ganz nach dem KISS-Prinzip: "Keep it simple, stupid!

Sie sind interessiert? Bitte melden Sie sich!

Tweet

@aiticon

Besuchen Sie uns

Frankfurt