Design Patterns – Software pragmatisch und effizient gestalten

Training

Nur selten werden Entwurf und Realisierung einer Software ausschließlich aus deren Anforderungen abgeleitet. Stattdessen setzen Entwickler auf bewährten Erfahrungen auf, die sie in anderen Software-Projekten mit vergleichbaren Anforderungen gewonnen haben. Ein pragmatischer Ansatz, der sicherstellt, dass eine Software-Architektur sowohl tragfähig und evolvierbar ist, als auch effizient von agilen Teams umgesetzt werden kann.

Design Patterns dokumentieren solch bewährte Erfahrungen. Sie beschreiben für eine Vielzahl immer wiederkehrender Problemstellungen, wie existierende und sich im Einsatz befindende Systeme strukturiert und realisiert sind, um diese Probleme zu meistern. Durch die gezielte Nutzung von Design Patterns können Entwickler daher bei der Erstellung ihrer eigenen Software auf den Erfahrungen der gesamten Entwickler-Community aufsetzen – und auf diese Weise viele Probleme in deren Entwurf und der Realisierung einfach vermeiden.

Erfolgreiche Systeme enthalten daher sehr viele Design Patterns – gleich ob dies moderne Microservice und IoT Anwendungen sind, klassische Real-Time Embedded Systeme oder auch Altsysteme, die trotz aller technischen Fortschritte eine langlebige Architektur aufweisen. Der erfolgreiche Einsatz von Design Patterns in der Software-Entwicklung verlangt jedoch mehr als nur die Kenntnis einzelner Patterns. Notwendig ist vielmehr eine durchgängige Methodik zu deren Auswahl, Integration in einen bestehenden Entwurf oder Entwicklungsstand, und ihre adäquate Implementierung. Zusätzlich sind solide Kenntnisse über die Design Patterns notwendig, die den Plattformen und Paradigmen zu Grunde liegen, mit denen ein Software-System gestaltet ist.

Anhand von Vortrag, Diskussionen, einer realen Fallstudie und Übungen, welche an den eigenen Aufgabenstellungen erfolgen, vermittelt diese Schulung einen Überblick über den effektiven Einsatz von Design Patterns bei der Erstellung moderner Software. Von einer Einführung in das Konzept der Design Patterns, über eine Methodik zur Entwicklung von Software, bis hin zu einer Vorstellung und Diskussion wichtiger Patterns für verschiedenste Themenstellungen aus dem Umfeld der Teilnehmer.

Inhalte des Trainings:

  • Einführung in Patterns: Motivation, Definition, Struktur, Eigenschaften
  • Methodik zur Software-Entwicklung mit Patterns
  • Fallstudie: Command und Request Handling für lose gekoppelte Dienste
  • Übungen in Kleingruppen anhand ausgewählter Themenstellungen der Teilnehmer
  • Vorstellung und Diskussion ausgewählter Patterns zu SOA/Microservices, Embedded, Verteilung und Nebenläufigkeit, Schnittstellengestaltung und Komponentenstrukturierung sowie Service-Interaktion – mit Fokus auf die Themenstellungen der Teilnehmer
  • Überblick über die aktuell verfügbare Pattern-Literatur

Warum Sie dieses Training nicht verpassen sollten

  • Nach dem Training wissen Sie, was Design Patterns und deren konzeptionelle Grundlagen sind.
  • Sie kennen die Möglichkeiten und Grenzen des systematischen Einsatzes von Design Patterns bei der Software-Entwicklung und haben einen Überblick über wichtige Patterns für ihre projektspezifischen Anwendungsgebiete.
  • Sie sind in der Lage, Design Patterns tragfähig und effizient bei der Entwicklung ihrer Software-Systeme einzusetzen.
  • Sie lernen anhand einer Fallstudie, wie Sie Patterns konkret anwenden können.

Methodik

Die Vermittlung der Lerninhalte erfolgt interaktiv in einer Mischung aus Vortrag, Fallstudien, sowie Diskussion und Übungen mit den Teilnehmern an den eigenen Projekten. Die Teilnehmer sammeln so Erfahrungen im systematischen Umgang mit Design Patterns und bekommen konkrete Anregungen, wie sie Design Patterns zielführend in ihrer täglichen Arbeit einsetzen können und welche Herausforderungen dabei entstehen.

Zielgruppe

  • Software-Architekten
  • Software-Entwickler mit Entwurfsverantwortung
  • Technische Projektleiter

Voraussetzungen

Solide Kenntnisse in der Software-Entwicklung

Ihr Trainer

Frank Buschmann ist Senior Principal Engineer für Software Engineering und Architektur bei Siemens Corporate Technology in München. Seine aktuellen Arbeitsschwerpunkte sind die Digitalisierung industrieller Automatisierungssysteme sowie Forschung zu selbstorganisierenden Cyber-Physical Systems und DevOps in Industrieanwendungen. Frank hat in seiner beruflichen Laufbahn die Architekturen verschiedenster Anwendungen in der Betriebswirtschaft, Telekommunikation und Automatisierung gestaltet und verantwortet.

Frank ist einer der weltweit anerkanntesten Experten für Software-Architektur und Design Patterns. Er ist Co-Autor der preisgekrönten “Pattern-Oriented Software Architecture” Buchserie, die im Verlag John Wiley and Sons erschienen ist. Auf internationalen Konferenzen ist Frank renommierter Sprecher zu den Themen Software-Architektur, Software-Engineering und Design Patterns. Frank war über mehrere Jahre Mitglied des ANSI C++ Standardisierungs-Gremiums.

Dates & Registration

  • Date: -
    City: München
    Venue: innoQ Deutschland GmbH, Büro München
    Trainer: Frank Buschmann
    Price: EUR 1,799.00 zzgl. 19% MwSt.
Book now!