Kontrollverlust in Softwaresystemen?

Kontrollverlust in Softwaresystemen?

Kontrollverlust in Softwaresystemen?

Strukturen zur Beherrschung der neuen Unübersichtlichkeit und die Unendlichkeit von Software
DevSecOps

Im Rahmen des Java Forums in Stuttgart am 07.07.2022 hält Holger Tiemeyer einen spannenden Vortrag, welcher sich mit dem Thema „Kontrollverlust in Softwaresystemen?“ befasst.

Im Vorfeld konnten wir mit Holger über seinen Vortrag sprechen und erfahren wichtige Fragestellungen und Ansatzpunkte zu dieser Problematik.

Als studierter Informatiker mit Nebenfach Psychologie verbindet Holger Tiemeyer in seinen Fachvorträgen und Veröffentlichungen aktuelle Themen mit weitergehenden, aus der Psychologie her- oder ableitbaren Aspekten.

Holger Tiemeyer

Wenn du von einem „Kontrollverlust in Softwaresystemen“ sprichst, was können wir hier erwarten?

Holger: Als Berater habe ich in der jüngsten Vergangenheit einige bemerkenswerte Ausprägungen mitbekommen: Der Hype nach der Umsetzung von Microservice-Architekturen setzte sich ungebremst in den Unternehmen durch – und das zu großen Teilen, ohne diesen Trend wirklich zu reflektieren.
Notwendige Fragestellungen wie: „Warum machen wir Microservice-Architekturen?“, „Was sind die Argumente für deren Einführung?“ wurden manchmal nicht gestellt oder beantwortet. Oftmals fußt die Entscheidung für Microservice-Architekturen auf bunten Marketing-Foliensätzen eines/einer bekannten Architekt:in, die den Trend auf einer Konferenz oder in einem Zeitungsartikel als die Lösung vieler offensichtlicher Probleme postuliert hat.

Mit dieser Herangehensweise an die Umsetzung von Microservice-Architekturen nehmen wir etwas in Kauf: Eine verborgene Komplexität, denn wir wissen zu Teilen gar nicht, was sich dahinter tatsächlich verbirgt. Und hierin besteht eine ungemeine Gefahr des Scheiterns eines solchen Vorhabens, denn die explizite Inkaufnahme von etwas Verborgenem äußert sich in Softwareprojekten und ihren Umfeldern in genau dem Moment, wenn Eskalationen zunehmen, Themen zu langsam umgesetzt werden oder Digitalisierung, Modernisierung und neue Anforderungen nur schwer einzubringen sind. In einer extremen oder auch verzweifelten Form fällt u.a. eine Aussage wie: „das wird nicht funktionieren“ oder „das ist nicht umsetzbar“. In der Konsequenz nimmt die eigene Unzufriedenheit oder diejenige von Kunden oder Auftraggebern zu. Der daraus resultierende Aktionismus führt im weiteren Verlauf dazu, dass in einem Projektrahmen nicht mehr pro-aktiv agiert, sondern schlimmstenfalls nur noch reagiert oder das Projekt als gescheitert verurteilt wird.

Es kann potenziell eine Unübersichtlichkeit oder auch ein Chaos, das nicht mehr beherrschbar erscheint – oder schlimmstenfalls sogar ist -, entstehen.

Nehmen wir dieses Chaos also als etwas schicksalhaftes an? Oder möchten wir lieber die Komplexitäten – die aus der Wahl eines geeigneten Architekturstils resultieren – aktiv angehen und beherrschbar halten und die Kontrolle über das Vorgehen der Umsetzung von Softwaresystemen behalten? Was bedeutet dann ein geeigneter Architekturstil?

Und genau diesen Fragestellungen sehe ich mich sowohl in meinen Projekten als auch in meinen Trainings zu flexiblen Architekturmodellen und Cloudinfra gegenübergestellt. Die Teilnehmer:innen dieser Schulungen bitten häufig um Hilfestellungen aus genau den gerade erwähnten Aspekten heraus. Die Lösungsräume erarbeiten wir dann gemeinsam.

