Codeless Business Application Technology (CBAT)

CBAT (Codeless Business Application Technology) ist ein Softwareansatz, der Managern und Fachkräften gestattet, Anwendungen schnell und gezielt auf die Bedürfnisse ihres Unternehmens zuzuschneiden – ohne umfangreiche Softwarekenntnisse oder teure Consultants.

Dabei geht es keineswegs nur um die Bereitstellung neuer Optionen innerhalb von bestehenden Anwendungen. Eine gute CBAT-Anwendung ist mehrschichtig. Unternehmensspezifische Funktionen sind das Kernstück, welche sich je nach Geschäftsbereich  sinnvoll anpassen lassen. Darüber hinaus sollten auch tiefgreifender, spezifischere Anpassungen und Integrationen möglich sein, die von entsprechend geschulten Personen durchführbar sind.
Dies bedeutet nicht, dass CBAT-Anwendungen keinen Raum für Consultants oder lokale Weiterentwicklungen bieten. Im Idealfall könnten Consultants für besonders anspruchsvolle Anpassungen ein-gesetzt werden, während für spezialisierte Integrationen Schnittstellen (APIs) bereitstehen. Allerdings sollte dies nicht der Ausgangspunkt für eine CBAT-Anwendung sein. Auch wenn für die Implementierung erweiterter Funktionen auf externe Ressourcen zurückgegriffen wird, sollten die Mitarbeiter vor Ort in der Lage sein, kleinere Änderungen oder Anpassungen selbstständig durchzuführen.
Fortschrittliche CBAT-Systeme ermöglichen selbst das Erstellen verschiedener Geschäftsapplikationen und deren nahtlose Integration in die Systeme anderer Bereiche. Wenn ein Fachmann im Unternehmen eine bestimmte Anforderung erkennt, kann dieser das System hinsichtlich dieser Anforderung anpassen und diese Lösung anschließend anderen Abteilungen und Unternehmen zur Verfügung stellen – all dies, ohne zu einem Programmierer oder Entwicklungsspezialisten zu werden. Die Ideen, die hinter CBAT stecken, sind seit vielen Jahren bekannt, aber erst seit kurzem haben Anbieter wirklich die Ansätze erkannt, die CBAT-Systeme so wirkungsvoll machen. In Zeiten knapper Ressourcen,  in denen zugleich immer komplexere Geschäftsprobleme zu lösen sind, ist CBAT vielleicht der einzige wirtschaftliche Ansatz, der den Bedürfnissen von Unternehmen gerecht wird.

Das Problem

Bisher wurde von IT-Abteilungen erwartet, Werkzeuge zur Verwaltung verschiedenster Daten und Prozesse bereitzustellen, von der Eingabe von Zeiterfassungsformularen bis hin zur Abwicklung sämtlicher Vorgänge im Unternehmen, einschließlich Angebotserstellung, Entwicklung, Marketing und Vertrieb. Je nach Budget, Zeit und Fähigkeiten der Mitarbeiter ist die bereitgestellte Lösung dann eine selbst entwickelte Anwendung, eine Komplettlösung oder auch ein geringfügig angepasstes Programm wie beispielsweise Excel. Jeder dieser Ansätze birgt gewisse Probleme.

Selbst entwickelte Anwendungen

Die Erstellung selbst entwickelter Programme als Antwort auf die Bedürfnisse des Unternehmens scheint oft der einfachste und direkteste Ansatz zu sein – insbesondere wenn es innerhalb des Unternehmens gute Entwickler gibt oder vertraglich gebundene Consultants zur Verfügung stehen. Als praktisch erscheint dabei, dass sich eine Inhouse-Entwicklung nicht direkt im Budget niederschlägt. Allerdings sollte man hierbei in vielerlei Hinsicht vorsichtig sein. Zum einen scheitern 62 bis 80 % aller IT-Projekte auf diese oder jene Weise.[1] Zum anderen aber bleiben die Ergebnisse selbst bei erfolgreichen oder teilweise erfolgreichen Projekten oft hinter den Erwartungen zurück. Inhouse-Entwickler verfügen nur selten über die erforderlichen Ressourcen, all die beliebten Funktionen zu berücksichtigen, die für moderne Software die Standards setzen. Auch Skalierbarkeit oder Sicherheitsprobleme lassen sich nicht immer berücksichtigen. Darüber hinaus fehlt häufig die Zeit zur nachträglichen Fehlerbeseitigung oder zur Anpassung an geänderte Anforderungen.

