Schlagwort-Archive: automatisierung

Digitalisierung

„Digitalisierung“ ist eines der meistverwendeten, aber auch meistmissverstandenen Schlagworte unserer Zeit. Viele Unternehmen glauben, sie seien auf dem richtigen Weg, wenn sie PDF-Formulare statt Papier nutzen oder Exceltabellen in der Cloud teilen. Doch echte Digitalisierung ist weit mehr als das.

Digitalisierung bedeutet: Arbeitsprozesse so zu gestalten, dass sie automatisiert ablaufen.

Im Kern ist Digitalisierung nichts anderes als die Fortsetzung des technologischen Fortschritts: Prozesse, die früher manuell und fehleranfällig waren, lassen sich heute durch Software, KI und Automatisierung vollständig abbilden. Der Unterschied zu früher? Heute ist diese Automatisierung universell möglich, nicht mehr nur in Fabriken, sondern auch in Büros, Kanzleien und Agenturen.

Was viele „Digitalisierungsprojekte“ falsch machen

Viel zu oft endet ein Digitalisierungsprojekt dort, wo die eigentliche Arbeit anfängt. Beispielsweise: Ein Formular wird nicht mehr gedruckt, sondern als Webformular bereitgestellt – aber danach wird es manuell geprüft, weitergeleitet oder abgetippt. Excel-Listen werden in Cloud-Speichern abgelegt – aber weiterhin per E-Mail hin und her geschickt.

Diese Praxis ist nicht Digitalisierung, sondern Schein-Digitalisierung. Der entscheidende Schritt fehlt: die Automatisierung. Nur wenn Prozesse wie Prüfungen, Berechnungen, Genehmigungen oder Übertragungen automatisiert ablaufen, entsteht der Produktivitätsgewinn, den Digitalisierung verspricht.

Digitalisierung als Fortsetzung der Industrialisierung

Die grundlegende Theorie ist älter als das Wort Digitalisierung selbst: Bereits in der Industrialisierung war das Ziel, menschliche Arbeitskraft durch Maschinen zu ergänzen oder zu ersetzen, um Skalierbarkeit und Effizienz zu erreichen. Damals geschah dies vor allem in der Produktion. Heute ist es der digitale Schreibtisch, der revolutioniert wird.

Wenn Digitalisierung richtig umgesetzt wird, steigert sie die Produktivität exponentiell – und damit den gesellschaftlichen Wohlstand.

Doch dieser Wohlstand entsteht nur, wenn nicht in teuren Projekten versickert, was eigentlich in Automatisierung fließen sollte.

Die Schattenseite: Wie Digitalisierungsprojekte bewusst verzögert werden

Viele Dienstleister profitieren davon, wenn Digitalisierungsprojekte möglichst lang laufen und möglichst viel betreut werden müssen. Deshalb wird oft: Komplexer geplant als nötig, mühsam „digitalisiert“, was sich direkt automatisieren ließe oder unnötig individualisiert, statt auf bewährte Komponenten zu setzen.

Das Ergebnis: Digitalisierung wird teuer, langsam und frustrierend – und liefert zu wenig Nutzen fürs investierte Geld.

Skeptisch werden, wenn keine belastbaren Zahlen den Fortschritt belegen

Das Hamburger Unternehmen Kehrwasser geht bewusst den Weg, mithilfe der Software Kehrwasser Beacon wird bei allen Kundenprojekten der Grad der Automatisierungsabdeckung kontinuierlich zu messen:

  • Welche Prozesse sind bereits automatisiert?
  • Wo werden noch manuelle Zwischenschritte gemacht?
  • Wie viel Zeit und Geld wurde dadurch eingespart?

Dieser kontinuierliche Audit-Ansatz stellt sicher, dass:

  • Digitalisierung kein Selbstzweck, sondern wirtschaftlich messbar wird.
  • Kunden über die Zeit eine echte Rendite auf ihre Investitionen sehen (ROI).
  • Projekte nicht entgleisen, sondern auf Kurs bleiben.

Fazit

Digitalisierung ist kein neues Buzzword – sondern die Möglichkeit, alte Fehler nicht zu wiederholen. Nur wer versteht, dass Digitalisierung Automatisierung meint, wird in Zukunft konkurrenzfähig bleiben.

Und nur wer diesen Fortschritt messbar und ehrlich umsetzt, schafft echten Mehrwert für sein Unternehmen, seine Mitarbeiter – und am Ende auch für die Gesellschaft.

Tipp: Wer wissen will, wie automatisiert sein Unternehmen bereits arbeitet, kann sich bei Kehrwasser für ein kostenloses Beacon-Audit registrieren.

Wirtschaftlicher Nutzen von CI/CD

Produktinnovation ist in einer digitalisierten Welt der Schlüssel zum Erfolg. Um sich vom Wettbewerb abzuheben, sollen Innovationen so rasch wie möglich und voll funktionsfähig an den Markt gebracht werden. Doch konventionelle Entwicklungsmethoden sind meist schwerfällig und bremsen die Time-to-Market. Um die Zeitspanne zwischen Entwicklung und Marktveröffentlichung zu verkürzen, sind in der Vergangenheit effektive Ansätze entwickelt worden.

Bei konventionellen Vorgehensweisen, vergehen teilweise Monate bis es zu einem Release kommt. Zunächst müssen alle Fehler behoben und Funktionen entwickelt bzw. erweitert werden. Erst danach folgt ein großes Update. Dabei werden beinahe alle Änderungen und Anpassungen manuell durchgeführt und der Prozess wird dementsprechend anfälliger für Fehler. Der gesamte Prozess ist wenig flexibel sorgt oftmals für komplexe Workarounds für die Entwickler.

