Das Doppelpack für die moderne Architektur

Das Doppelpack für die moderne Architektur

Während die Skyline unserer Softwarewelt nach wie vor von Monolithen geprägt ist, hat sich der Trend zu flexiblen Architekturmodellen mit Microservices, Continuous Deployment, DevOps und hohen Automatisierungsgraden auf möglichst allen Ebenen inzwischen durchgesetzt. Und in der Tat: kompaktere, weitestgehend autarke Softwaremodule mit eigenen spezialisierten Teams bieten eine Menge Vorteile – von der Konzeption über Entwicklung und Testen bis in die Wartung. Verbesserte Stabilität, adaptive Reaktion auf veränderliche Anforderungen, Effizienz- und Kostenvorteile in der Weiterentwicklung sind Argumente, bei denen jedes Entscheiderherz höher schlagen sollte.

Aus architektonischer Sicht ist eine flexible Sortwarearchitektur allerdings leichter gesagt, als getan. Welche Methodik ist für mein Projekt die richtige? Anhand welcher Kriterien lassen sich Module zielführend abgrenzen? Wie kann ich von Anfang an vermeiden, dass sich bei zusätzlichen oder sich verändernden Anforderungen mit der Zeit der berühmt-berüchtigte Big Ball of Mud bildet?

Vorteile

  • Fokussierung auf die Fachlichkeit des Unternehmens
  • Vereinfachte Modularisierung in Microservices
  • Verbesserte Stabilität
  • Adaptive Reaktion auf veränderliche Anforderungen
  • Effizienz- und Kostenvorteile

Für viele Softwarearchitekten ist Domain Driven Design (DDD) die Antwort auf diese und andere gängige Fragestellungen im Vorfeld einer flexiblen Architektur. DDD setzt konsequent auf die Fachlichkeit, und die liegt im Business des Unternehmens begründet, nicht im technischen Jargon des Entwicklerteams. Aus dem Business heraus lassen sich bereits in frühen Phasen des strategischen Designs inhaltliche und funktionale Einheiten als Bounded Contexts separieren. Aber auch im taktischen Design können sich sinnvolle Modularisierungsoptionen ergeben. So bildet die Fachlichkeit letztendlich die Basis für die Abgrenzung der Microservices und die Herausbildung dedizierter Teams.

Architekten, die ihr Handwerk in diese Richtung entwickeln möchten, finden in den iSAQB-akkreditierten Trainings Flexible Architektur­modelle, Microservices & Self-Contained Systems (FLEX) und Domain Driven Design (DDD) ein starkes Doppelpack, in denen alle relevanten Grundlagen anschaulich und praxisnah vermittelt werden. In unserer ITech Academy zählt die Kombination von FLEX und DDD bereits seit über zwei Jahr zu den am stärksten nachgefragten, oft und gerne ergänzt durch das Modul Agile Softwarearchitektur (AGILA).

Developer documentation with PlantUML

Developer documentation with PlantUML

At one of our last night schools, I presented a new way of documenting IT systems in a development-oriented way. The Night Schools are our internal training events, in which a colleague alternately prepares and presents a current topic from the software architecture area for the team.

The Unified Modelling Language UML is the current standard for the documentation of static structures and dynamic processes in IT systems.  UML is also often used in architecture documentation.

However, UML does have its dark sides, as it is often created with complex modelling or drawing programs à la VISIO. The result of the modelling is then a series of Word or PDF files with embedded JPEG or PNG graphics. Developers, on the other hand, work with text files in a development environment that is often connected to a complex build pipeline and, if desired, can version and deploy all work results immediately. In this way, every change can be easily traced across all versions. Unfortunately, this approach fails with Office files, where each new version of a file is treated as an entirely new artifact. When modeling with UML, not only is there a media break, but the results of the work cannot be seamlessly integrated into the development pipeline. Plant-UML now jumps into this breach.

Die Idee von Plant-UML ist, mit Hilfe von einfachen Textdateien,

that use a specific Plant UML syntax, automatically generate UML diagrams and display them as PNG, SVG, or ASCII type. This is done interactively, so that the author can see the result of his work at the push of a button. On the Plant-UML Homepage you can easily try it out for free >> http://www.plantuml.com/plantuml/uml/. Supported are use case diagrams, class diagrams, sequence diagrams, activity diagrams, state machines, object diagrams, deployment diagrams, component diagrams and timing diagrams. All are defined using a simple syntax and automatically adopt the layout of the objects on the diagram. Nevertheless, a whole range of additional items can be used to make the UML diagrams even more meaningful. This ranges from configurable colors to legends and info boxes. What I like best is that Plant-UML can be integrated directly into the build process and that the UML diagrams can not only be inserted into ASCIIdoc documents, but that they are also generated anew with every build. This results in documentation that can be managed as easily and effectively as the source code itself. There is no media break.

Besides UML diagrams, Plant-UML can do even more: It is possible to describe database tables using entity relationship diagrams, to present new ideas in the form of mind maps and to describe work packages using work-breakdown diagrams (WBD). It is even possible to create project plans using Gantt diagrams as in MS Project. All these diagrams are defined just as easily with the help of text snippets. But the real highlight, in my opinion, is the possibility to create a wireframe of a surface from a text representation. Just give it a try and share your experience with us via the comments.

Axel Feix, Software Architekt & Managing Consultant bei ITech Progress

Großer Preis des Mittelstandes 2020 | Wir sind im Wettbewerb!

Großer Preis des Mittelstandes 2020 | Wir sind im Wettbewerb!

22. Mai 2020