Allgemein verbreitete Programme

In fast jedem Büro gibt es Experten für Excel oder MS Access, die auf die Schnelle eine Tabellenkalkulation oder eine individuell zugeschnittene Datenbank erstellen können. Das ist zwar oft besser als nichts (wenn auch nicht immer), aber auch keine vernünftige und dauerhafte Lösung für unverzichtbare Funktionalitäten. Bereits der Einsatz des Programms erfordert Spezialkenntnisse, die wahrscheinlich nicht zuverlässig und auf Dauer zur Verfügung stehen. Darüber hinaus sind solche Lösungen häufig kompliziert und hinsichtlich Benutzerfreundlichkeit und geänderter Anwendungen ebenso problematisch wie selbst entwickelte Anwendungen.

Komplettlösungen

Natürlich gibt es längst Programme für alle erdenklichen Unternehmensprozesse. Solche Lösungen sind jedoch oft extrem teuer oder binden Sie an strikte Abläufe, die nicht zu den Bedürfnissen Ihres Unternehmens passen oder teure Consultants zur Konfiguration erfordern. Selbst kleine Änderungen oder Upgrades sind ohne Consultants oder eigens dafür ausgebildete Mitarbeiter nicht machbar.
Aus diesem Grund werden viele teuer erworbene Pakete niemals installiert oder durch Pakete ersetzt, die ein bestimmtes neues Bedürfnis bedienen – bis zum nächsten Paket, welches ein weiteres neues Bedürfnis stillt. Langfristig ist also keine dieser Lösungen sinnvoll.

Der CBAT-Ansatz

CBAT ist aus den Einschränkungen all dieser verschiedenen Ansätze erwachsen. Für die Grundbedürfnisse von Unternehmen sowie Probleme wie Skalierbarkeit, Sicherheit und Integration haben die Anbieter von Komplettpaketen bereits Lösungen gefunden. Inzwischen rüsten diese Anbieter ihre Produkte um (oder gestalten sie komplett neu), sodass nun auch die codefreie Anpassung des Anwendungsverhaltens an die Bedürfnisse ihrer Kunden unterstützt wird. Jüngere Unternehmen entwickeln einfach Programme in der Annahme, dass CBAT (unter welcher Bezeichnung auch immer) für sie nicht infrage kommt. Während CBAT in technologischer Hinsicht agnostisch ist, beruhen die meisten erfolgreichen CBAT-Systeme auf Metadaten. Klassischerweise wird im Geschäftsleben meist zuerst eine Datenbank entwickelt und danach der Code, mit dem auf die darin enthaltenen Daten zugegriffen wird. Bei einem durch Metadaten gesteuerten System legt die systeminterne Metabasis fest, welche Daten auf welcher Grundlage gespeichert werden sollen. Das Angenehme an einer Meta-Basis ist, dass deren Inhalte sich normalerweise schneller und einfacher aktualisieren lassen und das System sofort auf neue Strukturen und Regeln reagiert, ohne dass Programmcode geändert werden muss. Durch Metadaten gesteuerte Systeme sind nichts Neues. Tatsächlich verwenden viele Systeme, die auf den ersten Blick hart codiert sind, hinter den Kulissen Metadaten, die den Entwicklern eventuelle Anpassungen erleichtern. Das Besondere an CBAT-Systemen für Metadaten sind die Tools zu deren Bearbeitung und die Menge der Metadaten – je leistungsfähiger ein System, umso komplexer und ausführlicher sind die zugehörigen Metadaten.

CBAT-Werkzeuge