Du sprichst Unbewusstes, Komplexität und Chaos an, die wir in der digitalen Welt beherrschen wollen, was ist hier Dein Postulat?

Holger: Laut C.G. Jung fassen wir das Unbewusste bis zum Zeitpunkt des Bewusstmachens als Schicksal auf. D.h. das, was uns nicht bewusst ist, kann als etwas, das evtl. nicht im Detail verstanden oder bewusst wahrgenommen wird aufgefasst- und weiter: als ein Verhängnis einer höheren Macht, die das Leben bestimmt und lenkt, angesehen werden. Es wird somit hingenommen und akzeptiert.

Bezogen auf unsere Softwaresysteme und -architekturen wäre die Frage: Gibt es evtl. Themen, die wir in einer Entscheidungsfindung nicht sehen, die sozusagen im Verborgenen, Unbewussten liegen?

Eine Entscheidung für oder gegen eine Realisierung/Umsetzung oder einen Architekturstil würde evtl. ganz anders gefällt werden, wenn wir uns gewisse Aspekte bewusst machen.

Fundamentaler Ausgangspunkt ist das CAP-Theorem, welches zwar oftmals bekannt ist, doch dessen Auswirkungen auf unsere Entscheidungsfindung gerade im Kontext von Softwarearchitekturen kaum oder gar nicht beachtet wird.

Es geht daher nicht um das Beherrschen des Unbewussten oder der Komplexität, sondern um das Bewusstwerden darüber – über blinde Flecken und Bereiche, die uns in der Entscheidung massiv beeinflussen und die Komplexität reduzieren können – resultierend aus den Ergebnissen, die uns das CAP-Theorem liefert.

Wo hilft uns hierbei das CAP-Theorem genau?

Holger: Das CAP-Theorem liefert uns eine wesentliche Erkenntnis, die uns in der Entscheidungsfindung für gewisse Eigenschaften in verteilten Systemen, ermöglicht: Wir müssen uns für zwei der drei Eigenschaften: Konsistenz, Verfügbarkeit und Partitionstoleranz, entscheiden.

Diese Entscheidung hat einen fundamentalen Einfluss auf die Ausgestaltung und weitergehenden Möglichkeiten eines Systems. Benötigen wir beispielsweise eine ad-hoc-Konsistenz unserer zugrundeliegenden Daten, die den ACID-Prinzipien unterliegt oder nicht?

Wenn ich nun von „oder nicht“ spreche, ist dann schon jedem klar, wovon ich in der Alternative spreche? Dieses ist ein schönes Beispiel für das Bewusstmachen des Unbewussten. Was verbirgt sich denn hinter der Alternative zu ACID?

Wir sprechen von BASE (Base vs. Säure – scherzhaft). Dabei steht BASE für Basically available, soft-state und Eventual Consistency.
Dieses bedeutet, dass wenn ich die ACID-ad-hoc-Konsistenz verlasse und mich dagegen entscheide, kann ich mit den Mittlen der Eventual Consistency arbeiten. Ist diese Tatsache bewusst? Wir werden es in meinem Vortrag klären.

Du sprichst von einer Komplexitätsreduktion durch das Bewusstmachen blinder Flecken. Könntest du dieses noch etwas genauer darlegen?

Holger: Ein zentrales Thema in der Architekturarbeit – insbesondere in Microservice-basierten Systemen – ist die Verteilung von Verantwortlichkeiten (Separation of Concerns).

Wo liegen denn meine Verantwortlichkeiten – fachliche und technische? In einem Service oder über mehrere Services verteilt? Kann ich die Verantwortlichkeiten trennen – und wenn ja, dann wie?

Die Trennung von Verantwortlichkeiten umfasst in der Umsetzung unterschiedliche Aspekte und Bereiche. Die Frage nach der Definition eines Verantwortungsbereichs muss gemeinsam mit allen beteiligten Stakeholdern geklärt werden. Wir müssen diese blinden Flecken aufdecken.