Für den „Großen Preis des Mittelstandes 2020“ wurden 4.970 (2019: 5.399) kleine und mittelständische Unternehmen sowie wirtschaftsfreundliche Kommunen und mittelstandsfreundliche Banken nominiert.

Nachdem wir unsere unternehmensspezifischen Juryunterlagen in Form eines Fragebogens einreichten, erhielten wir vor ein paar Tagen die tolle Nachricht, dass wir als einer von 553 (2019: 758) die 2. Stufe des Wettbewerbs, die „Juryliste“, erreicht haben. Jetzt sind die zwölf Regionaljurys und die Abschlussjury bis zum 30. Juni damit befasst, die Besten zu ermitteln. Es bleibt spannend!

20. März 2020

Nur jedes tausendste Unternehmen Deutschlands erreicht die Nominierungsliste des “Großen Preis des Mittelstandes” und wir freuen uns auch dieses Jahr wieder ein Teil des Wettbewerbs, zu dem man sich nicht selbst bewerben kann, zu sein.

Die Nominierung,  gilt laut der Organisation als Eintrittskarte ins „Netzwerk der Besten“. Denn als einziger Wirtschaftspreis Deutschlands betrachtet der “Große Preis des Mittelstandes” nicht allein Zahlen, Innovationen oder Arbeitsplätze, sondern das Unternehmen als Ganzes und in seiner komplexen Rolle in der Gesellschaft.

    In den Juryunterlagen für den „Großen Preis des Mittelstandes” der Oskar-Patzelt-Stiftung werden unternehmensspezifische Angaben in fünf Kriterien erhoben:

    • Gesamtentwicklung des Unternehmens
    • Schaffung/Sicherung von Arbeits- und Ausbildungsplätzen
    • Innovation/Modernisierung
    • Engagement in der Region
    • Service/Kundennähe/Marketing

    “Der Mittelstand ist und bleibt ein Garant für Stabilität und Vertrauen in Deutschland. Den Nominierten und den Preisträgern beim … ‚Großen Preis des Mittelstandes‘ gratuliere ich herzlich. … Das haben Sie sich verdient.” sagte Dr. Wolfgang Schäuble, Bundestagspräsident, im Jahr 2017 als Bundesminister der Finanzen. “Der ‘Große Preis des Mittelstandes’ ist ein Aushängeschild für die angesehene Marke ‘Made in Germany’“ sagte Albrecht Gerber als Wirtschafts- und Energieminister Brandenburg. Und Barbara Stamm, Präsidentin des Bayerischen Landtages a.D., lobte: „Wer hier nominiert wurde, hat allein durch diese Auswahl bereits eine Auszeichnung 1. Güte erfahren.“ “Der von der Oskar-Patzelt-Stiftung vergebene ‘Große Preis des Mittelstandes’ ist deutschlandweit die begehrteste Wirtschaftsauszeichnung”, schrieb die WELT.

    Diese Nominierung ist ein großes Lob für uns und wir bedanken uns recht herzlich! Bis zum 15. April 2020 haben wir nun Zeit, aussagefähige Unterlagen zusammenzustellen und online einzureichen. Eine unabhängige Jury wird dann die Auswahl der Preisträger und Finalisten vornehmen. Die  Preisverleihungen finden im September statt, gefolgt von der Bundesgala im Oktober. 

     

    Anti Pattern: Golden Hammer

    Anti Pattern: Golden Hammer

     „Wenn mein einziges Werkzeug ein Hammer ist, sieht jedes Problem wie ein Nagel aus.“ – Abraham Maslow

    Beschreibung

    Ein goldener Hammer ist eine Art Wunderwaffe, ein bevorzugter Lösungsweg oder ein beliebtes Produkt, mit dem das Team viel Erfahrung hat und der irrtümlich als universell anwendbar angesehen wird. Alternativen werden kaum betrachtet.

    Auswirkungen

    Das Problem hierbei ist, dass die Lösung oder das Produkt nur scheinbar zu den gegebenen Anforderungen passen.

    Es kann unter Umständen passieren, dass das Produkt Teile des Designs oder der Erweiterbarkeit festlegt, indem z.B. nur Schnittstellen desselben Herstellers oder eines bestimmten Betriebssystems verwendet werden können. Der Einsatz einer bestimmten Lösung kann auch zu einer schlechteren Skalierbarkeit und Performanz führen als eine andere Lösung. Als Folge können die Kosten explodieren oder Termine nicht eingehalten werden.

    Lösung

    Hier ist ein Umdenken bei den Entwicklern und im Management erforderlich. Alternative Lösungsansätze und die hierbei entstehenden Vor- und Nachteile sollten ständig im Auge behalten werden. Es kann auch hilfreich sein, das Projektteam stärker zu diversifizieren, indem mehr Leute aus unterschiedlichen Firmen und anderen Fachgebieten eingestellt werden.

    Eine Weiterbildung durch Fortbildungen, Seminare, Bücher etc. hilft dabei, die Entwickler immer auf dem neusten Stand der Entwicklung zu halten, nicht nur im Bereich der Softwaretechnologie, sondern auch auf Organisationsebene.

    Bei unserer 3-tägigen Grundausbildung für Softwarearchitekten, dem Foundation Level Training, erhalten Sie das nötige Know How, um Architekturen für kleine und mittlere Systeme zu entwerfen und zu dokumentieren. Am Ende der Softwarearchitektur Schulung haben Sie das Rüstzeug, um problembezogene Entwurfsentscheidungen auf der Basis Ihrer vorab erworbenen Praxiserfahrungen zu treffen.

    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!