Eine Lösung für dieses umständliche Vorgehen muss her. Ein lohnender Ansatz soll den Entwicklungsprozess von Software vereinfachen und zugleich beschleunigen: Das CI/CD.

Unterschied zwischen Continuous Integration (CI) und Continuous Delivery (CD)

Was ist also CI/CI? CI bzw. CD steht für Continuous Integration bzw. Continuous Delivery. Continuous Integration (CI) ermöglicht eine kontinuierliche Integration von neuem Code in ein gemeinsames Repository während Continuous Delivery (CD) für die Überführung des Codes von Repository in die Produktion zuständig ist.

Durch die Anwendung von CI/CD können sowohl die Fehlerquote als auch der Release-Zyklus minimiert werden. Im ersten Schritt, der Continuous Integration, testet der Entwickler den von ihm produzierten Teil des Codes bevor er ihn in das Controle-Repository übermittelt. Danach folgt meist eine neue Quellcode-Version, welche mittels Unit-Tests auf Fehler geprüft und in Testumgebungen eingefügt wird. Hier werden auch ganzheitliche Systemtests durchgeführt. Wenn der neue Teil des Codes erfolgreich alle Tests durchlaufen hat, wird das Team automatisch benachrichtigt. Zudem werden Informationen über die Anzahl der Tests und der gefundenen Fehler gesammelt.

Continuous Delivery (CD) setzt dort an, wo Continuous Integration endet. Bevor Software in die Produktionsumgebung übermittelt wird, werden Systemtests, Unit-Tests (inklusive API-Tests und Lasttests) und Integrationstests durchgeführt. Diese Tests sind allesamt Teil von Continuous Delivery und werden automatisch durchgeführt. Über den kompletten CI/CD-Prozess hinweg, können Fehlermeldungen rasch und direkt über Feedback-Kanäle an die Entwickler weitergeleitet werden.

Nachfolgend sind die relevantesten Vorteile von CI/CD aufgelistet, die letztlich in einer Kostensenkung resultieren.

  • Kleine Schritte: Statt große Teile des Codes auf einmal zu integrieren und in späterer Folge deren Fehler umständlich zu beheben, werden bei CI/CD mehrere kleinere Teile in das Repository eingefügt. Das Continuous Testing wird dadurch erleichtert, weil nur kleinere Stücke untersucht werden müssen und mögliche Probleme somit eher gefunden werden.
  • Kürzere Release Rates: Durch das rasche Erkennen und Beheben von Fehlern, können mehrere kleinere Code-Teile in kürzeren Abständen released werden. Dies ist allerdings nur möglich, wenn in einem kontinuierlichen Prozess entwickelt und der Code in einem releasefähigen Zustand gehalten wird.
  • Ordentlicher Backlog: Wird CI/CD in den Entwicklungsprozess integriert, so verändert sich die Fehlerquote im Backlog. Da kleinere Fehler rascher gefunden werden, kann sich das Team auf kritische Probleme konzentrieren.
  • Einfache Wartung: Mithilfe von Microservices können einzelne Bereiche eines Systems heruntergefahren werden ohne das restliche System betroffen ist. Somit können Wartungsarbeiten nahezu unbemerkt stattfinden.
  • Continuous Feedback: Durch die regelmäßige Integration des Codes, entsteht eine verlässliche und kontinuierliche Feedbackschleife. In dieser befinden sich vor allem Entwickler. Deren Rückmeldung zu Pipeline Build-Fehler, Merging-Problemen, Architektur-Rückschlägen usw. ist enorm wichtig für den gesamten Prozess.

Darauf sollte geachtet werden

Den Entwicklern soll die Arbeit mit dem CI/CD-Ansatz erleichtert werden, weshalb ein einfacher Prozessaufbau essentiell ist. Je weniger sie sich mit dem eigentlichen Prozess und manuellen Aufgaben aufhalten, desto effektiver kann gearbeitet werden. Zudem sollten Entwickler bis auf wenige Ausnahmen, direkt am Master-Branch arbeiten um eine sofortige Integration und das zugehörige Testen zu ermöglichen.

Wird CI/CD in den Entwicklungsprozess von Software integriert, so müssen automatisierte Tests auf allen Ebenen durchgeführt werden. Dies schließt mitunter Unit-, Integrations- und Systemtests ein, genauso wie automatisierte Tests für Funktionalität, Benutzerfreundlichkeit, Leistung, Last, Stress und Sicherheit durchgeführt werden müssen. Erst dann kann von CI/CD ganzheitlich profitiert werden.

Als nützliche Tools erweisen sich beispielsweise Repository-Management-Systeme wie Gitlab und Bitbucket oder Services für die Build-Automatisierung wie Jenkins oder eben auch Gitlab. Beispiele für die Testautomatisierung sind das Tool Katalon Studio oder jUnit in der Javawelt. Aber die Auswahl ist praktisch unendlich.

Fazit

Continuous Integration und Continuous Deployment zerstückeln den Entwicklungsprozess in kleine Teile. Diese Teile werden in regelmäßigen Abständen in ein gemeinsames Repository integriert und nach dem Testen dem Kunden rasch zur Verfügung gestellt. Sie sind ein zentrale Teil der DevOps-Methodik. Der gesamte Entwicklungsprozess wird übersichtlicher und flexibler, dadurch werden Fehler einfacher gefunden und behoben. Um mit der Konkurrenz mitzuhalten bzw. diese sogar zu übertreffen und unnötige Fehlersuche zu vermeiden, ist die Integration von CI/CD in den Entwicklungsprozess also eine einfache, effektive aber auch mittlerweile unverzichtbare Methode.