X

Teil 2

Software-as-a-Service (SaaS)

Christoph Krahl im Gespräch mit Richard Klees

image interview partner

Eine Entwicklung, die die Corona-Pandemie stark beschleunigt hat, sind Veränderungen im Bereich des mobilen Arbeitens und einer darauf ausgelegten IT-Infrastruktur. Viele Unternehmen mussten in kürzester Zeit Arbeitsumgebungen und -prozesse auf Homeoffice mit Laptops und Video-Conferencing umstellen. Das Tempo mit dem dies geschehen musste, hat nicht nur interne IT-Abteilungen massiv belastet, sondern wäre ohne "as-a-Service"-Dienstleistungen nicht möglich gewesen. Ich schätze, jeder von uns nutzt mittlerweile Software, die nicht mehr auf dem eigenen Rechner installiert werden muss, sondern online als Software-as-a-Service zur Verfügung stehen. Die Vorteile für Unternehmen sind dabei zahlreich: geringere und besser planbare Betriebskosten, weniger interner IT-Aufwand, schnellere Integration neuer Mitarbeiter, bessere Skalierbarkeit, keine räumliche Zugriffsbeschränkung.

Wie sich dies konkret auf uns als kleineres Softwareunternehmen ausgewirkt hat, möchte ich von einem unserer Geschäftsführer bei CaT Concepts and Training GmbH Richard Klees erfahren. Vor dem Hintergrund des neuen Release 8 unseres Lernmanagementsystems cate habe ich mich mit Richard über SaaS, Open-Source-Software, Entwicklungsprozesse und Sicherheitsaspekte unterhalten. Neben seinen Aufgaben in der Geschäftsführung leitet Richard als Lead Developer das interne Entwicklungsteam von cate. Darüber hinaus ist er Mitglied des Technical Board der Open-Source-Plattform ILIAS. Ich persönlich bin als UX-Designer kein Spezialist in Software-Architektur-Fragen und den damit verbundenen Prozessen, was die Planung und den Betrieb einer Software angeht. Mich hat darum unter anderem interessiert, warum wir cate als Software-as-a-Service-Lösung anbieten und was dies für den Release-Prozess und den Betrieb einer so umfangreichen Lernmanagementplattform bedeutet.

Zunächst unterhalten wir uns über das Verständnis und die Abgrenzung der beiden Begriffe Software-as-a-Service und Hosting. Wie ich erfahre, kommt es häufiger vor, dass SaaS mit Hosting gleichgesetzt wird. Eine falsche Verkürzung: Das Hosting der Software und der verbundenen Daten findet als eine Teilleistung auf Cloud-Servern statt, auf die räumlich unbeschränkt zugegriffen werden kann. Software-as-a-Service beinhaltet in Fall von cate aber weit mehr als das. Pointiert könnten man sagen, cate im SaaS-Modell bedeutet: Ein definierter Leistungsumfang steht in einer definierten Qualität unseren Kunden zur Verfügung. Und dies ist für ein neues Release ein entscheidender Punkt: Mit einem Update oder einem neuen Release garantieren wir weiter die vertraglich definierte Leistung und Qualität. Ich schätze, wir alle kennen Beispiele von anderen Software-Produkten, bei denen dies nach einem Update nicht der Fall ist.

Damit dies überhaupt möglich ist, haben wir vor einigen Jahren beispielsweise den Teilbereich "Hosting" komplett an einen professionellen Partner übertragen, der nach höchsten Sicherheitsstandards und DSGVO-konform Kundeninstanzen inklusive aller Daten in einer skalierbaren Cloud-Lösung online bereitstellt. Für uns und die Kundenseite entsteht daraus eine vertraglich definierbare Leistung, die eine wesentlich höhere Flexibilität und Sicherheit bietet. Je nach Größe und Anforderungen des Unternehmen kann eine cate-Instanz im Cloudhosting-Modell schnell und unkompliziert skalieren. Beispielsweise auf mehr Performance ausgelegt werden, wenn eine große Zahl zeitgleicher Zugriffe möglich sein soll oder wenn sehr umfangreiche Datenmengen und eine hohe Anzahl an Nutzer*innen verwaltet werden müssen.