Wenn ein System sich nur dadurch von einem anderen System unterscheidet, dass anstelle von Spezialkenntnissen einer bestimmten Programmiersprache Spezialkenntnisse über die internen Strukturen des Tools erforderlich sind, haben Sie wenig gewonnen. Letztlich haben Sie sogar etwas verloren, denn es gibt viele Programmierer, die mit einer bestimmten Programmiersprache vertraut sind, während Experten für ein bestimmtes System weitaus seltener und teurer sind. Tools lassen sich in zwei Grundkategorien einteilen – Low Level Tools und High Level-Tools. Low Level-Tools sind systemnahe Tools, die eher Personen vertraut sind, die sich mit RAD (Rapid Application Development) beschäftigen oder einfache Datenbanken erstellen. So werden beispielsweise Felder oder Beziehungen hinzugefügt und Formulare gestaltet. Bei CBAT-Systemen gehen diese Tools viel weiter und ermöglichen beispielsweise die Festlegung der Regeln für das System. High Level Tools finden eher auf Unternehmensebene Anwendung.
Low Level Tools zur Anpassung eines guten CBAT-Systems sollten für einen normalen Manager mit einer gewissen Vorstellung von dem, was er erreichen will, nach einer Grundschulung einsetzbar sein. Einfache Änderungen sollten ohne spezielle Ausbildung oder Schulungen möglich sein. Die Tools sollten den Anwender anleiten und vor unerwünschten Nebeneffekten bestimmter Änderungen (beispielsweise einer Verschlechterung der Leistungsfähigkeit) warnen. Komplexere Anpassungen erfordern selbstverständlich ein höheres Maß an Fachkenntnissen oder Unterstützung durch einen Consultant – wenn auch nicht immer. Entscheidend sind die Art der gewünschten Änderungen und die Fähigkeiten der Person, welche die Anpassungen vornimmt. Sofern ein Consultant erforderlich ist, ist dieser idealerweise in der Lage, die neuen Funktionen zu entwerfen und diese einfach an den Kunden zu schicken, der sie nahtlos integrieren kann. High Level Tools zur Anpassung von CBAT-Systemen sind Werkzeuge auf Unternehmensebene. Während ein Low Level-Tool vielleicht fragt, ob man ein neues Feld hinzufügen möchte und wie dieses heißen soll, fragt ein High Level-Tool, ob man einen bestimmten Geschäftsvorgang implementieren möchten und wie dieser funktionieren soll. Möchten Sie beispielsweise ein Rabattsystem in Ihr System integrieren, werden Sie nach den Bedingungen für dieses System gefragt, beispielsweise Preise, Mindestumsatz etc. Anschließend konfiguriert das System die zugrunde liegenden Metadaten, um die gewünschte Funktionalität bereitzustellen. Danach lässt sich mit Low Level Tools die Feinjustierung vornehmen. Der wichtigste Punkt bei High Level Tools ist, dass diese Fachwissen erfordern. Dies kann vom Anbieter oder, was wahrscheinlich ist, von Partnern des Anbieters oder sogar von anderen Kunden stammen. Ein hochwertiges CBAT-System stellt Tools zur Verfügung, mit denen sich Fachkompetenz transferbereit verpacken lässt.
Es gibt noch weitere Tools, auch solche, die zwischen diese beiden Kategorien fallen, beispielsweise-se Tools zur Integration in andere Systeme und Tools, die einen Überblick über die Systemkonfiguration vermitteln. Diese Tools gehören jedoch nicht zum Kernbereich von CBAT-Systemen.

Was macht ein gutes CBAT-System aus?

Die Suche nach dem passenden System gestaltet sich oft verwirrend. Eine gängige Werbeaussage ist, dass Anwendungen zu 100 % benutzerspezifisch anpassbar sind (was alles und nichts besagt) und dass sie die eine oder andere Eigenschaft von CBAT-Systemen vorzuweisen haben.