Ein moderner Trend ist es mit weitergehenden Aspekten zu arbeiten: Sidecars und daraus resultierend die Service-Meshes bieten uns ein enormes Potential bestimmte Komplexitäten und Verantwortlichkeiten in die Infrastruktur auszulagern. Auch hier kommt wieder die Frage nach dem Bewusstsein über diese Möglichkeiten zum Tragen. Ich hoffe dieses in meinem Vortrag aufzuklären.

Wie kann man dies erlernen?

Holger: Die Psychologie beschäftigt sich mit der Fragestellung der Problemlösung. Ein Problem wird dadurch gekennzeichnet, dass ich von einem Ausgangszustand in einen Zielzustand übergehen möchte, wobei zwischen diesen beiden Zuständen eine Barriere existiert, die es zu überwinden gilt.

Die Problemlösung besteht nun darin sog. Operatoren zu finden, mit deren Hilfe ich diese Barriere überwinden kann.

Der Erwerb dieser Operatoren erfolgt aufgrund von drei Arten:
I.) Entdecken

II.) Instruktion und

III.) Beobachtungslernen.

Aus diesen Möglichkeiten des Erwerbs müssen die Operatoren extrahiert werden und dieses passiert anhand der Analogiebildung. Dieses Konzept geht schon auf Platon zurück und ist essenziell. Wir erlernen die Themen anhand von Analogien.

Die Frage ist nun, wie uns dieser Prozess der Analogiebildung dabei helfen kann unbewusste Teile aufzudecken, um fundierte Entscheidungen für unsere Systemarchitekturen zu treffen, die uns die Kontrolle über diverse Ausprägungen ermöglichen?

Unendlichkeit der Software, wie definierst Du das?

Holger: Gegenfrage: Wodurch ist der Rahmen eines Softwaresystems definiert? Wo liegt seine Grenze? Wir klären dieses in Rahmen des Vortrags.

Wie können wir all diese Themen bei der Software Architektur einbringen?

Holger: Die ISO-25010-Norm definiert Qualitätsmerkmale für Software. Diesen Qualitätsmerkmalen werden Qualitätsszenarien, die aus den Qualitätsanforderungen abgeleitet werden, zugeordnet und priorisiert.

Wichtig ist nun, dass jedes System in seinen Lösungsszenarien und -strategien in Bezug auf die in der Norm definierten Qualitätsmerkmalen optimiert werden kann.

Hier fängt unser Entscheidungsprozess als Softwarearchitekt an. Unter Einbezug der Erkenntnisse aus dem CAP-Theorem sowie der Aufklärung blinder Flecken in Bezug auf die Infrastruktur (oder auch Makroarchitektur) können unsere zu realisierenden Systeme exakt auf die umzusetzenden funktionalen sowie qualitativen Merkmalen optimiert und angepasst werden.
Wir werden dieses an einem durchgängigen Beispiel in meinem Vortrag entdecken.

Danke für die Einführung! Wir sind gespannt auf deinen Vortrag, und die Antworten und Empfehlungen, wie man die Kontrolle in der Software Architektur behält.

 

Wir freuen uns auf viele interessante Gespräche an unserem Ausstellungsstand im Foyer des Java Forums Stuttgart!

OOP 2020 unter dem Motto „Into the Unknown“ | Wir sind dabei!

OOP 2020 unter dem Motto „Into the Unknown“ | Wir sind dabei!

Kaum ein Berufsfeld ist so vielfältig und breit gefächert wie das des Software-Architekten. Gleichzeitig gibt es wenige Branchen, die sich so sehr der Innovation verschrieben haben wie unsere. Das ist Fluch und Segen gleichermaßen, denn so spannend es ist, Neues zu kreieren, so hoch ist auch die Verantwortung – gegenüber unseren Kunden, unseren Mitarbeitern bzw. Kollegen und am Ende auch gegenüber unserer Gesellschaft.