Aber auch für den eigentlichen Release- oder Update-Prozess bietet cate im SaaS-Betrieb erhebliche Vorteile gegenüber einer On-Premise-Lösung. On-Premise bedeutet, dass die jeweilige Software auf Servern bei Kunden betrieben und geupdated werden muss. In einer SaaS-Lösung mit Cloudspeicher findet das Ausliefern einer neuen cate-Version für alle Kunden an einer zentralen Stelle statt. Zusätzlich bietet die flexible Skalierbarkeit solcher Cloudsysteme neben einer vertraglich festgelegten Ausfall- und Datensicherheit einen weiteren Vorteil: Es ist unkompliziert und schnell möglich, parallel zu einer aktuellen Version, Testinstanzen inklusive aller Daten mit der neuen Version aufzusetzen. So können Entwicklungsteam, Kundenmanager*innen, Tester*innen und schließlich auch unsere Kunden bereits im Vorfeld unter Realbedingungen testen, ob noch Probleme bestehen und diese ggf. beseitigen. Erst wenn dieser Prozess abgeschlossen ist und eine Freigabe durch den Kunden erfolgt ist, kann praktisch übergangslos die neue Version in den Live-Betrieb übergehen. Ich denke, dass jeder von uns bereits Erfahrung mit der früher verbreiteten Praxis gesammelt hat, wo nach einem Release erst einmal zahlreiche kleinere oder größere Probleme auftauchen, Daten verschwunden sind oder neue Funktionen noch nicht reibungsfrei funktionieren. Dadurch war man entweder gezwungen, das Release zurück zu rollen, also den vorherigen Stand wieder einzuspielen oder es mussten unter erheblichem Zeitdruck Fehler beseitigt werden. Das führt selten zu einem guten und professionellen Arbeitsklima und blockiert schnell einen Großteil verfügbarer Ressourcen.

Im Verlauf des weiteren Gesprächs reden wir über die Abläufe, die generell bei einem neuen Release im Zentrum stehen und wie die Herangehensweise ist, damit Funktion, Design, Bedienbarkeit und Kundenzufriedenheit gesteigert werden können. Vor allem für uns als kleineres Software-Unternehmen und E-Learning-Anbieter mit 25 Mitarbeitenden ist es besonders wichtig, Abläufe so zu gestalten und mit Tools zu unterstützen, damit das Entwicklungsteam und die Tester*innen nicht überbelastet werden und alle anderen Aufgaben weiterlaufen können. Alle beteiligten Bereiche, wie Kunden- und Produktmanager*innen, Entwickler, UX-Designer und letztlich auch die Unternehmensführung müssen in den verschiedenen Phasen zusammenkommen und die Aufgaben und Ziele eines Releases festlegen. Unsere Kundenmanager*innen liefern dabei den Input von der Nutzungs- bzw. Kundenseite, während der Produktmanager die Weiterentwicklung aus allen beteiligten Perspektiven koordinieren und zusammenhalten muss. Aus der Entwicklungsperspektive muss beurteilt werden, wie Funktionen und Erweiterungen realisiert werden können und wie aufwendig die Umsetzung einzuschätzen ist. Das UX-Design unterstützt dabei aus der Nutzungsperspektive eine möglichst gute Integration in die existierenden Bedienkonzepte. Generell gilt, nicht zu früh mit der Umsetzung zu beginnen, sondern zunächst die Ziele und Features in planbare Teile zu zerlegen. Jedes dieser Teile kann schließlich mit allen beteiligten Aufgabenbereichen synchronisiert und weiter ausgeplant werden, bis schließlich ein genaues Verständnis davon existiert, was konkret umgesetzt werden muss. Von dieser Modularisierung profitiert die gesamte Projekt- und Zeitplanung, da Erfüllungsgrade besser ablesbar werden und ggf. Teile weggelassen oder umgeplant werden können.

