OneSense Schriftzug

Die OneSense Database 2 ist ein Werkzeug, mit dem auf einfache Weise sehr individuelle und komplexe Web-Geschäftsanwendungen erschaffen und erweitert werden können.

Das verschafft unseren Entwicklungspartnern eine Möglichkeit, maßgeschneiderte Enterprise-Software erstaunlich schnell, einfach und damit preiswert zu erschaffen.

OneSense ist eine browserbasierte, vollständig in Java programmierte Plattform zur Entwicklung von datenbankgestützten Unternehmensanwendungen. Sie wurde von der OneSense Solutions GmbH mit Sitz in Leipzig entwickelt. Als Architektur wird lediglich Tomcat oder ein anderer JEE Web Container benötigt, der die Servlet-Spezifikation 2.4 oder neuer erfüllt.

Für seine Anwender-Oberfläche generiert OneSense reines HTML; es werden keine Browser-Plugins (Flash, ActiveX oder Applets) benötigt. Für die Darstellung wird lediglich ein handelsüblicher Browser benötigt. Hierzu zählen zum Beispiel der MS Internet Explorer, Firefox und Chrome.

Die technische Konzeption von OneSense

Auf der technisch untersten Ebene setzt OneSense auf einer relationalen Datenbank auf. Die für die Entwicklung zu implementierende OneSense-Grundstruktur ist mit allen gängigen relationalen Datenbanksystemen kompatibel. Diese unterste Implementierungsebene enthält jedoch noch nicht das Datenmodell und auch nicht die von der Anwendungssoftware gehaltenen Daten. Stattdessen wird auf der physikalischen Datenhaltungsebene lediglich ein umfangreiches Set von Datendesign- und Datenmanipulationsfunktionen vorgehalten, mittels derer im Zuge einer Anwendungsentwicklung die Strukturdaten der konkreten Anwendung gespeichert werden. Am Ende verwaltet der konkrete Datenbankserver auch die konkreten Anwendungsdaten, dies jedoch nach den spezifischen Design- und manipulationsregeln, die auf der untersten Ebene für die konkrete Anwendung entwickelt wurden.

OneSense ist somit eine Datenbank innerhalb einer Datenbankumgebung, also eine Datenbank zweiter Ordnung. Sowohl die Entwickler von OneSense-Anwendungen als auch die Endkunden sehen von dieser untersten Ebene, also beispielsweise einem Datenbankserver von SAP® , Microsoft®, Oracle® oder einem MySQL-Server, gar nichts. Sie sehen und arbeiten mit dem Strukturdesigner von OneSense. Damit stehen dem Entwickler von OneSense-Applikationen einige sehr spezifische Möglichkeiten zur Verfügung, die von keinem der üblichen Datenbankserver nativ gestellt werden.

Der strukturelle Ort von OneSense-Anwendung in der Unternehmens-IT-Landschaft

Die Anwender-Zielgruppe von OneSense sind größere Unternehmen der Privatwirtschaft, staatliche Behörden und Institutionen sowie weitere größere kollektive Akteure, z.B. Gewerkschaften, Parteien, NGO's und ähnliche Institutionen.

Was unterscheidet OneSense beispielsweise von cloudbasierten Anwendungen in Microsoft Dynamics® oder SalesForce®?

Kein anderer Anbieter von cloudbasierter Unternehmenssoftware außer OneSense arbeitet mit dem oben geschilderten abstraction layer. Keines dieser Systeme ist folglich eine Datenbank zweiter Ordnung.  Vielmehr bieten alle diese bekannten Systeme eine vordefinierte Grundstruktur (Tabellen und ihre Relationen, Felddefintionen, Datenmanipulationsfunktionen etc.), die sich in gewissem Umfange zwar erweitern und konfigurieren lässt. In vieler Hinsicht trifft diese Strukturdefinition aber auch Vorentscheidungen, die bei der späteren Anpassung an die konkreten und meist sehr spezifischen Kundenwünsche schnell zur Fessel werden können.

Zwei Beispiele:

  • Die besagte Grundstruktur hat in der Regel einen Anwendungschwerpunkt, z.B. die Vertriebsabteilung eines Unternehmens oder dessenAbwicklung von Serviceleistungen. Die großen Anbieter solcher Systeme konzentrieren sich dabei auf jene mittleren Anwendungsbereiche, die am wahrscheinlichsten in größerer Zahl Interesse an der betreffenden Software haben. Leider müssen sich alle Interessenten, die von dieser Grundstruktur leicht oder sogar stark abweichende Funktionsvorstellungen haben, der Software anpassen, was häufig sehr umständlich oder sogar unmöglich sein kann. Das ist eigentlich genau das Gegenteil, was gute Software leisten soll: Sie soll sich den Betriebsabläufen des Anwenders anpassen.
  • So gibt es beispielsweise in keinem der Systeme der weltweit großen Anbieter die Möglichkeit, eine gemeinsame, unterste Ebene der natürlichen und juristischen Personen zu erzeugen, die eine Mehrfachqualifikation der dort gehaltenen Entitäten z.B. als Kunden und als Lieferanten erlauben. Vielmehr werden beispielsweise Kunden und Lieferanten in basal verschiedenen Tabellen registriert. Dies hat regelmäßig die Doppelung solcher Entitäten zur Folge, und nicht nur das: Weil man in solchen Fällen auf der Kundenebene nicht sehen kann, dass dieser Kunde gleichzeitig Lieferant ist, lassen sich wichtige Konsequenzen aus dieser Doppelfunktion entweder nur sehr umständlich oder gar nicht in der Anwendung abbilden.