Ein gutes CBAT-System zeichnet sich jedoch durch bestimmte Merkmale aus:

  1. CBAT-Systeme sind Unternehmensanwendungen, keine Bastelpakete. Wenn Sie ein Auto wollen, möchten Sie auch nicht, dass man Ihnen einen Haufen Blech und ein paar Werkzeuge übergibt. Sie möchten einfach nur Ihr Auto den Bedürfnissen entsprechend anpassen. Ebenso sollte ein CBAT-System die grundlegenden Bedürfnisse Ihres Unternehmens «out of the box» (oder zumindest nach einigen vorkonfektionierten Anpassungen) erfüllen. Tools sind dazu da, Ihr System exakt an Ihre Bedürfnisse anzupassen, nicht aber, um etwas von Grund auf neu zu bauen.
  2. Die Tools sollten mehrschichtig sein. Es sollten Low Level Tools und High Level Tools zur Verfügung stehen, aber selbst die Low Level Tools sollten unkompliziert sein, zumindest für einfache Aktionen. Im Softwarebereich spricht man von progressiver Offenlegung – sie werden nur dem Grad an Komplexität ausgesetzt, den sie benötigen.
  3. Eine der wichtigsten Eigenschaften von CBAT-Systemen ist, dass für die meisten Dinge kein Programmcode erforderlich ist. Dennoch existieren stets hoch spezialisierte Aufgaben, die nicht anders möglich sind. Ein gutes CBATSystem sollte eine umfassende API zur Interaktion zur Verfügung stellen. Darüber hinaus sollten diverse Schnittstellen für die Zusammenarbeit mit anderen Systemen bereitstehen, die grösstenteils keinen Programmcode erfordern (beispielsweise für das Abrufen von Daten aus einem anderen Datenbanksystem). Die Option sollte jedoch zumindest zur Verfügung stehen.
  4. Es sollte möglich sein, Businessfunktionalität zu verkapseln und zwischen verschiedenen Implementierungen des Systems zu transferieren, beispielsweise von einem Testsystem zu einem Live-System, vom Consultant zum Kunden oder von Kunde zu Kunde. Idealerweise sollte es ausserdem möglich sein, Expertenwissen aus einem Geschäftsbereich in die Funktionalität zu integrieren, sodass die Person, welche die Änderungen umsetzt, befragt werden kann und Anpassungen sofort präziser eingepasst werden können.
  5. Benutzerspezifische Anpassungen müssen upgradefähig ein. Dies klingt banal, aber es gibt zahlreiche Systeme, die komplexe Anpassungen ermöglichen, sich anschliessend aber nicht mehr auf eine neuere Version upgraden lassen, ohne dass die Anpassungen rückgängig gemacht werden müssen oder das Upgrade manuell von Experten vorgenommen werden muss.
  6. Die Preisgestaltung der Software sollte den Kunden für die Benutzung der Werkzeuge nicht bestrafen. Wenn beispielsweise der Kunde eine komplett  neue Verwendung für das Produkt erstellt, sollte der Anbieter den Kunden nicht für seine Kreativität zur Kasse bitten (obwohl die Anbieter vom Verkauf zusätzlicher Lizenzen profitieren können, da nun mehr Anwender diese Lösung verwenden).
  7. Selbstverständlich muss das System auch dieselben Standardanforderungen hinsichtlich Stabilität, Sicherheit, Skalierbarkeit, Leistungsfähigkeit, Integrationen, Verfügbarkeit, Berichte etc. erfüllen wie andere Softwarepakete und darüber hinaus auf die Bedürfnisse Ihres Unternehmens zugeschnitten sein. Die Anbieter sollten auch die Anforderungen hinsichtlich Support und Verfügbarkeit von Consultants bei Bedarf erfüllen und (was besonders wichtig ist) sie müssen auch benutzerspezifische Änderungen durch die Kunden unterstützen – nicht alle Anbieter sind dazu bereit oder in der Lage.

Fazit

Ihr Unternehmen mit der passenden Software auszustatten, kann ziemlich frustrierend sein. Ein Grund dafür liegt in der Natur der Software – während sich die Leistungsfähigkeit der Hardware in den letzten 60 Jahren ungefähr alle 18 Monate verdoppelt hat, verlaufen die Fortschritte bei den Techniken zur Softwareentwicklung erheblich langsamer. Dass Software denen, die wissen, was sie in ihrem Unternehmen damit anstellen wollen, nicht im Weg  stehen sollte, ist eine relativ junge Erkenntnis. CBAT ist ein bedeutender Schritt in diese Richtung. Sie ermöglicht Softwareentwicklern, sich auf ihre Kernkompetenzen zu konzentrieren (Erstellen von Software), und gestattet Unternehmern, ganz bei ihrem Geschäft zu bleiben. Ein Anbieter von CBAT-Lösungen reagiert nicht nur auf die Probleme seiner Kunden – er stellt ihnen Werkzeuge zur Verfügung, mit denen diese ihre Probleme selbst lösen können, auch solche, die noch gar nicht existieren.

Praktische Projekterfahrung mit Codeless Business Application Technology (CBAT) von Cherwell Software LLC

Die PLAIN IT AG als Master Reseller von Cherwell Software LLC in der deutschsprachigen Region (D/A/CH/LI) konnte in den letzten drei Jahren in über 30 Kundenprojekten äusserst positive Erfahrungen mit dem praktischen Einsatz der Codeless Business Application Technology (CBAT) sammeln. Die Kundenfeedbacks sind sehr positiv.