Je besser diese Abläufe greifen, desto mehr reduziert sich das Risiko, sich zu viel vorzunehmen oder an den Erwartungen vorbeizuentwickeln. Es kann somit früh ein gemeinsames Verständnis des Umfangs und der Features in einem neuen Release aufgebaut werden. Für cate spielen allerdings noch zwei weitere Aspekte eine wichtige Rolle: cate basiert auf einer modularen Architektur, die in großen Teilen aus der frei verfügbaren Open-Source-Plattform ILIAS stammen. ILIAS ist als Lernmanagementsystem vor allem im akademischen Bereich weit verbreitet. Wir nutzen also den frei zugänglichen Code als Entwicklungsbasis für cate, ändern Teile, fügen neue Funktionen hinzu und lassen weg, was nicht im Corporate-Learning-Kontext von Unternehmen benötigt wird. Der enorme Vorteil besteht für uns als kleineres Software-Unternehmen darin, dass ILIAS als Open-Source-Software von einer großen Community entwickelt und gepflegt wird, was eine "Lastverteilung" auf viele Schultern ermöglicht und vom Umfang her sonst nur durch ein sehr großes Software-Unternehmen getragen werden könnte. Wir bei CaT sind seit Jahren ein Teil dieser Community und bekommen als sogenannter "Premium Provider" die Möglichkeit, ILIAS mit unseren Anpassungen, Erweiterungen und angeschlossenen Dienstleitungen cate als eigenständiges Produkt kommerziell zu vertreiben. Gleichzeitig geben wir durch die Bereitstellung von Entwicklungsressourcen und die Übernahme von Community-Aufgaben wieder etwas an die Gemeinschaft zurück.

Am Ende unseres Gesprächs frage ich Richard nach einem weiteren Aspekt, von dem ich in meinem Arbeitskontext nur sehr wenig mitbekomme. Es geht dabei um die Sicherheitsanforderungen, die für den Betrieb einer Lernmanagementplattform wie cate nötig sind und wie in diesem Kontext die Zusammenarbeit mit großen Unternehmen funktioniert. Ich frage Richard, ob meine Vermutung stimmt, dass große Unternehmen auch eher zu großen Anbietern von Lernmanagementsystemen tendieren, da sie anhand der Größe auch das Maß an Kompetenz im Kontext von sicherheitsrelevanten Fragestellungen vermuten. Die Antwort fällt allerdings für mich überraschend aus. Richard erzählt mir, dass es durchaus vorkommt, dass im Rahmen der Verhandlungen eine gewisse Skepsis vorhanden sein kann. Ab und an tauchen schon mal Fragen auf wie: Haben sie einen AVV (Auftragsverarbeitungsvertrag) oder können sie uns ihre TOMs (Technisch organisatorische Maßnahmen) zuschicken? Da wir auf diesem Gebiet schon einiges an Erfahrung gesammelt haben und entsprechend vorbereitet sind, können wir eine anfängliche Skepsis meist schnell zerstreuen. Durch regelmäßig durchgeführte Pen Tests (Penetrationstests) und einen eigenen cate-Security Blog versuchen wir, möglichst transparent und offensiv über Sicherheitsfragen zu informieren. Wenn Kunden IT-Sicherheitsaudits durchführen, werden diese sorgfältig und umfassend beantwortet. Das gehört nicht bei allen Softwareunternehmen zum Regelfall. Richard ist davon überzeugt, dass auch größere und große Kunden bei uns gut aufgehoben sind, da wir Datensicherheit nicht erst durch gesetzlichen Druck für ein wichtiges Thema halten und uns schon sehr früh um die notwendigen Rahmenbedingungen gekümmert haben.