Besuchen Sie uns an Stand 3.3!

Gehen Sie mit uns den Weg in die Zukunft auf der OOP 2020, der Konferenz für Software-Architektur vom 03. – 07.02.2020 in München! Wir, ITech Progress und die ITech Academy, sind als Aussteller vom 04. – 06.02.2020 am Stand mit der Nummer 3.3 für Sie da. Wir freuen uns auf den Austausch über unsere Arbeit im Bereich Systems- und Software Engineering und laden Sie herzlich ein, unsere ITech Academy mit ihrem breiten Portfolio an Schulungen zum Certified Professional for Software Architecture (CPSA) des International Software Architecture Qualification Board (iSAQB), kennen zulernen.

Aktionen und Gewinnspiele

Unter allen Besuchern unseres Standes verlosen wir ein CPSA-Training Ihrer Wahl und geben jedem die Chance bei unserem Gewinnspiel „3-gewinnt“ tolle Preise wie Mahbouba Gharbis Buch „Basiswissen für Softwarearchitekten“ zu gewinnen.

Das erwartet Sie auf der OOP

Unter dem Motto „Into the Unknown“ bietet die OOP in bis zu 9 parallelen Tracks praxisnahe Sessions u.a. zu IT-Sicherheit, Architektur, Microservices, Software-Entwicklung, Business Agilität, AI, DevOps, Cloud, Domain-Driven Design und vielem mehr.

Die OOP ist der Treffpunkt von Mitarbeitern des Konzernumfelds, da die Konferenz die Verbindung zwischen Software und Business herstellt. Sowohl technische Experten (Architekten, Entwickler, Requirements-Engineers, Tester, etc.) als auch Projektleiter und IT-Führungskräfte erhalten einen exzellenten Blick über den aktuellen Stand des modernen Software-Engineering. Neben vielversprechenden Konzepten für zukünftige Herausforderungen werden auch in der Praxis bewährte Techniken diskutiert. Unter OOP-KONFERENZ.DE finden Sie detaillierte Informationen zur Konferenz und der Ausstellung.

Wir sind jetzt schon gespannt auf den Austausch mit Ihnen und freuen uns auf drei spannende Tage!

OOP 2019 – ITech Progress unter dem OOP Motto „Care for the Future“ mit dem Trendthema „Blockchain“ vertreten

OOP 2019 – ITech Progress unter dem OOP Motto „Care for the Future“ mit dem Trendthema „Blockchain“ vertreten

Mit Hochspannung erwarten wir die Konferenz, die die Verbindung zwischen Software und Business herstellt. Vom 21. – 25. Januar werden erneut die Türen des ICM in München geöffnet um einen exzellenten Überblick über den aktuellen Stand des modernen Software-Engineering zu erhalten. Sind Sie dabei?

ITech Progress ist mit großer Freude vom 22.- 24. Januar im ICM München präsent.

Unseren Vortrag zum Trendthema „Blockchain“ im Bereich Trends & Techniques, können Sie am Mittwoch, 23. Januar, von 14:30 Uhr bis 15:30 Uhr besuchen. In dem Vortrag erfahren Sie unter anderem wie Sie die Schwächen „Speicherplatz“ und „Berechtigungsmanagement“ der Blockchain-Technologie umgehen können.

Es würde uns sehr freuen, wenn wir Sie an unserem Stand mit der Nummer 3.8 im International Congress Center in München empfangen dürften. Ein freies Exemplar der neuen, dritten Auflage des Buchs „Basiswissen für Softwarearchitekten: Aus- und Weiterbildung nach iSAQB Standard zum Certified Professional for Software Architecture – Foundation Level“ wird an die ersten zehn Besucher als besonderes Präsent übergeben!

Wir sind jetzt schon gespannt auf den Austausch mit Ihnen und freuen uns auf drei spannende Tage!

„The Architecture Gathering 2018“ – Jetzt VIP-Tickets sichern!