Codeless Business Application Technology (CBAT)

Cherwell Software LLC hat die weltweit einzigartige Codeless Business Application Technology (CBAT) entwickelt und liefert diese als WYSIWYG-Development-Plattform mit ihren Produkten aus. CBAT erlaubt es, ohne Programmierung oder Scripting u. a. Dialoge, Formulare, Reports und Dashboards zu erstellen sowie Datenmodellanpassungen, Rechenoperationen und Workflows abzubilden.
Viele unserer Kunden entscheiden sich für Cherwell Software LLC aufgrund der weltweit modernsten CBAT-Technologie (Development-Plattform) und der «Out of the box»-Applikationen, welche Cherwell Software LLC anbietet. Unsere Cherwell-Kunden wollen primär die «Out of the box»-Applikationen raschmöglichst nutzen, einfach an ihre spezifischen Anforderungen anpassen oder eigene Applikationen parametrisieren – und dies, ohne zu programmieren oder zu scripten.

100 Prozent Codeless Die Mehrheit der Interessenten von Cherwell Software LLC glaubt zu Beginn nicht, dass Cherwell Software LLC zu 100 Prozent codeless parametrisierbar ist. Wir und unsere Kunden können jedoch eine hundertprozentige Codeless-Fähigkeit bestätigen.
Limitationen Wir haben in den letzten Jahren Projekte jeder Grössenordnung realisiert: von Kleinprojekten bis zu sehr komplexen Grossprojekten mit mehreren 100 Agenten. Dabei sind wir nie an irgendwelche Grenzen gestossen.
Integration In sämtlichen Projekten konnten wir Cherwell Software LLC in bestehende Software-Umgebungen mittels Standardschnittstellen und modernster Schnittstellentechnologien einfach integrieren.
Anwendung Die CBAT-Technologie ist einfach anzuwenden. IT-Mitarbeiter der Kunden finden sich mit minimalem Ausbildungsaufwand in der WYSIWYG-Development-Plattform zurecht und können sofort aktiv in den Projekten mitarbeiten.
Benutzerfreundlichkeit Cherwell Software LLC bietet eine Vielzahl an Wizards, Widgets und intelligenten Assistenten an, um Systemparametrisierungen einfach durchzuführen. Dies unterstützt vor allem die Nicht-Power-User wesentlich.
Security Das in Cherwell Software LLC implementierte Security-Konzept wurde mehrfach von verschiedenen Bankkunden sowie Kunden im öffentlichen  Bereich auf ihre umfassenden und sehr hohen Security-Anforderungen eingehend geprüft. Bisher wurden sämtliche Anforderungen in Bezug auf Security von Cherwell Software LLC erfüllt.
Stabilität Die meisten unserer Kundenprojekte sind produktiv im täglichen Einsatz. Die Systemstabilität von Cherwell Software LLC in einer Produktivumgebung ist hervorragend.
Rollout-Anpassungen Cherwell Software LLC beinhaltet die Blueprint-Technologie. Sämtliche Änderungen werden in Blueprints (Bauplänen) festgehalten und können zwischen verschiedenen Systemen transportiert und veröffentlicht werden inklusive Rollback-Mechanismen. Diese Blueprint-Technologie hat sich sehr gut in der Praxis bewährt. Vor allem auch, wenn an verschiedenen Standorten auf verschiedenen Systemen parametrisiert wird.
Upgradefähigkeit Cherwell Software LLC garantiert eine hundertprozentige Upgradefähigkeit. Die ersten Kundenprojekte haben wir mit dem Cherwell Software LLC Release 3.1 ausgeliefert. Unsere Kunden haben wir laufend auf die neuste Version, heute 4.01, upgegradet. Die Versionsupgrades erfolgen schlank und einfach auf der Metadatenebene. Wir und unsere Kunden haben bei den Upgrades keine Probleme feststellen können.
Entwicklungszeit Im Rahmen unserer Projekte haben wir im Vergleich zu älteren Softwarelösungen bis zu 40 Prozent weniger Parametrisierungsaufwand feststellen können.

Verweis

[1] Ursprüngliche Studie, Standish Group, 1994. Die Studie von Dynamic Markets Limited aus dem Jahr 2007 zeigte ähnliche Ergebnisse.