Zum Inhalt springen

Doppelpack: Hexagonal Architecture und Mutation Testing

Foto von Oliver B. Fischer
Hosted By
Oliver B. F.
Doppelpack: Hexagonal Architecture und Mutation Testing

Details

Am 6. März haben wir einen Doppelpack an Vorträgen zusammen mit unseren Partner, der Eurospace AG.

Die Vorträge

  1. Hexagonale Architektur: Robuste Software dank Schnittstellen statt Schichten (Sven Woltmann)
  2. Mutationstests - wieso, weshalb, warum? (Dehla Sokenou)

Ort
Europace AG, Heidestr. 8

Agenda
Tür auf 18:30, Erster Vortrag 19:00

Hexagonale Architektur: Robuste Software dank Schnittstellen statt Schichten
Wir alle kennen diese Situation: Je älter und größer eine Anwendung wird, desto aufwendiger und teurer wird es, sie zu erweitern und zu warten. Die verbreitete Schichtenarchitektur ist als Lösungsansatz unzureichend: Direkte und indirekte Abhängigkeiten aller Schichten zur Datenbank und anderen Infrastrukturkomponenten führen oft zu einer Aufweichung der Schichtengrenzen und einer Verflechtung von technischem und fachlichem Code.
Hexagonale Architektur rückt die Geschäftslogik ins Zentrum, und technische Details werden als Adapter hinter Schnittstellen (Ports) isoliert. Fachlicher und technischer Code kann so unabhängig voneinander entwickelt und getestet werden.
Ausgehend von den Zielen einer Softwarearchitektur und einem kritischen Blick auf die Schichtenarchitektur, schauen wir uns die hexagonale Architektur im Detail an. Ihr erfahrt, wie die Dependency Rule sicherstellt, dass es keine Abhängigkeiten von fachlichem zu technischem Code gibt und wie der Anwendungskern trotzdem auf die Infrastruktur zugreifen kann. Erfüllt die hexagonale Architektur die Ziele einer Softwarearchitektur? Welche Herausforderungen bringt sie mit sich? Wie unterscheidet sie sich von Onion und Clean Architecture, und welche Synergien ergeben sich im Zusammenspiel mit Microservices und Domain-Driven Design?
Mit neuem Wissen gerüstet, könnt ihr die Qualität und Lebensdauer eurer Softwareprojekte steigern und in Zukunft schneller auf neue Anforderungen reagieren.

Mutationstests - wieso, weshalb, warum?
Mutationstests sind eigentlich ein altes Konzept, das lange in einer Schublade lag. Ein Grund für den zurückhaltenden Einsatz war der hohe Rechenaufwand. Mit verbesserten Werkzeugen und der heute verfügbaren Rechenleistung sind sie inzwischen dabei, sich als fester Teil der Softwareqqualitätssicherung zu etablieren.
Die Integration in eine Buildpipeline ist einfach, aber verlangsamt diese auch enorm. Wenn dann niemand auf das Ergebnis schaut oder es interpretieren kann, helfen sie nicht.
Im Vortrag wird die grundlegende Technik hinter Mutationstests erläutert und anhand von Beispielen aus einem Kotlin-Projekt gezeigt, welche zusätzlichen Findings Mutationstests aufdecken können, selbst wenn der Code zu nahezu 100% durch Tests ist.

Dehla Sokenou
Dr.-Ing. Dehla Sokenou promovierte 2005 an der TU Berlin über UML-basiertes Testen. Sie fühlt sich in allen Phasen der Softwareentwicklung zu Hause, einen besonderen Schwerpunkt bilden allerdings auch weiterhin alle Themen rund um Qualitätssicherung und Testen. Bei der WPS ist sie als Test- und Qualitätsmanagerin sowie Softwarearchitektin tätig. Daneben ist sie Sprecherin der GI-Fachgruppe Test, Analyse und Verifikation von Software (TAV) und im Sprechergremium des Arbeitskreises Innovative Testmethoden.

Sven Woltmann
Sven Woltmann ist Java-Entwickler der ersten Stunde. Er arbeitet als unabhängiger Entwickler, Trainer und Kursleiter mit Schwerpunkt auf skalierbaren Unternehmensanwendungen, Optimierung von Algorithmen, Clean Code und Clean Architecture. Er teilt sein Wissen über Java, Architektur, Algorithmen und Datenstrukturen in Videos, seinem Newsletter und seinem Blog https://www.happycoders.eu/.

Photo of Java Usergroup Berlin-Brandenburg group
Java Usergroup Berlin-Brandenburg
Mehr Events anzeigen
Europace AG
Heidestraße 8 · Berlin, BE