„The Architecture Gathering 2018“ – Jetzt VIP-Tickets sichern!

Ein „Muss“ für Softwarearchitekten

 

Am 10 . Oktober ist es wieder soweit: The Architecture Gathering öffnet die Pforten für zwei spannende Konferenztage in München. Im Mittelpunkt der diesjährigen Veranstaltung steht die Softwarearchitektur als Erfolgsfaktor in diesen Zeiten des digitalen Wandels:

„Im Konzert von Digitalisierung und digitaler Transformation sind Softwarearchitekten Komponist und Dirigent zugleich. Sie geben den Takt vor für die einzusetzenden Technologien, Tools und Methoden. Sie priorisieren offene Themen und führen die relevanten Entscheidungen herbei. Sie komponieren die Struktur der Software aus den Anforderungen, arrangieren die laufenden Veränderungen, gewährleisten Qualität und Kompatibilität der Services. Je komplexer Software heute wird, desto größer werden Wert und Stellenwert der Architektur.“

In über 20 Fachvorträgen wird aus unterschiedlichen Perspektiven beleuchtet, was, wie und warum die Softwarearchitektur erfolgreich macht. ITech Progress ist nicht nur mit einem Informationsstand und einem Fachvortrag präsent. Als Mitglied im Programmkomitee konnte ITech Geschäftsführerin Mahbouba Gharbi in diesem Jahr unmittelbaren Einfluss auf das Veranstaltungsprogramm nehmen.

Sind Sie dabei? Wenn Sie Interesse, aber noch kein Ticket haben, machen Sie mit bei unserem Gewinnspiel: Sagen Sie uns über das Formular unten, warum Sie unbedingt bei der TAG2018 dabei sein möchten. Die Einsendungen werden von unserer Jury bewertet und die beiden besten Begründungen mit einem VIP-Ticket für das Architecture Gathering prämiert.

Viel Erfolg!

Teilnahmeformular

8 + 10 =

Teilnahmebedingungen und Datenschutz:

Zur Teilnahme am Gewinnspiel ist jede natürliche Person berechtigt, die mindestens 18 Jahre alt ist und nicht für die ITech Progress GmbH oder eines der Partnerunternehmen im Rahmen von The Architecture Gathering 2018 arbeitet. Die beiden Gewinner von je einem VIP-Ticket zur Veranstaltung werden bis zum 29.09.2018 anhand der eingesendeten Begründungen von einer internen Jury der ITech Progress GmbH ausgewählt und per E-Mail benachrichtigt. Mit diesem Datum endet das Gewinnspiel.

Vorname und Name, E-Mail-Adresse und Begründung der Teilnehmer werden zur Durchführung des Gewinnspiels auf dem Webserver von ITech Progress gespeichert. Die Teilnehmer am Gewinnspiel geben ihr Einverständnis, dass sie bis auf Widerruf von ITech Progress per E-Mail kontaktiert werden können, um auf bevorstehende Veranstaltungen oder Aktionen informiert zu werden. Der Widerruf kann jederzeit per E-Mail an Academy@itech-progress.com oder über den entsprechenden Link am Ende jeder erhaltenen E-Mail erfolgen.

Weitere Informationen zum Umgang mit Ihren Daten finden Sie in der Datenschutzerklärung auf dieser Website.

OOP 2018 – ITech Progress mit dem Trendthema „Blockchain“ vertreten

OOP 2018 – ITech Progress mit dem Trendthema „Blockchain“ vertreten

Mit Hochspannung erwarten wir eine rundum veränderte Konferenz für Software-Architektur vom 05. – 09. Februar in München, die OOP 2018. Sind Sie dabei?

ITech Progress ist mit einem neuen Messestand und einem erweiterten Team vom 06.- 08. Februar im ICM München präsent.