Infolge der oben beschriebenen Abstraktionsebene gibt es diese Beschränkungen in OneSense nicht. Der Anwendungsentwicklung kann hier vollkommen frei - entsprechend den Betriebabläufen des Kunden - das beste Datenmodell für den konkreten Fall entwerfen, explizit auch mit freien und mit beliebigen Zusatzmerkmalen ausgestaltbaren n:n-Beziehungen zwischen den geschaffenen Entitäten - ein notorisch schwieriges Problem bei den herkömmlichen Anbietern. Das Datenmodell der Anwendung lässt sich jederzeitig umfassend ändern und zu erweitern. Dies kann sogar geschehen, während gleichzeitig eine beliebige Zahl von Usern produktiv im System arbeitet. Diese Flexibilität werden Ihre Kunden sehr schnell schätzen lernen, wenn sich im Laufe der Anwendung Änderungen der Betriebsabläufe und damit auch entsprechende Veränderungen im Datenmodell ergeben.

Damit aber noch nicht genug. OneSense bietet mehr.

Schwerpunkt: Ereignisorientierung

OneSense bietet nativ einige spezielle Funktionen an, die bei den anderen Anbietern cloudbasierter Unternehmensanwendungen vollkommen unbekannt sind. Dazu gehört insbesondere die Ereignisorientierung aller in OneSense gehaltenen Daten im Gegensatz zur Zustandsorientierung in herkömmlichen Systemen. Normale Datenbanksysteme nehmen Daten in möglichst strukturierter Form als statische Zustandsinformation auf: Kunde X hat zum Zeitpunkt Y das Produkt Z bestellt. Das ist sicherlich wichtig und kann von OneSense selbstverständich auch so abgebildet werden, wenn der Entwicklung die konkrete Anwendung so einrichtet. In dieser zustandsbezogenen Welt lassen sich aber eher ereignishaft strukturierte Daten nur schwer unterbringen. Beispielsweise laufen Verträge oft über unterschiedliche Leistungsphasen; Produkte wechseln angebotsabhängig ständig ihren Preis; Gremienposten werden nacheinander von verschiedenen Personen besetzt; Planungs- und Genehmigungsprozesse wechseln ständig ihren Status und erfordern entsprechend unterschiedliche Folgemaßnahmen.

Eine derartige Dynamik finden wir, wenn wir uns nicht von den starren Vorgaben bestehender Softwareangebote vorschnell den Blick verengen lassen, überall und ständig. In normalen Datenbanksystemen lässt sich eine solche Dynamik aber nur recht umständlich, z.B. mittels Datumsfeldern und entsprechend zahlreichen weiteren Qualifikatoren der jeweiligen Entität abbilden. OneSense dagegen ist von vornherein mit Designfunktionen ausgestattet, wo eine solche Datendynamik der Normalfall ist. Dies bedeutet, dass der Anwender bei jeder erstellten Entität auch zumindest den Zeitpunkt ihres Wirksamkeitsbeginns im allgemeinen Datenzusammenhang eingibt. Verändert sich an dieser Entität im Laufe ihres life cycle etwas, so wird nicht etwas ein neuer Datensatz mit entsprechendem Verweis per Primärschlüssel plus Datumsangabe etc. auf die Basis-Entität erzeugt, sondern für die ursprüngliche Entität lediglich diese Veränderung notiert, ebenfalls ab einem bestimmten Zeitpunkt. Auf diese Weise entsteht eine "Geschichte" einer jeden Entität, denn jeder einmal notierte Zustand plus allen Veränderungen bleibt so lange erhalten, wie das jeweilige Ereignis oder die gesamte Entität nicht gelöscht werden.

Damit können nicht nur Entwicklungsstränge einzelner Entitäten sehr einfach und nahe unserer alltäglichen Intuition im Umgang mit der Wirklichkeit aufgezeichnet werden, sondern auch ganze Beziehungsnetze vieler Entitäten in ihrer zeitlichen Dynmik sehr transparent dargestellt werden. Indem man die verknüpften Zustände mehrerer Entitäten zu verschiedenen Zeitpunkten vor sich ablaufen lässt, kann man buchstäblich eine Zeitreise beispielsweise durch Entwicklungsprojekte, ganz Institionen oder große Beteiligungsnetze machen.

Welche weiteren mächtigen Möglichkeiten aus dieser grundlegend neuen Konzeption der Datenhaltung ergeben, erklären wir Ihnen gerne im persönlichen Gespräch. Lesen Sie hier, für wen OneSense die ideale Anwendungsplattform ist.