Den Reigen der Fachvorträge bereichert unser Vortrag zum Trendthema „Blockchain“ im Bereich Trends & Techniques. Im Mittelpunkt steht ein generalisierbarer Anwendungsfall: Ein Unternehmen möchte Geschäftsprozesse optimieren, Kosten senken und das Betrugsrisiko verringern, indem digitale Dokumente mit einem Poststempel versehen werden.

In gleich zwei spannenden Forumsvorträgen widmen wir uns dem Thema „Soft Skills“. Unser Referent Ali M. Akbarian ist bei vielen Schulungsteilnehmern der ITech Academy für seine Soft Skills-Trainings geschätzt und beliebt. „Sind Konflikte Hindernisse oder können sie als Chance genutzt werden?“ lautet der Titel des ersten Vortrags. In seinem zweiten Vortrag fragt er: Wie „hard“ analysieren und entwickeln Sie Ihre eigenen „Soft-Skills“.

Sie sind herzlich eingeladen, uns auf unserem Stand mit der Nummer 3.10 im International Congress Center in München zu besuchen. Ein freies Exemplar der neuen, dritten Auflage des Buchs „Basiswissen für Softwarearchitekten: Aus- und Weiterbildung nach iSAQB Standard zum Certified Professional for Software Architecture – Foundation Level“ wird an die ersten zehn Besucher als besonderes Präsent übergeben!

Wir sind jetzt schon gespannt auf den Austausch mit Ihnen und freuen uns, Sie unter den Anwesenden zu begrüßen.

Aktuelle Trends in der Softwarearchitektur – TAG 2017 in München

Aktuelle Trends in der Softwarearchitektur – TAG 2017 in München

München, 11.-12. Oktober 2017. Zum dritten Mal seit 2015 veranstaltet das iSAQB – International Software Architecture Qualification Board – das Architecture Gathering als Treffpunkt und Diskussionsforum rund um moderne Softwarearchitekturen. ITech Progress, der IT-Dienstleister und führende CPSA-Schulungsanbieter in Ludwigshafen ist auch in diesem Jahr mit einem eigenen Messestand dabei.

„Es gibt momentan eine Menge spannender Entwicklungen,“ freut sich CEO Mahbouba Gharbi. „Mit unserem neuen CPSA Advanced-Training „IMPROVE“ legen wir einen Schwerpunkt auf die Evolution und Verbesserung von Softwarearchitekturen. Das passt mit dem Themenschwerpunkt „Sanierung“ beim Architecture Gathering hervorragend zusammen.“

Die Keynotes mit Uwe Friedrichsen und Jörg Treiner lassen wieder interessante Insights erwarten. Am zweiten Tag, ab 10:30 Uhr, ist ITech-Consultant Torben Möller mit seinem Vortrag „DevOps für Softwarearchitekten“ vertreten. In seinem Konferenzbeitrag soll aufgezeigt werden, welchen Einfluss DevOps auf die Architektur haben und welche technischen Entscheidungen zukünftig von Architekten getroffen werden müssen.

Die weiteren Themen der Sessions, darunter Architektur für die Cloud, Agile Architekturen, Softwaresanierung, Microservices, Architekturbewertung und Sicherheit, Domain-Driven Design und weitere, dokumentieren zum einen die Aktualität der Veranstaltung, zum anderen zeigen sie deutlich, wie nahe ITech Progress mit seinem iSAQB CPSA-Schulungsprogramm am Puls der Zeit liegt. „Mit dem Foundation-Level und insgesamt 10 Advanced-Modulen decken wir mit unseren Trainings nahezu die gesamte Spannweite moderner Softwarearchitektur ab,“ erläutert Mahbouba Gharbi. „Sowohl bei aktiven Architekten als auch bei einer Vielzahl von Großunternehmen sind wir deshalb ein gefragter Partner und ein fester Bestandteil der Szene.“

ITech Progress wird an beiden Veranstaltungstagen für Fragen und Informationen am Messestand vertreten sein. Für interessanten Gesprächsstoff ist gesorgt. Besuchen Sie uns bei „The Architecture Gathering 2017“.

Wir freuen uns auf Sie.