Agenda of the Clean Code Days 2017

Clean Code Embedded Testing
9:00 am Opening of the Clean Code Days

Opening of the Embedded Testing

9:05 am Opening keynote: Von Clean Code zu Clean Software

Dr. Elmar Jürgens, CQSE GmbH
Opening keynote: Exzellenz im Agile Testing für medizinische IoT-Geräte

Dr. Damiano Guazzini, Biotronik SE & Co. KG
10:15 am Keynote: Use the power of the language

Andreas Fertig, Philips Medizin Systeme
Keynote: Traum und Wirklichkeit beim automatisch erzeugten Unit-Test und bei Concurrency-Tests

Stephan Grünfelder, Riedel Communications Austria GmbH
11:15 am Coffee break and visiting of the exhibiton

Clean Code

Clean Code

Regression test

Integration test

11:45 am M1.1 Mit Ideen der funktionalen Programmierung CleanCode erweitern

Remy Loy, generic.de AG
M2.1 Cleaner Code with Kotlin

Philipp Hauer, Spreadshirt
M3.1 Effiziente Absicherung von Software Qualität durch Modell Based Test Driven Development

Andreas Willert, Willert Software Tools GmbH
M4.1 Aus einem reduzierten UML- Modell gleichzeitig SW-Code und Testfälle erzeugen - Ergebnisse des Embedded4You- Kooperationsprojekt ReTeC (Reduction of Test Complexity)

Stephan Kösters, AFRA GmbH
12:30 pm Lunch break / Lunch Buffet and visiting of the exhibiton

Clean Code

Clean Code

Regression test

Static code analysis

1:30 pm M1.2 Was ein Repository uns verraten kann

Ruben Straube, TNG Technology Consulting GmbH
M2.2 Software engineering through the eyes of a role playing gamer

Christoph Menzel, Method Park Engineering GmbH
M3.2 Die automatische Reduzierung Technischer Schulden in Legacy-Codebasen

Ingo Nickles, Vector Software
M4.2 Risiko Binärdatei? – Einsatz von Werkzeugen zur statischen Analyse nicht nur für den Quellcode

Royd Lüdtke, Verifysoft Technology GmbH
2:15 pm Time for room change
2:25 pm M1.3 Clean coders travel in banks

François Lorioux, LOSYPAMO
M2.3 Clean Code for the Front End

Mathias Ahrens, TNG Technology Consulting GmbH
M3.3 Testautomatisierung - "Hardware in the Loop"

Valerii Kebenko, seca gmbh & co.kg
M4.3 Security durch statische Source Code Analyse für kleinere eingebettete Systeme

Frank Büchner, Hitex GmbH
3:10 pm Coffee break and visiting of the exhibiton

Clean Code

Clean Code

Use cases Embedded Testing

Unit Testing

3:40 pm M1.4 Typen in Java mit Interfaces und Unit Contracts - ein SOLIDer Ansatz

Hagen Buchwald and Dr. Lars Alvincz, andrena objects ag
M2.4 Integration Operation Segregation Principle (IOSP) in practise

Stefan Hock, PTV Group
M3.4 Absicherung digitaler Sensorschnittstellen in sicherheitskritischen Anwendungen

Daniel Heinrich, iSyst GmbH
M4.4 Static Checking & Dynamic Testing of Simulink®/Stateflow® Models Made Easy

Evgeni Verbitski, TechCoaching GmbH
4:25 pm Time for room change
4:35 pm M1.5 Clean Code - Vorteile Refactoring

Roland Golla, Entwicklungshilfe NRW
M2.5 Clean Code und technische Schuld

Michael Kaufmann, Alegri International Services GmbH
M3.5 Simulationsbasiertes Testen von sicherheitskritischer Software auf Multicore Controllern

Prof. Dr.-Ing. Peter Fromm, Darmstadt University of Applied Sciences
M4.5 Funktionale Sicherheit mit automatisierten Softwaretests

Wolfram Kusterer, QA Systems GmbH
5:20 pm Time for room change
5:30 pm Evening keynote: Implementing the Clean Architecture

Jeroen De Dauw, Wikimedia Deutschland e.V.
M3.6 HW/SW in the Desk Loop

Andreas Kreß, HOOD GmbH
M4.6 Effizienter Test von Software-Varianten

Michael Wittner, Razorcat Development GmbH
from
6:30 pm
Get together

Excellent networking with participants, speakers and exhibitors
from
7:00 pm
Coding Dojo

Ralf Schoch

Subject to change

When using a smartphone please change to landscape mode to see the whole agenda

Von Clean Code zu Clean Software

Speaker: Dr. Elmar Jürgens, CQSE GmbH

Day and time: June 21st 2017, 9:05 am - 10:05 Uhr am

Abstract: Software umfasst mehr als Code. Auch Skripte, Modelle, Schemata, Architekturen, usw. wollen gepflegt werden, oft von unterschiedlichen Teams. Passen Architektur einer Anwendung und Kommunikationsstrukturen ihres Entwicklungsteams nicht zueinander, führt das zu Problemen. Sowohl die Architektur, als auch die Teamorganisation entwickeln sich jedoch oft unabhängig voneinander weiter. Wie können wir früh merken wenn Probleme auftreten, um rechtzeitig reagieren zu können?

Im Vortrag stelle ich moderne Analysetechniken vor, die uns hierbei unterstützen. Die Analysen beziehen dabei eine Vielzahl von Daten ein, die wir in der Software-Entwicklung produzieren: Von Code, über Versionshistorien, bis hin zu Traces und Ausführungsinformationen aus Test- und Produktionssystemen. Dadurch erlauben sie faktenbasierte Entscheidungen in einem Umfeld, in dem gerade in Krisensituationen sonst oft emotionsgeladene Diskussionen geführt werden. Ich stelle im Vortrag sowohl die Analysen, als auch Fallstudien und Beispiele aus 10 Jahren Praxiseinsatz vor. Dabei gehe ich auf Beispiele aus kommerzieller Software und Open-Source Systemen ein. Außerdem stelle ich dar, welche der Analysen wie einfach im eigenen Projekt eingesetzt werden können, und auch, wo ihre Grenzen liegen.


Dr. Elmar Jürgens, CQSE GmbHDr. Elmar Jürgens hat über statische Codeanalyse promoviert und für seine Doktorarbeit den Software-Engineering-Preis der Ernst Denert-Stiftung erhalten. Er ist Mitgründer der CQSE GmbH und begleitet seit acht Jahren Teams bei der Verbesserung ihrer Qualitätssicherungs- und Testprozesse. Juergens spricht regelmäßig auf Konferenzen wie dem QS-Tag, W-JAX, JAX, OOP, Teamconf, DWX, ICSE, CSMR, SQD oder den XP Days. Er wurde von den Teilnehmern zum besten Sprecher der Clean Code Days 2014, der Software Quality Days 2015, dem Java Forum 2015 und dem QS-Tag 2016 gewählt. Elmar Jürgens wurde 2015 zum Junior Fellow der Gesellschaft für Informatik ernannt.

Use the power of the language

Speaker: Andreas Fertig, Philips Medizin Systeme

Day and time: June 21st 2017, 10:15 am - 11:15 am

Abstract: Programmieren ist heute ein leichtes. Es gibt dutzende Programmiersprachen und viele Möglichkeiten sie zu erlernen. Ein wichtiger Teil welcher hier oft in Vergessenheit gerät, ist der zweite Teil des Wortes Programmiersprache: die Sprache. Meist konzentrieren wir uns darauf den Teil "programmieren" zu erledigen. Im Embedded Umfeld haben Programme eine Lebensdauer von vielen Jahren. Das fehlerfreie Programmieren ist deshalb eine wichtige Aufgabe.
Oft vergessen ist, dass es beim Programmieren noch ein weiteres wichtiges Ziel gibt: die Kommunikation mit den anderen Entwicklern.
Dieses Ziel findet sich im Wort "Sprache" wieder. Mithilfe der Sprache können wir unsere Intention über Jahre hinweg kommunizieren. Die
Fehlersuche wird unterstützt und das bestehende Programm lässt sich leichter erweitern. Mit C++1x ergeben sich neue Möglichkeiten unsere Ausdrucksweise weiter zu verbessern.


Andreas Fertig, Philips Medizin SystemeAndreas Fertig holds an M.S. in Computer Science from Karlsruhe University of Applied Sciences. Since 2010 he has been a software developer and architect for Philips Medical Systems focus on embedded systems. He has profound practical and theoretical knowledge of C++ at various operating systems. He also works as a trainer and develops various Mac OS X applications.

Implementing the Clean Architecture

Speaker: Jeroen De Dauw, Wikimedia Deutschland e.V.

Day and time: June 21st 2017, 5:30 pm - 6:30 pm

Abstract: You have very likely heard of Hexagonal Architecture, Onion Architecture or the Clean Architecture. While talk about this family of architectures is common, it can be hard to find good real-world examples. In this presentation I tell you the story of how we, at Wikimedia Deutschland, wrote an application adhering to the Use Case approach of the Clean Architecture. This includes an introduction to the key concepts of the Clean Architecture and an overview of the most important lessons we learned during implementation. After the presentation you will be able to look at our code on GitHub which is fully open source.


Jeroen De Dauw, Wikimedia Deutschland e.V.I'm a Software Craftsmanship advocate best known for my contributions to Wikidata and Semantic MediaWiki, and my maintenance of various open source projects.

Mit Ideen der funktionalen Programmierung CleanCode erweitern

Speaker: Remy Loy, generic.de AG

Vortragsart: Methods report

Level: Beginner

Day and time: June 21st 2017, 11:45 am - 12:30 pm

Abstract: Die Clean Code Prinzipien der fünf Grade haben verschiedene Wurzeln. Einige sind universell, andere hingegen haben ihre Ursprünge in der objektorientierten Programmierung. Im Rahmen dieses Vortrags wollen wir versuchen, ob wir der Liste noch weitere Prinzipien hinzufügen können. Wir machen einen kleinen Exkurs in die funktionale Programmierung und prüfen wie sich die dabei gefundenen Prinzipien eignen, die Liste der bekannten Prinzipien von Clean Code zu ergänzen.


Remy Loy, generic.de AGRemy Loy ist Softwareentwickler aus Leidenschaft und hat auch nach über 10 Jahren Berufserfahrung nie die Begeisterung für neue Themen verloren.
Aktuell liegt sein Schwerpunkt auf der Funktionalen Programmierung. Dabei überträgt er sein gewonnenes Wissen auf die Entwicklung nach Clean Code Development.

Cleaner Code with Kotlin

Speaker: Philipp Hauer, Spreadshirt

Vortragsart: Methods report

Level: Advanced

Day and time: June 21st 2017, 11:45 am - 12:30 pm

Abstract: Die JVM-Sprache Kotlin ist Java deutlich überlegen. Sie vermeidet eine signifikante Menge an Boilerplate, verhindert gängige Fehler durch kluges Sprachdesign und ist obendrein auch noch besser lesbar. Zusätzlich ermutigen die Sprachkonstrukte den Entwickler zu einem besseren Softwaredesign. Das klingt doch alles sehr nach Clean Code! Tatsächlich ermöglicht es Kotlin, einfacher Clean Code zu schreiben. Oftmals geschieht dies fast wie von selbst. Aber Kotlin ist kein Allheilmittel. Der Entwickler ist am Ende immer noch selbst gefordert, die Prinzipien von Clean Code einzuhalten. In diesem Talk wird gezeigt, wie Kotlin dabei helfen kann, Clean Code zu schreiben und was es dabei zu beachten gibt.


Philipp Hauer, SpreadshirtPhilipp Hauer arbeitet als Software Engineer bei Spreadshirt in Leipzig und beschäftigt sich dort mit skalierbaren Web-Architekturen und Microservices. Er begeistert sich für Kotlin, Clean Code und JVM-basierter Webentwicklung. Darüber hinaus betreibt Philipp einen Blog.

Was ein Repository uns verraten kann

Speaker: Ruben Straube, TNG Technology Consulting GmbH

Vortragsart: Methods report

Level: Beginner

Day and time: June 21st 2017, 1:30 pm - 2:15 pm

Abstract: Code ist nicht nur eine Sammlung von Anweisungen, sondern auch ein soziales Produkt. Wäre es nicht toll, wenn es ein Tool gäbe, das sowohl die Evolution eines Programms über die Zeit dokumentiert als auch die dazu notwendige Kommunikation?

Gute Neuigkeiten: Dieses Tool gibt es, und ihr benutzt es vermutlich schon. Wir geben eine Übersicht, welche Metadaten ein Repository beinhaltet, was diese uns über den gespeicherten Code und das daran arbeitende Team erzählen und was wir mit diesen Informationen zum Beispiel in Code Reviews oder in Retrospektiven anstellen können.

Die vorgestellten Methoden, vorrangig aus Adam Tornhills Buch “Your Code as a Crime Scene”, sind unabhängig von einzelnen Programmiersprachen und auch von einzelnen Versionskontrollsystemen, wobei wir uns im Vortrag aber an Git halten.


Ruben Straube, TNG Technology Consulting GmbHRuben ist seit 2013 bei TNG. Zusätzlich zu seinen Aufgaben in agiler Softwareentwicklung steckt er viel Herzblut in die Prozesse darum herum. Er beteiligt sich regelmäßig an Treffen der Münchener Softwerkskammer und bringt die Prinzipien von Software Craftsmanship in seine tägliche Arbeit ein.

Software engineering through the eyes of a role playing gamer

Speakers: Lutz Marquardt and Frank Blendinger, Method Park Engineering GmbH

Vortragsart: Methods report

Level: Beginner

Day and time: June 21st 2017, 1:30 pm - 2:15 pm

Abstract: Der Vortrag stellt den Zuhörern typische Situationen aus dem Alltag der Software-Entwicklung vor. Angelehnt an das Setting eines klassischen Pen-and-Paper Rollenspiels hat das Publikum die Möglichkeit selbst zu entscheiden, wie es in den jeweiligen Situationen reagieren möchte, und bestimmt so den Verlauf des Vortrags maßgeblich mit. Je nach Entscheidung wird anschließend analysiert, welche Auswirkung diese Entscheidung hat, inwiefern sie negative Konsequenzen mit sich bringen kann und wie man diesen entgegenwirkt.

Der Themenbereich dieses Rollenspiels ist naturgemäß sehr weitläufig. So umfasst er zum einen technische Aspekte, wie beispielsweise die Bedeutung von Unit Tests. Aber auch der Umgang mit organisatorischen Fragestellungen und die Wichtigkeit von Soft Skills werden behandelt. Die Herausforderung, wie auf kleine bis große Änderungen der Anforderungen während eines Sprints reagiert werden kann, ist hierfür nur ein Beispiel.


Lutz Marquardt, Method Park Engineering GmbHLutz Marquardt hat sein Diplomstudium im Fachbereich Elektrotechnik an der Technischen Universität Kaiserslautern absolviert. Im Anschluss arbeitete er drei Jahre lang als wissenschaftlicher Mitarbeiter der Universität Erlangen-Nürnberg im Bereich digitale Audiosignal-Verarbeitung, sowohl in der Lehre als auch im Rahmen eines EU-geförderten Forschungsprojekts. Drei weitere Jahre entwickelte er am Fraunhofer IIS komplexe Signal-Verarbeitungsalgorithmen zur akustischen Echo-Unterdrückung für VoIP-Anwendungen. 2013 wechselte er aus dem wissenschaftlichen Umfeld mit Schwerpunkt Prototypen-Entwicklung zu Method Park und unterstützt dort als Software Engineer die industrielle Entwicklung medizintechnischer Produkte, vornehmlich in der Sprache C++. Zu seinen weiteren Tätigkeiten zählt die Ausarbeitung und Durchführung interner Schulungen zum Thema Clean Code.

Frank Blendinger, Method Park Engineering GmbHFrank Blendinger ist seit 2006 im IT-Bereich unterwegs und bei Method Park als Software Engineer tätig. Sein Diplomstudium im Fachbereich Informatik hat er an der Friedrich-Alexander-Universität Erlangen-Nürnberg absolviert. Er interessiert sich insbesondere für Themen aus dem Bereich des Software Craftsmanship - seien dies nun Clean Code, agile Prozesse oder moderne Ansätze zum Thema Test und Automatisierung. Bei seiner Arbeit in Softwareprojekten - meist im Bereich der Medizintechnik - versucht er gerne auch seine Kollegen von diesen Ideen zu begeistern. Sein aktueller Schwerpunkt ist die Entwicklung moderner Webanwendungen.

Clean coders travel in banks

Speaker: François Lorioux, LOSYPAMO

Vortragsart: Use case

Level: Advanced

Day and time: June 21st 2017, 2:25 pm - 3:10 pm

Abstract: When a small coders team gets the mission to write a web card portal bank this is the beginning of a challenge. We will see how applying clean code practices and evolving architecture made this challenge a successful story. Be prepared to hear something about clean code and clean architecture, DDD, refactoring, design patterns and practices.


François Lorioux, LOSYPAMOI am a team leader and architect in a subsidiary of a German software company that provides software for the saving banks (Sparkassen). I am currently in charge of a web portal for a card management system. I have been working for 20 years with clean architecture on long term projects and I am always found of sharing my experience about software quality.

Clean Code for the Front End

Speaker: Mathias Arens, TNG Technology Consulting GmbH

Vortragsart: Methods report

Level: Beginner

Day and time: June 21st 2017, 2:25 pm - 3:10 pm

Abstract: Any modern web project has piles of front end code. Thousands of lines.
How can we keep it under control? What is clean CSS - does that even exist? What kind of JavaScript patterns can scale in a project with dozens of developers, or a fluctuating team?
This talk provides solutions to common problems and also effective best practices to solve the challenges unique to front end code.


Mathias Arens holds a masters degree in physics from the University of Cambridge and has previously worked at the European Space Agency and the biophysics department of the TU Munich. He is now a senior consultant at TNG Technology Consulting GmbH and works in the e-commerce and media industry. A full stack developer on principle, his focus is on front end and the user's experience.

Typen in Java mit Interfaces und Unit Contracts - ein SOLIDer Ansatz

Speakers: Hagen Buchwald and Dr. Lars Alvincz, andrena objects ag

Vortragsart: Methods report

Level: Advanced

Day and time: June 21st 2017, 3:40 pm - 4:25 pm

Abstract: Clean Code propagiert das aktive Einbeziehen der abstrakten Ebene in die Programmierung. Um es mit den Worten von Ron Jeffries, Autor von Extreme Programming Installed zu sagen: "Abstraction often calls my attention to what‘s really going on". Ron Jeffries definiert Clean Code für sich als "reduced duplication, high expressiveness, and early building of simple abstractions: That‘s what makes clean code for me."

Einen Hinweis, wie dieses "early building of simple abstractions with high expressiveness" in der Clean Code Programmierung mit Java umgesetzt werden kann, gibt Joshua Bloch in seinem Buch Effective Java: "If you get into the habit of using interfaces as types, your program will be much more flexible." Und er präzisiert: "Use interfaces only to define types. It is inappropriate to define an interface for any other purpose.“ Diese Sicht ist selbst für fortgeschrittene Java-Entwickler ungewohnt.

Der Vortrag zeigt, wie Abstraktionen in Form von Typen in der Java-Programmierung helfen, die SOLID-Kriterien leichter zu erfüllen. Die Grundidee dahinter: Klassen sind Implementierungen Abstrakter Datentypen (ADT). Abstrakte Datentypen bestehen aus vier Elementen: Typname, abstrakten Methoden, Vorbedingungen und Nachbedingungen jeder Methode (inklusive Typinvariante).

In Java können Abstrakte Datentypen in Form von Interfaces und ihrer zugehörigen Unit Contracts umgesetzt werden. Anhand einer Programmier-Demonstration wird veranschaulicht, wie der Test Driven Development (TDD) Ansatz genutzt werden kann, um schnell und systematisch einen Unit Contract für ein Interface zu entwickeln.
Abschließend wird verdeutlicht, wie das Denken in Typen in Java dabei unterstützt, die SOLID-Kriterien konsequent zu erfüllen.


Hagen Buchwald, andrena objects agChristoph Menzel ist bereits seit 2011 Teil des Method Park Teams und mittlerweile als Senior Software Engineer tätig. Seine Themenschwerpunkte sind agile Entwicklungsmethoden und die Testautomatisierung. Daraus ergeben sich auch seine Tätigkeitsfelder, so unterstützt er als agiler Coach und zertifizierter Scrum Master seine Kunden bei der Einführung von Scrum oder bei der Optimierung von Entwicklungsprozessen. Außerdem hält er hands-on Workshops zu Themen wie Unit Tests, Clean Code oder Continuous Integration & Delivery. Darüber hinaus begleitet und unterstütz Christoph Menzel seine Kunden auch aktiv bei der Entwicklung von Software und engagiert sich beim Software Engineering Camp Erlangen.

Dr. Lars Alvincz, andrena objects agLars Alvincz hat an der TU Berlin im Bereich Compilerbau/Künstliche Intelligenz promoviert. Seit 2010 unterstützt er andrena objects als Software-Entwickler und Coach. In verschiedenen Kundenprojekten hat er den Einsatz agiler Entwicklungspraktiken begleitet und vorangetrieben. Zentrales Thema dabei ist in der Regel die Etablierung der Praktiken des Extreme Programmings, wie testgetriebene Entwicklung oder effizientes Testen gemäß der Testpyramide.

Integration Operation Segregation Principle (IOSP) in practise

Speaker: Stefan Hock, PTV Group

Vortragsart: Use case

Level: Advanced

Day and time: June 21st 2017, 3:40 pm - 4:25 pm

Abstract: Ralf Westphal propagated the Integration Operation Segregation Principle (IOSP) in several articles:
http://ralfw.de/2015/11/tests-als-evolutionaere-kraft/
http://blog.ralfw.de/2013/04/software-fraktal-funktionale.html

But how to use it in pratise?
The speaker talks about refactoring in brown field projects and strict implementation in the virgin ones. As a help attributes were added to the code and tests were written (of course!). Both combined are monitored by a self developed code coverage tool. But how to take the colleagues on board?


Stefan Hock, PTV Group* geboren 1973, verheiratet, zwei Töchter
* Studium an der TU Darmstadt
* Abschluss Dipl.Ing. Elektrische Energietechnik
* Schwerpunkte: Regenerative Energien und Elektrische Bahnen
* 8 Jahre Softwareingenieur bei der CSA GmbH in Teltow
* seit 2007 Senior Software Developer bei der PTV Group in Karlsruhe

Ich beschäftige mich seit Jahren mit dem Thema Clean Code und habe gewisse Freiheiten, im Team dieses voranzutreiben. Das heißt, ich bin der Multiplikator, der mittels Vortragen und Vorleben die Kollegen sensibilisiern soll.

Clean Code - Vorteile Refactoring

Speaker: Roland Golla, Entwicklungshilfe NRW

Vortragsart: Use case

Level: Einstieger

Day and time: June 21st 2017, 4:35 pm - 5:20 pm

Abstract: Welches sind die ersten Schritte in einem bestehenden Projekt, um mithilfe von Clean Code die Software-Qualität zu steigern? Die Hauptthemen sind “Code Standard”, “Code Konvetionen”, “Code Refactoring” und natürlich “Clean Code”. Der Talk ist sehr unterhaltsam und integriert das Publikum. Der Fokus liegt dabei auf dem großen Gewinn für Firmen bei einem regelmäßigen wöchentlichen Code Refactoring. Zielgruppe sind Webentwickler und Entscheider.


Roland Golla, Entwicklungshilfe NRWDer 2003 ausgebildete Fachinformatiker für Anwendungsentwicklung mit dem Schwerpunkt PHP-Backend-Entwicklung war viele Jahre als Senior Webdeveloper und Lead Developer für große CMS-Portalen und umsatzstarke eCommerce-Lösungen tätig. Seit 2013 liegen seine Arbeitsschwerpunkte im Clean Code und in der Software-Qualität.

Eingesetzte Technologien sind u. a. Backend PHP Fullstack Frameworks Symfony und Zend. Ergänzend dazu sehr gute Fähigkeiten in AngularJS, NodeJS und Responsive Design. Eingesetzte Testframeworks sind PHPUnit für PHP Code und DalekJS für automatisiertes Frontend Testing.

Zitat: “Mit den PHP-Schulungen der ‘Entwicklungshilfe’ geben wir Web-Entwicklern die Möglichkeit, die Lerninhalte sofort eigenhändig am Rechner umzusetzen. Hands-on ist für uns hier also die oberste Maxime.”

Clean Code und technische Schuld

Speaker: Michael Kaufmann, Alegri International Services GmbH

Vortragsart:

Level: Advanced

Day and time: June 21st 2017, 4:35 pm - 5:20 pm

Abstract: Es gibt viele Definitionen von „Clean Code“ – aber die einfachste ist wohl die: „Clean Code ist die Abwesenheit von technischer Schuld“. Genauso wie die komplette Abwesenheit von technischer Schuld eine Idealvorstellung ist, so ist auch ein kompletter „sauberer Code“ eine Idealvorstellung. Wir können uns diesem Ideal nur nähern. Wer erfolgreich Clean Code einführen will, der sollte sich mit dem Thema technische Schuld auseinandersetzen.
Der Vortrag erklärt was technische Schuld ist, wie man sie messbar, transparent und kontrollierbar macht. Er stellt SonarQube als technische Lösung für die Verwaltung von technischer Schuld vor und erklärt, wie man es in den eigenen Entwicklungsprozess integrieren kann.


Michael Kaufmann, Alegri International Services GmbHMichael Kaufmann ist Microsoft MVP für Visual Studio ALM und unterstützt Kunden bei der Transformation zu agilen „DevOps“-Organisationen. Er arbeitet als Senior Manager bei Alegri und trägt dort die Verantwortung für den Bereich Development des gesamten Unternehmens. Michael arbeitet seit über 15 Jahren als Entwickler, Architekt und IT-Berater. Er ist PRINCE2 zertifizierter Projektleiter, hat Scrum in vielen Unternehmen als agile Methode eingeführt und hat die Zertifizierungen MCSD/MCAD, MCPD und etliche MCTS-Qualifikationen. Neben dem Application Lifecycle Management (ALM) und DevOps liegen seine Schwerpunkte in dem Entwurf von Software-Architekturen, der Entwicklung für und mit der Cloud und Test- und Domänengetriebenem Design.
Sein Wissen teilt er in diversen Schulungen, Vorträgen, Artikeln und seinem Blog (http://writeabout.net/).

Exzellenz im Agile Testing für medizinische IoT-Geräte

Speaker: Dr. Damiano Guazzini, Biotronik SE & Co. KG

Day and time: June 21st 2017, 9:05 am - 10:05 am

Abstract:

Wir sind, was wir regelmäßig tun.
Exzellenz ist daher keine einzelne Tat,
sondern eine Gewohnheit.

Aristoteles

Das Anstreben nach Exzellenz in der Softwareentwicklung für medizinische Geräte fordert alle Prozesse, Technologien und personelle Ressourcen einer Organisation heraus. Hier spielt die Qualitätssicherung eine entscheidende Rolle, und wir haben sie in vielen Aspekten auf den modernsten Stand gebracht.

Nach einer kurzen Einleitung zum zu testenden System, der embedded Software für medizinische IoT-Geräte, konzentrieren wir uns auf unsere Lösungen für

- Die Reduzierung der „Round Trip“-Zeit bei der kontinuierlichen Integration
- Test Lab Umgebung
- Echtes Unit-Testing
- Verhaltensorientiertes Test-Design
- Engine für Testautomatisierung
- Cybersecurity


Dr. Damiano Guazzini, Biotronik SE & Co. KGDamiano Guazzini studierte computerorientierte Teilchenphysik an Universität Rom II – Tor Vergata und promovierte im selben Gebiet an der Humboldt-Universität zu Berlin, wo er auch als Professor Assistent tätig war. Nach einem Einsatz als Postdoktorand im Forschungszentrum DESY Zeuthen, wechselte er zur Automobilbranche und arbeitete an der Testautomatisierung für Pkw Chassis-Steuergeräte im Mercedes-Benz Technology Center in Sindelfingen. Im Jahr 2010 entschied er sich für die Medizintechnik und die Firma Biotronik SE & Co. KG. Hier hat er das Thema Testautomatisierung weiterentwickelt und das Team für Testentwicklung und Verifikation geleitet. Seit November 2016 ist er DevOps-Teamleiter in der Abteilung für die Softwareentwicklung für externe Geräte.

Traum und Wirklichkeit beim automatisch erzeugten Unit-Test und bei Concurrency-Tests

Speaker: Stephan Grünfelder, Riedel Communications Austria GmbH

Day and time: June 21st 2017, 10:15 am - 11:15 am

Abstract: Seit einigen Jahren sind Werkzeuge zur automatischen Erzeugung von Unit-Testfällen erhältlich. Diese erzeugen, ohne jedes Wissen der korrekten Funktion der zu testenden Software, Unit-Tests in kurzer Zeit. Tests werden alleine auf Basis des existierenden Quellcodes erzeugt. Im Vortrag wird erklärt wie solche Werkzeuge funktionieren und was von solchen automatisch erzeugten Tests zu halten ist. Neue Hardware erlaubt auch Coverage-Analysen und damit Unit-Tests im Produktivsystem laufen zu lassen. Der Vortrag wird beleuchten welche neue Projektmöglichkeiten sich für Anwender dadurch ergeben. Die gleiche Hardware kann in naher Zukunft vermutlich verwendet werden um Concurrency-Tests (Deadlock-Analysen und Data-Race-Analysen) ohne Instrumentierung im Produktivsystem laufen zu lassen. Das Prinzip solcher Deadlock-Analysen und Data-Race-Analysen wird im Vortrag erklärt und auch die Grenzen der Anwendbarkeit dieser Technologien.


Stephan Grünfelder, Riedel Communications Austria GmbHStephan Grünfelder ist Jahrgang 197, hat an der TU Wien Informatik studiert und an der Fakultät Elektrotechnik promoviert. Er hat mehrere Jahre als Entwickler und Tester in der unbemannten Raumfahrt und der Medizintechnik zugebracht, war Projektleiter für die Entwicklung von Kfz-Motorsteuergeräten und leitet seit 5 Jahren die Testaktivitäten der Riedel Communications Austria GmbH. Im Nebenberuf hatte er Lehraufträge zum Thema Test an drei Hochschulen und er ist Autor des 2013 im dPunkt-Verlag erschienen Buchs “Software-Test für Embedded Systems”. Die Lehrverpflichtungen an den Hochschulen hat er 2015 zurückgelegt um mehr Zeit für sich selbst und einen weitere Leidenschaft zu haben: Herr Grünfelder ist mit Leib uns Seele Trainer und Berater für die Themen Requirements Engineering und Test von Embedded Systems.

Effiziente Absicherung von Software Qualität durch Modell Based Test Driven Development

Speaker: Andreas Willert, Willert Software Tools GmbH

Day and time: June 21st 2017, 11:45 am - 12:30 pm

Kind of talk: Regression tests

Abstract: Test Driven Development (TDD) nach Kent Beck erfreut sich zunehmender Beliebtheit. Das begründet sich darin, dass mit vertretbarem Aufwand Software-Qualität auf einem hohen Niveau abgesichert werden kann. Die Zauberformel ist die Verbindung von Anforderungen mit Testspezifikation und Regression Test. System- und Test-Spezifikation fließen zusammen, was Effizienzgewinn mit sich bringt.

Bisher war TDD eher im Bereich von XP (eXtreme Programming) populär. Aber auch in Verbindung mit Model Driven Development auf Basis von UML lässt es sich sehr effizient anwenden.

Zum Beispiel lassen sich System-Spezifikationen in Form von Sequenz-Diagrammen mit geringem Aufwand in Testspezifikationen umwandeln, die dann automatisiert ausgeführt werden können. Dabei ist es unerheblich, ob das SUT (System Under Test) ebenfalls in UML modelliert oder händisch in C oder C++ programmiert wurde.

Ist auch das SUT auf Basis der UML modelliert, kommen noch weitere Vorteile hinzu. Zum Beispiel lässt sich die Traceability zwischen Spezifikation, Test und Implementation mit wenig Aufwand erstellen und pflegen. Teilweise ist das Verlinken von Artefakten sogar automatisiert möglich.

Auf Basis der Metastrukturen der UML und dem UTP (UML Testing Profile) und geeigneten Werkzeugen lässt sich TDD sehr effizient umsetzen. Spezifikationen lassen sich mit wenig Aufwand in automatisierte Testabläufe transformieren.

Der Vortrag demonstriert einen Durchstich von der Modellierung der Anforderungen bis zur Automatisierung von Testfällen. Im Ersten Teil geht es um die Theorie, im zweiten Teil werden die Eckdaten einer praktische Umsetzung dargestellt.


Andreas Willert ist geschäftsführender Gesellschafter der Firma Willert Software Tools GmbH und dort seit 25 Jahren in der Beratung und Einführung von Engineering-Vorgehen im Software und Systems Engineering tätig (Unter anderem bei Firmen wie AUDI, Continental, Pilz, Rheinmetall, Sennheiser, Bosch …).

Im Kontext von System- und Software-Engineering, Methoden, Prozesse und Werkzeuge ist er tätig als Buchautor, Referent von Seminaren und Vorträgen, unter anderem auf Kongressen, an Hochschulen, der TAE (Technischen Akademie Esslingen) und bei Willert Software Tools.
Andreas Willert ist Mitglied im Beirat des ESE Kongresses (Embedded Software Engineering Kongress - www.ese-kongress.de) und Mitorganisator der ‚MESCONF’ (Modeling of Embedded Systems Conference - www.mesconf.de) eine der größten deutschen Konferenzen zum Thema MDSE.

Embedded4You Kooperationsprojekt: ReTeC – Reduction of Test Complexity

Speaker: Stephan Kösters, AFRA GmbH

Day and time: June 21st 2017, 11:45 am - 12:30 pm

Abstract: Eine mangelnde Testabdeckung vermeiden und gleichzeitig trotzdem effizient entwickeln erfordert, möglichst früh Fehler zu entdecken und damit weitestgehend fehlerfreie Software auszuliefern.

Um diese Herausforderung zu bewältigen, wird ein völlig neuer ganzheitlicher modellbasierter Ansatz für die Entwicklung und den Test von Eingebetteten Systemen (also aus demselben Modell Code generieren und automatisch Testfälle erzeugen) vorgestellt.

Dazu entsteht zum einen über Modelltransformationen und Codegeneratoren übersetzbarer Code für das Zielsystem (Simulation/reale Hardware). Zum anderen wird aus demselben Modell (aus dem Bereich der Testbeschreibung) der Test-Code erzeugt. Beide Teile (Funktions- und Test-Code) werden anschließend automatisch gegeneinander verifiziert (SIL oder HIL). Dieses wird im Vorfeld auf Modellebene bereits durchgeführt (MIL). In Summe kann damit eine merkliche Reduktion der erzeugten Testfälle erreicht werden.

Der Vortrag richtet sich an Entscheider, Teamleiter und Entwickler, die dem MDSE und dem mbT bisher eher kritisch gegenüberstehen, jedoch die Wichtigkeit sehen.

Es werden die derzeitigen Schwachpunkte bei der automatischen Testfallgenerierung aus Modellen und die damit verbundene Problematik der Explosion der resultierenden Testfälle aufgezeigt. Hierzu wird durch den integrierten Ansatz eine mögliche Lösung dieser Herausforderung vorgestellt.


Stephan Kösters, AFRA GmbHStephan Kösters ist seit über 20 Jahren bei der AFRA GmbH und hat große Entwicklungsprojekte ebenso wie Testautomatisierungs- und Testmanagementprojekte für Embedded Systeme in Kundenprojekten durchgeführt und geleitet. Er war bei der Entwicklung des modellbasierten Test und dem Werkzeug MBTsuite zusammen mit der FAU Erlangen im Jahre 2008 im Projekt und leitet heute bei AFRA den Bereich Testautomatisierung/ modellbasierter Test (mbT). Im Kooperationsprojekt ReTeC war er der Projektleiter auf der Seite der AFRA GmbH.

Die automatische Reduzierung Technischer Schulden in Legacy-Codebasen

Speaker: Ingo Nickles, Vector Software

Day and time: June 21st 2017, 1:30 pm - 2:15 pm

Kind of talk: Regression tests

Abstract: Viele Unternehmen kämpfen damit, dass die von ihnen genutzte Software auf Legacy Codebasen basiert, welche technische Schulden mit sich tragen. Das Potential für Qualitätsprobleme ist groß, und verstärkt sich, wenn diese Software auf einem neuen Produkt / einer neuen Plattform angewandt wird und validiert werden muss. Verschärft wird das Problem dann, wenn eine neue Generation von Software, die früher keine sicherheitskritischen Anforderungen besaß, jetzt sicherheitskritsche Funktionen enthält. In diesem Fall muss die bestehende Software angepasst werden, um neue Funktionalitäten zu erhalten. Leider gibt es aber oft keine Beweise dafür, wie die Software in der Vergangenheit korrekt funktionierte.
Die Legacy-Codebasen besitzen keine wiederholbaren Testfälle die auf messbare Weise funktionale Äquivalenz demonstrieren könnten. Dies hindert Entwickler oft auch daran, die Refaktorierung durchzuführen aus Furcht, dass existierende Funktionalitäten gestört werden könnten.

In diesem Vortrag geht es darum Legacy-Codebasen mit inadäquaten Testfällen entgegenzuwirken mit hilfe von Baseline-Tests. Baseline-Tests können durchgeführt werden, um das aktuelle Verhalten existierender Software zu charakterisieren. Entwickler haben Zugriff auf eine Regressionstestumgebung die täglich ausgeführt werden kann, was fehlerfreie Modifikationen und Updates des Codes erlaubt.


Ingo Nickles, Vector SoftwareIngo Nickles arbeitet als Senior Field Application Engineer bei der Firma Vector Software und ist dort für die Kunden- und Projektbetreuung verantwortlich. Er kann auf über 20 Jahre Berufserfahrung in der Software Entwicklung, System Design und Software Tests und agilen Entwicklungsmethoden

Risiko Binärdatei? – Einsatz von Werkzeugen zur statischen Analyse nicht nur für den Quellcode

Speaker: Royd Lüdtke, Verifysoft Technology GmbH

Day and time: June 21st 2017, 1:30 pm - 2:15 pm

Kind of talk: Static code analysis

Abstract: Oftmals besteht die Notwendigkeit, binäre Komponenten externer Anbieter in die eigene Applikation einzubinden. Meist steht für diese Komponenten kein Quellcode zur Verfügung. Eine Qualitätsbewertung wird damit erschwert. Der Vortrag zeigt, wie die statische Analyse auch hier unterstützen kann.


Royd Lüdtke, Verifysoft Technology GmbHDipl-Ing. (FH) Royd Lüdtke leitet in der Firma Verifysoft Technology den Pre-Sales und Support für Statische Codeanalysetools im deutschsprachigen Raum. Royd Lüdtke hat umfangreiche Berufserfahrung als Applikationsingenieur und Berater bei einer Vielzahl von Firmen und Institutionen wie New Era Of Networks, Sybase, Rogue Wave Software und dem Fraunhofer Institut. Lüdtke studierte in Dortmund Elektrotechnik und Energietechnik, hält mehrere Patente und ist Autor von Veröffentlichungen im IT-Bereich.

Testautomatisierung - "Hardware in the Loop"

Speaker: Valerii Kebenko, seca gmbh & ko.kg

Day and time: June 21st 2017, 2:25 pm - 3:10 pm

Kind of talk: Regression tests

Abstract: Dem Wunsch nach mehr Konnektivität und Systemlösungen begegnet die seca Software-Entwicklung mit agiler Entwicklung nach Scrum. Die funktionale Korrektheit der so entwickelten Produkte weist ein Team von Software-Testern im Rahmen der Verifizierung nach. Insbesondere unter Anwendung von agilen Entwicklungs-Methoden gibt die kontinuierliche Verifizierung Sicherheit, indem sie beispielsweise Angst vor Regressionsfehlern nimmt. Die steigende Komplexität der Produkte an sich, sowie deren Zusammenspiel untereinander, machen einen händischen Test jedoch fehleranfällig, zeitaufwändig und unwirtschaftlich. Dieser Herausforderung begegnet seca mit Test-Automatisierung, welche aus diesen Gründen ein zentraler Bestandteil der Qualitätssicherung geworden ist.
Doch wie kann man Tests bei Embedded Systemen automatisieren, welche typischerweise Interaktionen mit dem Anwender auf Hardware-Ebene erfordern? Dieser Vortrag stellt einen Lösungsansatz mittels "Hardware-in-the-Loop" vor, welcher es ermöglicht Anwenderinteraktion zu simulieren, potentielle Fehler früh zu erkennen und dafür zu sorgen, dass die Testbedingungen ein möglichst realistisches Szenario abbilden.

Der Vortrag stellt den Zuhörern die Prinzipien von Testautomatisierung im Allgemeinen sowie Hardware-in-the-Loop im Besonderen vor. Er führt auf, wie die Testausführung auf dem Embedded-System gelingen kann und welche Vorbedingungen hierfür erfüllt sein müssen. Anhand eines realen Beispiels zeigt der Vortrag einen bei seca realisierten Ansatz, der sich innerhalb eines eigenen Netzwerkes fernsteuern lässt. Der Zuhörer lernt die unterschiedlichen Methoden und Werkzeuge kennen. Zuletzt wird auf die wichtige Abgrenzung zwischen dem ausgelieferten Medizinprodukt und dem Testsystem eingegangen.


Valerii Kebenko, seca gmbh & co.kgValerii Kebenko hat seinen Abschluss als Dipl.-Ingenieur im Mediziningenieurwesen im Jahr 2012 erlangt und ist seitdem als „Software Quality Engineer" bei seca gmbh & und co. kg in Hamburg tätig. In dieser Zeit konnte er die Grundlagen für die Verifizierung von medizinischer Software bei der Firma seca aufbauen und umfangreiche Erfahrung in der Qualitätssicherung medizinischer Software sammeln.
Zurzeit ist er bei seca in den Rollen Test Manager, Test Analyst, sowie Technical Test Analyst für die Verifizierung verantwortlich.

Security durch statische Source Code Analyse für kleinere eingebettete Systeme

Speaker: Frank Büchner, Hitex GmbH

Day and time: June 21st 2017, 2:25 pm - 3:10 pm

Kind of talk: Static code analysis

Abstract: Eine von Angreifern gern ausgenutzte Schwachstelle im Hinblick auf „Security“ ist die Injektion von Code/Daten in ein eingebettetes System, was dann zu beabsichtigtem (oder unbeabsichtigtem) Fehlverhalten des eingebetteten Systems führen kann. Statische Quell-Code-Analyse-Werkzeuge können solche Schwachstellen entdecken und beispielsweise darauf hinweisen, dass ein Kommando ausgeführt wird, welches das System von der Außenwelt erhalten hat. Natürlich können solche Werkzeuge nur solche Schwachstellen aufdecken, über die sie bereits vorab Bescheid wissen. Beispielsweise ist bekannt, dass der Aufruf fgets() der C-Laufzeitbibliothek Daten einliest (beispielsweise aus einer Datei) und der Aufruf system() einen Befehl an das Laufzeitsystem übergibt, welches diesen Befehl dann ausführt. Deshalb können statische Analyse-Werkzeuge erkennen, dass ein von der Außenwelt stammender Befehl ausgeführt wird. Darüber hinaus können statische Analyse-Werkzeuge auch feststellen, ob der Befehl in irgendeiner Weise untersucht und „gesäubert“ wurde, bevor er zur Ausführung kommt. Ist dies nicht der Fall, wird eine Meldung erzeugt. Andere Typen solcher Injektionen sind SQL-Injektion (Injektion eines Kommandos für eine SQL-Datenbank) oder Xpath-Injektion (wodurch Daten einer Web-Anwendung zugänglich gemacht werden können) und Weitere. Kleinere eingebettete Systeme verfügen üblicherweise nicht über eine Laufzeitumgebung wie Linux und auch nicht über eine SQL-Datenbank. Deshalb können solche eingebetteten Systeme nicht von den vorgefertigten Schutzmechanismen der statischen Analyse-Werkzeuge profitieren, denn diese kleinen Systeme verwenden üblicherweise proprietäre und somit im Voraus unbekannte Bezeichnungen für die Funktionen/Methoden zum Einlesen und Ausführen von Code/Daten. Trotzdem sind diese eingebetteten Systeme den beschriebenen Sicherheitsrisiken ausgesetzt, denn die meisten von diesen Systemen verarbeiten Code/Daten von der Außenwelt. Das betrifft insbesondere die zunehmende Zahl von Systemen im IoT. Diese Problematik wird diskutiert und eine mögliche Lösung wird vorgestellt. Dabei dient das statische Analysewerkzeug KLOCWORK als Demonstrationsobjekt.


Frank Büchner, Hitex GmbHFrank Büchner hat ein Diplom in Informatik von der Technischen Hochschule Karlsruhe. Seit mehreren Jahren widmet er sich dem Thema Testen und Software-Qualität. Seine Kenntnisse vermittelt er regelmäßig durch Vorträge und Fachartikel. Momentan arbeitet er als „Principal Engineer Software Quality“ bei der Fa. Hitex GmbH in Karlsruhe.

Absicherung digitaler Sensorschnittstellen in sicherheitskritischen Anwendungen

Speaker: Daniel Heinrich, iSyst GmbH

Day and time: June 21st 2017, 3:40 pm - 4:25 pm

Kind of talk: Use case

Abstract: Der Vortrag stellt eine Möglichkeit zur Absicherung von Sensoranbindungen in sicherheitskritischen Applikationen dar. Es wird dabei aufgezeigt, wie Sensoren mit digitalen Schnittstellen – wie zum Beispiel SPI, PSI5, SENT und LIN – simuliert bzw. genauer emuliert werden können.
Dabei werden die Herausforderungen und Möglichkeiten am Beispiel des Tests eines Fahrwerkssteuergerätes mit drei über SPI angebundenen Beschleunigungssensoren aufgezeigt.
Über die verwendete CAN-Schnittstelle ist die echtzeitfähige Integration in bestehende Test- und Entwicklungssysteme problemlos möglich. Die vielfältigen Testmöglichkeiten werden beispielhaft an ausgewählten Testfällen erläutert.
Mit der Emulation von Beschleunigungssensoren ergeben sich umfangreiche Möglichkeiten beim Test sicherheitskritischer Anwendungen. Hier ist dieses Vorgehen unumgänglich, da eine tiefgehende Prüfung der Fehlererkennungsmechanismen mit realen Sensoren nicht möglich ist.
Weitreichende Möglichkeiten der Fehlerninjektion auf elektrischer- Ebene und auf Protokoll-Ebene ermöglichen eine vielschichtige Prüfung der Funktionalität der Sensorschnittstelle des Device Under Test. Nur auf diesem Weg kann die notwendige Testtiefe für functional Safety Anwendungen erreicht werden erreicht werden.
Durch die echtzeitfähige Integration in ein Testsystem ist es möglich, das gesamte Systemverhalten inklusive der Fehlerreaktionen zu prüfen.


Daniel Heinrich, iSyst GmbHDaniel Heinrich war nach Abschluss seines Elektrotechnik-Studiums an der Technischen Hochschule Nürnberg zunächst am Institut ELSYS tätig und erarbeitete die Grundlagen für den automatisierten Hardware In The Loop-Test. Nach dem Wechsel zur iSyst GmbH im Jahr 2004 baute er dort den Bereich Hardware In The Loop auf. Seit 2008 ist Herr Heinrich Geschäftsführender Gesellschafter und steht den Bereichen Technik und Vertrieb vor.

Static Checking & Dynamic Testing of Simulink®/Stateflow® Models Made Easy

Speaker: Evgeni Verbitski, TechCoaching GmbH

Day and time: June 21st 2017, 3:40 pm - 4:25 pm

Kind of talk: Unit Testing

Abstract: As systems get smarter and combine hardware and software, building them right becomes more complex. At TechCoaching, we believe in keeping it simple – and smart, removing friction and frustration from your product development process by using easy methods and tools.

The transfer of our model-based design expertise and our safety related know-how to your organization creates an unprecedented opportunity for your innovations by tapping into the full potential of your engineering team, your processes and your tools.

Usability can make the difference between pleasure and frustration. What technology can make easy will get done easily. That’s one of the reasons why we provide the most usable model-based verification solutions for safety related applications on the market – easy to learn and easy to use.

EZTEST® software is a verification framework for safety related applications, enabling function developers to leverage advantages of model-based design, verification and code generation.

EZTEST® software was designed for unit testing at model level. EZTEST® software enables test-driven design of dynamic systems with MATLAB®, Simulink® and Stateflow®. It supports SIL and PIL verification with manually developed or automatically generated external code.


Founder of TechCoaching GmbH Mr. Verbitski is an independent consultant, trainer and coach in safety related projects providing holistic team support in all aspects of model-based development.

Functional Safety Professional (TÜV SÜD) Mr. Verbitski has solid experience in embedded systems design and implementation for safety related applications with exposure to automotive industry (ISO 26262).

Mr. Verbitski is a recognized expert in Model-Based Design methodology including system design and simulation, automatic code generation, testing and verification with MATLAB, Simulink, Stateflow and related Toolboxes. Mr. Verbitski is a member of MathWorks Advisory Board.

Simulationsbasiertes Testen von sicherheitskritischer Software auf Multicore Controllern

Speaker: Prof. Dr.-Ing. Peter Fromm, Darmstadt University of Applied Sciences

Day and time: June 21st 2017, 4:35 pm - 5:20 pm

Kind of talk: Use case

Abstract: Multicore Controller wie der Infineon Aurix bieten nicht nur einen deutlichen Zuwachs an Leistung gegenüber klassischen Singlecore Systemen, sondern werden zunehmend auch für sicherheitskritische Anwendungen sowohl im Automotive als im Industriebereich eingesetzt. Analog zur Entwicklung der Architektur bringt die Qualifikation der entwickelten Software neue Herausforderungen mit sich:

- Mit der deutlich höheren Komplexität dieser Systeme steigen die Anforderungen an einen systematischen Test
- Leistungsstarke Hardwarefeatures zur Unterstützung von Sicherheitsfunktionen wie Memory Protection Units, Safety Management Units und ähnliche müssen beim Testdesign berücksichtigt werden
- Aufgrund der echten Nebenläufigkeit der Kerne ergeben sich neue Anforderungen bzgl. Datenkonsistenz und Synchronisation

Der Vortrag stellt die Ergebnisse einer industriellen Machbarkeitstudie vor, bei der eine multicore Sicherheitsapplikation mithilfe des Werkzeugs winAMS der Firma GAIO qualifiziert wurde. Dabei wird sowohl vorgestellt, welche Vorteile ein simulationsbasiertes Werkzeug im Testprozess mit sich bringt, als auch die Grenzen eines solchen Ansatzes. Im Rahmen einer work-in-progress Implementierung wird vorgestellt, wie sich der simulationsbasierte Ansatz auf ein reales Targetsystem erweitern lässt, um die Anzahl der relevanten Testfälle zu erweitern. Hierbei wird das Simulationswerkzeug genützt, um automatisiert Testfälle zu generieren. Die generierten Testfälle werden transformiert und über eine COM Schnittstelle auf das Target übertragen und dort ausgeführt.


Prof. Dr.-Ing. Peter Fromm, Darmstadt University of Applied SciencesProf. Dr.-Ing. Fromm hat in Aachen Elektrotechnik studiert. Nach seiner Promotion am Europäischen Zentrum für Mechatronik 1999 baute er den Bereich Software und System Engineering bei der Firma VDO / Division PKW Informationssysteme (später Siemens und Continental) auf. Zu den Schwerpunkten seiner Aufgaben gehörten die erfolgreiche Einführung von CMMi Level 3 sowie die Definition und Implementierung einer weltweit standardisierten Engineering Toolchain. Inhaltlicher Schwerpunkt seiner Tätigkeiten waren die Prozessbereiche Konfigurations und Change Management, Requirements Engineering und Software Engineering.
In 2008 übernahm er eine Professur für Microcontroller und Informationstechnik an der Hochschule Darmstadt. Dr. Fromm unterstützt zahlreiche Unternehmen bei der Einführung und Optimierung von Software und System Engineering Prozessen.

Funktionale Sicherheit mit automatisierten Softwaretests

Speaker: Wolfram Kusterer, QA Systems GmbH

Day and time: June 21st 2017, 4:35 pm - 5:20 pm

Kind of talk: Unit Testing

Abstract: folgt in Kürze

HW/SW in the Desk Loop

Speaker: Andreas Kreß, HOOD GmbH

Day and time: June 21st 2017, 5:30 pm - 6:15 pm

Kind of talk: Integration tests

Abstract: In vielen Fällen findet die embeded SW Entwicklung auf der Basis von physikalischer Muster Hardware statt. Das virtuelle Szenario in dem die HW Simulation der Target HW als SW Funktionsentwicklung genutzt wird, ist abhängig von der Echtzeitfähigkeit der Simulation und findet daher nur beschränkt statt. Zukünftig wird sich der Trend aber zu einem verstärkten Einsatz von Target HW Simulationen bewegen. Was der Markt hier bietet und welche Potenziale dies für eine frühe Absicherung der Lösung bietet soll hier dargestellt werden.

Effizienter Test von Software-Varianten

Speaker: Michael Wittner, Razorcat Development GmbH

Day and time: June 21st 2017, 5:30 pm - 6:15 pm

Kind of talk: Unit Testing

Abstract: Produkte werden vielfach individuell auf einzelne Kunden oder Projekte zugeschnitten. Zur Kosteneinsparung werden bei der Entwicklung Software-Varianten eingesetzt. Jede Variante muss nach den Anforderungen und Normen vollständig getestet werden. Die Herausforderung des Tests ist, dies gründlich und mit dem geringsten notwendigen Aufwand durchzuführen.
Beim Testen von Software-Varianten werden oft sehr ähnliche Tests erstellt, welche bei neuen oder geänderten Anforderung und Software-Versionen redundante Arbeit verursacht um alle Tests der Varianten synchron zu halten. Für die Testfälle der einzelnen Varianten ist das Kopieren und Anpassen von Tests keine Lösung, da die Beziehungen zwischen den kopierten Tests verloren gehen und Fehler beim manuellem Kopieren und Anpassen der Tests für alle Varianten entstehen können.
Basierend auf einem Beispiel wird ein Verfahren zur einfachen Verwaltung des Tests von Varianten vorgestellt: Unser Ansatz zum Testen einer Variantenhierarchie bietet eine eindeutige Identifizierung von Testfällen und eine mehrstufige Vererbung von Testfällen und deren Testdaten entsprechend der zu prüfenden Software-Varianten.
Ausgehend von Basistestfällen, die von jeder Testvariante vererbt werden, werden gemeinsame Testaspekte automatisch an jeden abgeleiteten Test weitergegeben. Geerbte Tests können an die variantenspezifischen Anforderungen angepasst und zusätzliche Tests hinzugefügt werden. Dadurch wird redundante Arbeit vermieden und die hierarchischen Abhängigkeiten des Variantenbaums bleiben bestehen. Aktualisierungen der Basistests werden automatisch in den geerbten Tests der Varianten synchronisiert und zusammengeführt.
Eine solche Wiederverwendung und Vererbung von Testfällen erleichtert die Erstellung von Tests für Softwarevarianten erheblich. Die zentral verwalteten Tests werden mit UUIDs identifiziert, die das Teilen und Zusammenführen von Tests zwischen verteilten Teams ermöglichen.


Herr Wittner studierte Informatik an der Technischen Universität Berlin. Nach dem Studium arbeitete er als wissenschaftlicher Mitarbeiter der Daimler AG an der Entwicklung von Testmethoden und Testwerkzeugen. Im Jahr 1997 gründete er sein eigenes Unternehmen, die Razorcat Development GmbH, das sich auf die Entwicklung von Testwerkzeugen insbesondere für die Automobilindustrie spezialisiert hat. Bis heute leitet er Razorcat als geschäftsführender Gesellschafter und entwickelt kontinuierlich Testwerkzeuge wie das etablierte Unit-Test-Tool TESSY, das Testmanagement-Tool ITE und die Testspezifikationssprache CCDL.

CCD - und wie agil ist Ihr Code?

Speaker: Steven Kolbenschlag, generic.de AG

Kind of talk: Methods report

Level: Beginner

Day and time: June 22nd 2017, 9:00 am - 9:45 am

Abstract: Mittlerweile sind agile Methoden aus IT – Projekten nicht mehr wegzudenken. Doch verdient ein Softwareentwicklungs-Projekt durch den Einsatz von SCRUM, das Prädikat Agile Softwareentwicklung? Und bedeutet eine agile Vorgehensweise im Projektmanagement auch ein agiles Vorgehen in der Entwicklung? Welche Eigenschaft hat agiler Code und was kann bzw. muss ich als Entwickler zu mehr Agilität im Code beitragen? Stellt man die Werte von SCRUM und Clean Code gegenüber, so lassen sich bei genauem Hinsehen viele Gemeinsamkeiten und Verknüpfungen erkennen.
Die These in diesem Vortrag lautet: In einem agil durchgeführten Softwareentwicklungs-Projekt können die Vorteile des agilen Vorgehens ohne Clean-Code-Development nicht voll ausgeschöpft werden.


Steven Kolbenschlag, generic.de AGAls überzeugter Agilist und Clean-Code-Developer, strebt Steven Kolbenschlag mit Begeisterung nach höchster Qualität und Effizienz in Softwareprojekten. Immer auf der Suche nach neuen Methoden und Ansätzen, mit dem Ziel, das bestmögliche Ergebnis für das Produkt zu erreichen.
Sein Schwerpunkt liegt in der Durchführung von Kundenprojekten für individuelle Softwarelösungen im .NET Umfeld. Dabei betreut er den gesamten Lebenszyklus der Applikation, von der Entstehung des Backlogs über die Entwicklung bis zur Auslieferung und Inbetriebnahme der Software. Dazu berät und unterstützt er die Kunden bei technischen Fragen und Entscheidungen sowie im Umgang und Einsatz von Clean-Code-Development und agilen Methoden.

Codeception Acceptance Tests

Speaker: Roland Golla, Entwicklungshilfe NRW

Kind of talk: Use case

Level: Beginner

Day and time: June 22nd 2017, 9:00 am - 9:45 am

Abstract: Automatisiertes Testing ist der Schlüssel zu effektiver Software-Entwicklung. Frontend-Tests sind dabei sehr aussagekräftig und bieten eine hohe Testabdeckung. Sie sind schnell aufgesetzt und zeichnen sich vor allem durch ihre extrem einfache Syntax aus. Die Test-Szenarien sind dadurch sehr gut lesbar und schnell ausgearbeitet. In der heutigen Webentwicklung wird die Frontend-Entwicklung immer komplexer – zuverlässige Tests für Navigationen und Formulare sind daher wichtig und geschäftsentscheidend.


Roland Golla, Entwicklungshilfe NRWDer 2003 ausgebildete Fachinformatiker für Anwendungsentwicklung mit dem Schwerpunkt PHP-Backend-Entwicklung war viele Jahre als Senior Webdeveloper und Lead Developer für große CMS-Portalen und umsatzstarke eCommerce-Lösungen tätig. Seit 2013 liegen seine Arbeitsschwerpunkte im Clean Code und in der Software-Qualität.

Eingesetzte Technologien sind u. a. Backend PHP Fullstack Frameworks Symfony und Zend. Ergänzend dazu sehr gute Fähigkeiten in AngularJS, NodeJS und Responsive Design. Eingesetzte Testframeworks sind PHPUnit für PHP Code und DalekJS für automatisiertes Frontend Testing.

Zitat: “Mit den PHP-Schulungen der ‘Entwicklungshilfe’ geben wir Web-Entwicklern die Möglichkeit, die Lerninhalte sofort eigenhändig am Rechner umzusetzen. Hands-on ist für uns hier also die oberste Maxime.”

Clean Code - von der Lehre in den Alltag

Speaker: Daniel Georges, Westernacher Solutions AG

Kind of talk: Use case

Level: Beginner

Day and time: June 22nd 2017, 9:55 am - 10:40 am

Abstract: Im Vortrag wird darauf eingegangen warum Clean Code besonders, aber nicht nur für Entwickler, wichtig ist. Wie schaffen wir es mit Clean Code alle Stakeholder(Fachexperten, Anforderungsmanager, Entwickler, Tester, Administratoren, Manager, Sponsoren) in der Softwareentwicklung zu einer guten Zusammenarbeit zu bewegen. Wie schaffen wir es durch Clean Code effizienter zu werden, bessere Qualität abzuliefern und schlussendlich die Komplexität zu beherrschen? Welche Tools und Vorgehen helfen uns dabei. Der Vortrag soll eine Mischung aus Methodik und Use case sein.


Daniel Georges, Westernacher Solutions AGDaniel Georges hat mehrere Jahre Erfahrung in der Softwareentwicklung - als Entwickler, Architekt, Projektleiter und Bereichsleiter kennt er die verschiedenen Facetten und Herausforderungen in der Softwareentwicklung gut. Als Verantwortlicher der Softwerkskammer Stuttgart übt und lebt er die Ideen der Softwarecrafstmanshipbewegung nicht nur im Alltag, sondern auch in seiner Freizeit.

Und wer testet die Tests? - Mutationstesten mit PIT

Speaker: Johannes Dienst, MULTA MEDIO Informationssysteme AG

Kind of talk: Use case

Level: Beginner

Day and time: June 22nd 2017, 9:55 am - 10:40 am

Abstract: Eine Testabdeckung von 50-80% ermöglicht es eine Codebasis wartbar zu halten. Refaktorisierungen sind dadurch sicherer durchführbar. Doch diese Sicherheit ist trügerisch. Denn wer garantiert, dass die Tests das richtige Testen? An dieser Stelle tritt eine “alte” Technik auf den Plan: Das Mutationstesten. Bereits 1971 vorgeschlagen, gewinnt es heute mit leistungsfähigen Multicore-Prozessoren immer mehr an Bedeutung. Der Vortrag zeigt die Leistungsfähigkeit dieser Technik am Beispiel der ausgereiften Bibliothek PIT. Mit dieser wurden Tests aus einem realen Projekt überprüft und deren Qualität erheblich gesteigert.


Johannes Dienst, MULTA MEDIO Informationssysteme AGJohannes Dienst ist Clean Coder aus Leidenschaft bei der MULTA MEDIO Informationssysteme AG. Seine Tätigkeitsschwerpunkte sind die Wartung und Gestaltung von serverseitigen Java und JavaScript-Applikationen.

The four pillars of long lasting software

Speaker: François Lorioux, LOSYPAMO

Kind of talk: Methods report

Level: Advanced

Day and time: June 22nd 2017, 11:10 am - 11:55 am

Abstract: You wish your software is able to survive its environment changes and its users requests for change? Four pillars are needed for long lasting software: a good organization, a good development team, good tools and good practices (clean code and clean architecture). This talk is a synthesis of my own experience with a focus on the key points and ideas to be successful in the long term.


François Lorioux, LOSYPAMOI am a team leader and architect in a subsidiary of a German software company that provides software for the saving banks (Sparkassen). I am currently in charge of a web portal for a card management system. I have been working for 20 years with clean architecture on long term projects and I am always found of sharing my experience about software quality.

Clean Property-based Contract Tests

Speaker: Dr. Frank Raiser, Konzept Informationssysteme GmbH

Kind of talk: Methods report

Level: Beginner

Day and time: June 22nd 2017, 11:10 am - 11:55 am

Abstract: Property-based testing (PBT) is a powerful testing technique. It can replace many example-based tests with generic properties, which reduces the amount of testing code required while making the remaining tests more meaningful.

In this talk, we will consider PBT as a means to realize contract tests. This allows us to check properties for the Liskov Substitution Principle by running numerous test cases for a subclass with only a tiny amount of test code.
We present a quality assurance setup that guarantees all tested properties of a contract are tested for all implementation classes.


Dr. Frank Raiser, Konzept Informationssysteme GmbHDr. Frank Raiser works as software development engineer at Konzept Informationssysteme GmbH in Ulm. He supports projects and customers with his technical expertise and offers seminars on topics like Java or Clean Code. He is focused on modern approaches in programming languages and software development processes.

Hurra, fertig. Ach nee, doch nicht!

Speaker: Vinko Novak

Kind of talk: Use case

Level: Beginner

Day and time: June 22nd 2017, 1:05 pm - 1:50 pm

Abstract: Manchen Entwicklern aber auch oft deren Vorgesetzten ist der Sinn des Clean-Codes nicht sofort ersichtlich. So bekommt man aus dieser Ecke oft die Frage zu hören, ob denn Clean-Code ein Garant für ein erfolgreiches Projekt sei? Wer diese Frage sofort mit einem „Ja“ beantwortet, könnte böse Überraschungen erleben.

Software ist mehr als nur Code. Nur wer ein Projekt in seiner Gesamtheit betrachtet, wird am Ende erfolgreich sein. Dabei ist eine klare Vision genauso wichtig wie eine klare Architektur. Clean-Code ist nur ein kleiner, aber dennoch wichtiger, Baustein im Gesamtkontext.

In einem seiner Projekte zum Beispiel, wurde eine gut durchdachte Architektur und die Einhaltung der Clean-Code-Regeln kontinuierlich geprüft, um ein gutes Ergebnis sicher zu stellen. Am Ende stand eine nicht benutzbare Applikation bereit, weil Entwickler die Bedürfnisse der Benutzer und damit die Benutzeroberfläche komplett vernachlässigt haben.

Vinko Novak stellt die teils unangenehmen Erkenntnisse aus seinen Projekten vor, die uns das Leben richtig schwermachen, wenn wir bestimmte Aspekte der Softwareentwicklung außer Acht lassen. Dabei stehen die Methodik und die psychologischen Effekte, die Projekten Streiche spielen können, im Mittelpunkt.


Vinko NovakVinko Novak beschäftigt sich seit seiner Diplomarbeit mit den Zusammenhängen des Homo Codus und der von ihm entwickelten Software. Er kennt die psychologischen Effekte, die einer effektiven Softwareentwicklung im Wege stehen können. In seinen Reviews sucht er die Wahrheit, die er seinen Reviewpartnern in wertschätzender Weise überbringen will. Dabei achtet er wie ein Zunftmeister darauf, dass die Ehre seines Standes gewahrt bleibt. Er unterstützt seine Kunden bei der Entwicklung kleiner, kundenspezifischer Systeme, betreut Weiterentwicklung und Wartung der Legacy-Systeme mit über 100 Personenjahren Entwicklung und gestaltet den Umbau kompletter Unternehmenslandschaften.

Erfolgsfaktor Mensch -> Wieviel Mensch steckt in Clean Code und wieviel Mensch braucht es für die Umsetzung?

Speakers: Claudia Simsek-Graf and Christoph Meyer, viadee IT-Unternehmensberatung GmbH

Kind of talk: Use case

Level: Beginner

Day and time: June 22nd 2017, 1:05 pm - 1:50 pm

Abstract: Die Einführung und Umsetzung der Clean Code Methodik, z.B. nach dem CCD-Wertesystem, stellt nicht einfach nur einen Methodenwechsel sondern einen kulturellen Wandel für viele Entwicklungsteams dar. Weg vom Individualcode hin zu Collective Code Ownership sind viele Hürden zu nehmen, Widerstand nieder zu ringen und Begeisterung sowohl zu entfachen als auch zu erhalten.

Doch:

- Wie mache ich das eigentlich?
- Wie überzeuge ich Leute von der Clean Code Philosophie?
- Wie gehe ich mit Widerstand um?
- Muss ich Angst vor Konflikten haben?
- Was bedeutet überhaupt kultureller Wandel?
- Welche Bedürfnisse, Ängste und Befindlichkeiten werden dadurch ggf. tangiert?

Diese und weitere Fragen haben wir uns gestellt. Vieles davon haben wir in Projekten erlebt - teilweise auch erlitten - und können etliche Erfahrungen dazu wiedergeben. Unsere Philosophie an dieser Stelle lautet: Verlierst du die Menschen, scheitert auch die beste Methode! Wir möchten diese Erfahrungen mit den Zuhörern teilen und diskutieren, Anregungen zum Nachdenken geben und einige Tipps aus der Praxis mit auf den Weg geben und selber mit nehmen.


Claudia Simsek-Graf, viadee IT-Unternehmensberatung GmbHClaudia Simsek-Graf hat Technische Informatik an der Fachhochschule Ulm studiert. Neben der klassischen Projektmanagementausbildung ist sie Wirtschaftsmediatorin.
Im Bereich Forschung und Entwicklung der viadee Unternehmensberatung vertritt sie den Kompetenzbereich zu Soft-skills rund um Rollen und Aufgaben in IT-Bereichen.

Christoph Meyer, viadee IT-Unternehmensberatung GmbHChristoph Meyer ist Wirtschaftsinformatiker der Universität Münster und Software-Architekt, Integrations- und Backend-Spezialist in Java-Systemen.
In der viadee ist der Themenverantwortliche für Security und Clean Code, sowie Kanban-Coach in agilen Umfeldern und bringt aus vielen Kundenprojekten in schwierigem Umfeld Praxiserfahrung mit ein.

Bootcamp: protecting the engineering culture during hyper growth

Speaker: Rafael Ordog, Emarsys Technologies Kft

Kind of talk: Methods report

Level: Expert

Day and time: June 22nd 2017, 2:00 pm - 2:45 pm

Abstract: The engineering culture of a company might be a key to it’s success, yet as hyper growth kicks in it becomes hard to keep it while doubling the number of engineers every year. So the question becomes: is there a way to protect the culture, and if so, how? In this talk I will summarize my experiences of leading the Bootcamp at Emarsys. Every engineer who joins Emarsys spends the first few weeks in this team until they learn the tricks and practices that we think were essential to the success of the company.


Rafael Ordog, Emarsys Technologies KftRafael is a Lead Developer at Budapest-based Emarsys and popular speaker in the Hungarian software community. As a founding member of Emarsys CraftLab - the dedicated coaching team of Emarsys - he has taught university courses, lectured at numerous conferences and visited multiple companies as an external consultant. His passion for short feedback loops drove him to create Lean Poker, a workshop where developers have the opportunity to experiment with continuous delivery in an safe environment.

Combinator als funktionales Entwurfsmuster in Java 8

Speaker: Gregor Trefs

Kind of talk: Methods report

Level: Advanced

Day and time: June 22nd 2017, 2:00 pm - 2:45 pm

Abstract: Abseits von Streams und Optionals bietet Java 8 neue funktionale Möglichkeiten, um bestehende Probleme zu lösen. Mit dem Combinator-Entwurfsmuster werden kleine fachliche Funktionen situationsgerecht zu komplexer Fachlogik kombiniert. Vorteile sind, neben der klaren Trennung von Verantwortlichkeiten, Erweiterbarkeit, Wiederverwendbarkeit und der deklarative bzw. domänengetriebene Ansatz.

Dieser Vortrag beschreibt anhand praktischer Beispiele, wie das Combinator Entwurfsmuster funktioniert und wann der Einsatz sinnvoll ist. Voraussetzung sind ein Interesse an funktionaler Programmierung und erste Erfahrungen mit Lambdas in Java 8.


Gregor TrefsRafael is a Lead Developer at Budapest-based Emarsys and popular speaker in the Hungarian software community. As a founding member of Emarsys CraftLab - the dedicated coaching team of Emarsys - he has taught university courses, lectured at numerous conferences and visited multiple companies as an external consultant. His passion for short feedback loops drove him to create Lean Poker, a workshop where developers have the opportunity to experiment with continuous delivery in an safe environment.

„Smart Testing“ - Fault Injection durch kooperatives, integratives Software- und Hardware-Testen für zuverlässige, komplexe Systeme“

Speaker: Michael Rieck, Viconnis Test Technologie GmbH

Kind of talk: Use case

Day and time: June 22nd 2017, 9:00 am - 9:45 am

Abstract: „Smart Testing“ - Fault Injection durch kooperatives, integratives Software- und Hardware-Testen für zuverlässige, komplexe Systeme“

„Unsere Kunden sind qualitätsverantwortlich und brauchen verlässliche Qualitäts- und Nutzennachweise über den gesamten Produktlebenszyklus“

Die aktuell fehlende Vernetzung für eine SW / HW übergreifende Fehlervermeidung / Fehleranalyse lässt Herstellerwünsche offen, weil „Test-Inseln“ Brüchen in der Kommunikation und der Testprozesskette aufweisen.

Verbindung der Test Inseln ermöglicht
• Durchgängige Testumsetzung unter Berücksichtigung vorhandener Testressourcen
• Ganzheitliche Übertragbarkeit von Testinhalten vom System bis zum IC / Mikrocontroller
• Absicherung von IP Schutz für die jeweiligen Partner: Außensicht - Innensicht
• Überwindung von Widersprüchen bei der Entwicklung mittels Design for Test (DfT)
• Einheitliche Kommunikation und Austauschmethodik über den Gesamttestprozess

„Smart Testing“ - Kooperatives Hardware/Software-Testen mit TESTC und TESSY

Die von Viconnis entwickelte Testsoftware TestC, eine auf Xtext basierenden DSL, kann digitale und analoge Testinhalte Hersteller unabhängig für Test- und Simulationssysteme generieren. Testinhalte können für Low-End und High-End Testsysteme / ATE (Automated Test Equipment) generiert werden. Dieses ermöglicht eine Wiederverwendung der Testinhalte beim Übergang von Prototypen bis zur Serie. TestC und mehrere Raspberry PI Testsysteme (Low-End) können lokal und übers Netz koordiniert werden; damit sind schnelle, komplexe digitale und analoge Testszenarien möglich.

Die innovative Kombination von TESTC mit der Testsoftware TESSY von Razorcat ermöglicht kooperatives und übergreifendes Software/Hardware Testen für System-, Software- und Hardware-Testnachweise. (Beispielanwendung)

TESSY – Softwaretest: Ziel-Softwaremodule werden durch instrumentierte Testsoftware ersetzt

TESTC-Hardwaretest:Ziel-Hardwarekomponenten werden durch programmierbares Hardwareverhalten via Hardware-Testsystem ersetzt.

Durch die Substitution von Hardware durch ein programmierbares Hardwaretestsystem (z.B. Raspberry PI) kann dem Softwaretest ein fehlerhaftes Hardwareverhalten gezeigt werden = Fault Injection. Die Ziel-Software soll nun in die Lage versetzt werden den Hardwarefehler zu erkennen und eine korrekte Systemfehlerbehandlung zu ermöglichen. Die Testsoftware kann nun die entsprechenden Nachweise der Testabdeckung für System, Software und Hardware liefern.

Nutzen eines strategischen und kooperativen Testvorgehens

• Ganzheitliche, datenbasierte Beantwortung von Testfragen
• Übertragbare und vernetzte Testinfrastruktur und Testkommunikation
• Verlässliche und wiederverwendbare Testaussagen
• Frühe Fehlervermeidung und tiefe Fehleranalyse
• Entwicklungsbeschleunigung, Kostensenkung und Risikominimierung
• Effiziente und effektive Testabdeckung

„Smart Testing“ zur Verbindung aller Test-Inseln!


Michael Rieck, Viconnis Test Technologie GmbHMichael Rieck studierte physikalische Technik an der Technischen Hochschule in Wedel. Er war mehr als 20 Jahre als Softwarearchitekt und Testprogrammentwickler bei NXP tätig und hat dort in u.a. in der Funktion des Testingenieurs und Projektmanagers Testmethoden und Testwerkzeuge konzipiert, entwickelt und implementiert. Er hat diverse internationale Ingenieursteams geleitet und koordiniert. 2011 hat er zusammen mit Ralf Reche die Viconnis Test Technologie GmbH gegründet. Erfolgreiche Schwerpunkte des Unternehmens sind die Entwicklung Hardwarenaher Testwerkzeuge, wie die Testkoordinationssoftware TESTC, die Testmanagementsoftware TESTM und die Entwicklung von Low-Cost Hardware-Testsystemen auf Basis Raspberry PI und MicroTCA. Seit 2016 bietet Viconnis ein technisches Coaching als unabhängige Beratungsdienstleitung für die Analyse, Vernetzung und Optimierung individueller Testinfrastrukturen an. Herr Rieck verwaltet das Unternehmen als CEO und ist darüber hinaus als Mitglied des Silicon Saxony e.V. und im Embedded4You e.V. in diversen Arbeitskreisen aktiv.

Durchführung eines Penetrationstest auf sicherheitsrelevanten Systemen

Speaker: Bastian von Welczeck, SILVER ATENA Electronic Systems Engineering GmbH

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 9:00 am - 9:45 am

Abstract: Automobilindustrie, Medizintechnik, Telekommunikationsindustrie, Produktions- und Fertigungstechnik – hier ist eine Vielzahl von Produkten und Anwendungen eingebetteter Systeme zu finden. Die Systeme reichen von der Waschmaschine oder der Zündsteuerung eines Airbags über das Motormanagement in Kraftfahrzeugen bis hin zu komplexen Überwachungs- und Regelungssystemen in Flugzeugen. Im Zuge der Industrie 4.0 ist es diesen Geräten möglich, untereinander zu kommunizieren, komplexe Daten austauschen und aus der Ferne über verschiedene Endgeräte gewartet und gesteuert werden zu können. Mit dem Anstieg von Funktionalität, steigt auch die Gefahr, dass vernetzte Systeme von Hackern und Cyberkriminellen als Einfallstor genutzt werden. Die Manipulation eines Narkosegerätes ist nur eines von vielen Beispielen, die in letzter Zeit bekannt wurden (Der Spiegel 33/2015).

Vor diesem Hintergrund ist die frühzeitige Erkennung von Schwachstellen im Rahmen eines Penetrationstests als Teil eines Security Prozesses unverzichtbar. Durch die Integration eines Penetrationstests in dem Entwicklungsprozess kann das Design gegen konstruktionsbedingte Schwachstellen, direkt umgehbaren Sicherheitsfunktionen und ungewünschte Kommunikationskanäle verifiziert werden. Dieses strukturierte Vorgehen gewährleistet nicht nur den verbesserten Schutz sicherheitsrelevanter Systeme gegen Manipulation und illegalen Zugriffen, sondern reduziert auch die Wahrscheinlichkeit, dass nicht betrachtete oder (noch) nicht entdeckte Sicherheitslücken nachträglich korrigiert werden müssen. Abschließend wird die korrekte Implementierung der Sicherheitsfunktionen überprüft.

Im Rahmen dieses Vortrags werden die einzelnen Phasen zur Durchführung eines Penetrationstests vorgestellt, mit denen eine systematische Klassifizierung und Bewertung von Angriffsrisiken auf einem sicherheitsrelevanten System durchgeführt werden können. Das Ziel eines Penetrationstests ist es, Schwachstellen zu erkennen und sie im Anschluss zu bewerten, um darauf basierend geeignete Gegenmaßnahmen erarbeiten zu können. Die einzelnen Phasen beinhalten nicht nur die Informationsbeschaffung und Risikoanalyse eines Systems, sondern auch die Verifizierung der Schwachstellen unter dem Einsatz von Tools und Exploits in Form eines aktiven Eindringungsversuchs. Dieser Schritt ermöglicht eine eindeutige Darstellung, dass eine Schwachstelle nicht nur einen möglichen Angriffspunkt darstellt, sondern dass es sich um ein tatsächlich vorhandenes Bedrohungsszenario handelt. Die Grundlagen der einzelnen Phasen beziehen sich auf die fünf Phasen eines Penetrationstests, wie sie vom Bundesamt für Sicherheit in der Informationstechnik (BSI) dargestellt werden. Sie werden auf eingebettete Systeme angepasst und garantieren eine strukturierte, sowie vollständige Durchführung eines Penetrationstest zur Abdeckung aller relevanten Sicherheitsanforderungen.


Bastian von Welczeck (12.03.1994)
- Bachelor Studium Elektro- und Informationstechnik an der Hochschule für Angewandte Wissenschaften in Hamburg mit der Vertiefungsrichtung Kommunikationstechnik
- 20 Wöchiges Praktikum bei der Firma BESCom Elektronik GmbH unteranderem in den Bereichen Einrichten und Testen einer VOIP-Telefonanlage, Entwicklung einer Kleindatenbank, Strukturierte Erfassung und Visualisierung der IT-Komponenten und IT-Verbindungen im Unternehmen.
- Werkstudent vom 28.11.2016 bis zum 20.02-2017 bei SILVER ATENA für die Entwicklung eines Penetration Test Demonstrator
- Seit dem 21.02.2017 Ausarbeitung der Bachelorarbeit bei SILVER ATENA mit dem Thema "Planung und Durchführung eines Penetration Test auf einem Security Gateway".

Unit Testing mit Vectorcast und fortlaufende Integration von Testergebnissen mit Jenkins bei der Ottobock Healthare GmbH

Speaker: Torsten Wender, Ottobock Healthare GmbH

Kind of talk: Use case

Day and time: June 22nd 2017, 9:55 am - 10:40 am

Abstract: Gegenstand des Vortrags ist ein Anwendungsbericht über die Realisierung der Themen Testimplementierung, Testautomatisierung und Testintegration. Schwerpunkt ist dabei das Zusammenwirken der Tools Vectorcast und Jenkins beim Testen von C++ Code für den MSP430 Prozessor (IAR Compiler).


Torsten Wender ist bei der Ottobock Healthare GmbH seit ca. 3 Jahren verantwortlich für das Spezifizieren, Implementieren, Verwalten, Auswerten, Automatisieren und Integrieren von Software Tests.

Modellbasiertes Testdesign in der Praxis - 200 Testfälle in 30 Minuten

Speaker: Dr. rer. nat. Martin Beißer, sepp.med GmbH

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 9:55 am - 10:40 am

Abstract: Modellbasiertes Testen ist zwar nicht mehr so prominent in der Diskussion wie noch vor einigen Jahren. Dafür wird das Thema immer wichtiger, wenn es darum geht komplexe Systeme mit vertretbarem Aufwand zu testen.
Der Vortrag erklärt am Beispiel einer elektronischen Bremse das Vorgehen zur Erstellung eines modellbasierten Testdesigns. Schritt für Schritt wird erklärt wie ein Testmodell erstellt wird, das als Realisierung des Testdesigns die Grundlage für eine automatische Testfallgenerierung darstellt. Anschließend werden verschiedene Strategien zur Testfallerzeugung erklärt und diskutiert welche Testabdeckung damit erreicht werden kann. Die erzeugten Testfälle sind in der Regel automatisch ausführbar.
Wer sich derzeit in der Situation sieht eine schnell wachsende Anzahl von Testfällen schnell und effektiv erstellen und pflegen zu müssen, sollte die Vorteile und Möglichkeiten eines modelbasierten Vorgehen kennen.


Dr. rer. nat. Martin Beisser, sepp.med GmbHDr. rer. nat. Martin Beißer hat in Erlangen Physik studiert. Nach seiner Promotion war er mehrere Jahre als Geo-Wissenschaftler an verschiedenen in- und ausländischen Forschungseinrichtungen tätig. Danach hat er in mehreren Projekten im Bereich Qualitätssicherung und Prozessoptimierung im Auftrag für verschiedene Automobilhersteller gearbeitet.
Seit Juni 2000 ist Dr. Martin Beißer in der Geschäftsleitung der sepp.med gmbh verantwortlich für die Bereiche Softwareentwicklung, Qualitätssicherung und Beratung in Medizintechnik-, Avionik- und Automotive-Projekten. In Vorträgen und Veröffentlichungen setzt er sich seit vielen Jahren für die Verbreitung der modellbasierten Testidee ein.

Versioning, Traceability & Continuous Compliance: Mature Processes in Embedded Software Development

Speaker: Marco Reiling, Intland Software GmbH

Kind of talk: Standards and liability risks

Day and time: June 22nd 2017, 11:10 am - 11:55 am

Abstract: Due to the complexity and risks involved, the development of high quality safety-critical embedded systems is practically impossible without mature processes. In a development environment where ensuring compliance, cutting development costs, and reducing time to market are crucial, process maturity is the key to success. Tried and tested practices of software and hardware engineering, lifecycle management, quality assurance, and traceability along audit trails are vital, but challenging to attain.

In this talk, Intland Software's expert Marco Reiling will describe all the necessary aspects of a mature development lifecycle. This talk will provide some practical guidance on implementing best practices in the areas of requirements management (both hardware and software), change management & versioning, integrating hardware and software components, associating requirements and test cases, full traceability along the lifecycle, approval management, code coverage analysis, documentation and reporting (both internal and for audits), and more.

Join our talk to learn about implementing a system of continuous compliance in your development lifecycle, thus reducing the risks, time, and costs of building quality safety-critical embedded products with minimal effort.


Marco Reiling, Intland Software GmbHMarco Reiling is Intland Software's Senior Account Manager/Business Development Manager Automotive. Formerly of Wind River and IPG Automotive USA, Marco has extensive experience working with (safety-critical) embedded developers worldwide.

Middleware als Basis für offene und serviceorientierte Testsysteme

Speaker: Robert Schachner, RST Industrie Automation

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 11:10 am - 11:55 am

Abstract: Derzeit sind Testsysteme meist noch geschlossene und proprietäre Systeme, die für einen spezifischen Testfall gebaut und nur dafür eingesetzt werden. Die ständig zunehmende Komplexität und die Anforderung nach höherer Effizienz machen den Test bereits in einer frühen Phase der Entwicklung erforderlich und begleiten die zu testenden Komponenten bis zum Produktionstest. Dazu gehören in Zukunft auch Services, die den Betrieb dieser Testanlagen erleichtern.
Der Vortrag zeigt, wie Middleware Technologien als Laufzeitplattform diese neuen Anforderungen in hervorragender Weise erfüllen können. Middleware führt automatisch zu einem Schichtenmodell, in dem Werkzeuge und I/O Funktionen beliebig adaptiert und kombiniert werden können, ohne die jeweils anderen Funktionsgruppen zu beeinflussen. Darüber hinaus soll der Vortrag zeigen, wie Services, die man sonst aus den Industrie 4.0 Umfeld kennt, auch den Test wesentlich flexibilisieren und erleichtern.


Robert Schachner, RST Industrie AutomationDipl.-Ing. (FH) Robert Schachner bewegt sich im embedded Markt seit 1985. Seit 1993 mit Gründung der RST Industrie Automation GmbH wurden mit dem Plattform Gedanken einer Middleware auch Testsysteme realisiert. Mit der Einführung der neuen Gamma V Plattform 2011 konnte sich das System gemeinsam mit Partnern bei vielen Firmen verbreiten. Offene und partnerschaftliche Zusammenarbeit ist Herrn Schachner dabei eine wichtige Prämisse.
Herr Schachner ist Gründungsmitglied im Verein Embedded4You e.V. und stellt dort derzeit den technischen Vorstand. Zu seinem Kernthema Middleware hat er sich an der VDI/VDE Richtlinie 2657 „Middleware in der Automatisierungstechnik“ engagiert. Seit 2015 lehrt er als Dozent an der Fachhochschule Rosenheim den Studienkurs „Methoden der Echtzeit Kommunikation in eingebetteten Systemen“.

Technik trifft Recht - Haftungsrechliche Fragestellungen im Zusammenhang mit Industrie 4.0

Speaker: Susanne Meiners, NewTec GmbH

Kind of talk: Standards and liability risks

Day and time: June 22nd 2017, 1:05 pm - 1:50 pm

Abstract: Die technische Entwicklung schreitet mit Innovationskraft voran. Für Unternehmen und Produktentwickler ist es wichtig zu wissen, welche haftungsrechtlichen Fragestellungen sich im Zusammenhang mit Industrie 4.0 ergeben. Neben der vertraglichen und deliktischen Haftung, die das Zivilrecht vorsieht, sehen auch das Produkthaftungsrecht, das Strafrecht und Vorschriften aus dem Öffentlichen Recht Schadensersatzansprüche und Sanktionen/Strafen vor, wenn durch einen Produktfehler ein Schutzgut (z. B. Leben, Gesundheit, öffentliche Ordnung, Umwelt,…) verletzt wird oder verletzt werden kann.
Aus Sicht von Safety & Security hat die Fehlervermeidung oberste Priorität.
Die Kenntnis der rechtlichen Zusammenhänge unterstützt Sie dabei, mögliche Schadensursachen zu identifizieren und zu beseitigen, um die Qualität Ihrer hochwertigen Produkte zu sichern und die daraus resultierenden Vorteile abzuschöpfen.

Die Teilnehmer erhalten einen ersten Einblick in die rechtliche Haftungssystematik und den aktuellen Stand der Diskussion, die sich um elektronische Systeme und technische Produkte (z. B. Softwareentwicklungen, teilautonome oder autonome Systeme) ergibt. Sie erhalten Impulse, wie Schadensursachen reduziert werden können und damit ein betriebswirtschaftlicher Nachteil (Regressansprüche, Rückrufaktion, Imageschaden, u. ä.) abgewendet werden kann.


Susanne Meiners, NewTec GmbHSusanne Meiners studierte Jura an der Universität Augsburg. Sie arbeitete nach dem Studium als Rechtsanwältin und zusätzlich als Dozentin im Bereich Zivilrecht.
Für die Firma NewTec ist sie seit über vier Jahren in der Abteilung Safety & Security für juristische Fragestellungen zuständig und bietet Schulungen und Workshops an, deren Ziel es ist, bei Unternehmen ein Bewusstsein zu rechtlichen Haftungsthemen zu entwickeln und sie dabei zu unterstützen, ihre Produktqualität zuverlässig und nachhaltig zu verbessern. Zusätzlich ist sie als Coach und zur Mediatorin ausgebildet und agiert als Trainerin in Unternehmen mit Themenschwerpunkten im Bereich Change Management, Leadership und Teamentwicklung.

Testautomatisierung in einer heterogenen Toolumgebung

Speaker: Sadegh Sadeghipour, ITPower Solutions GmbH

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 1:05 pm - 1:50 pm

Abstract: Angesichts der zunehmenden Funktionsumfänge und wechselseitigen Abhängigkeiten eingebetteter Systeme wird deren Testprozess immer aufwändiger. Eine erste Voraussetzung zur Beherrschung der Komplexität des Testprozesses ist die Testautomatisierung. Die hohen Kosten und der Aufwand der Einführung und des Betriebs der Testautomatisierung sowie der Bruch zwischen dem manuellen und automatisierten Testprozess sind Aspekte, welche viele Unternehmen davon abhalten, ihren Testprozess zu automatisieren. Im vorliegenden Beitrag wird eine Software-Architektur zur Automatisierung der Testausführung und -auswertung präsentiert, welche den genannten Nachteilen entgegenwirkt.

Das primäre Ziel der vorgestellten Architektur ist die Einbindung von bereits im Einsatz befindlichen Tools (z.B. Oszilloskop, Debugger, Buswerkzeug, Relaisboxen, etc.) ins Testframework. Dadurch können die Erfahrungen und das Know-how der Mitarbeiter zum Umgang mit den Tools weiterhin genutzt werden. Ferner profitiert die neue Testautomatisierung von den schon getätigten Investitionen. Die Testautomatisierung mit Integration vorhandener Tools erfordert allerdings, dass von den Benutzer- und Programmierschnittstellen einzelner Tools abstrahiert und ein einheitliches Frontend zur Spezifikation von Tests und Steuerung der Tools bereitgestellt wird. So kann der Benutzer des Testframeworks über Toolgrenzen hinweg Tests spezifizieren und automatisch ausführen.

Das Testframework basiert auf einer Client-Server-Architektur, in der der Client vom entsprechenden Server einen Dienst anfordert und der Server, an dem ein externes Tool über eine offene Schnittstelle angebunden ist, diese Anforderung an das Tool weiterleitet und ggf. die Rückgabe der Durchführung des Dienstes an den Client zurückgibt. Durch die Client-Server-Architektur ist es möglich, Tools von einem Rechner aus fernzusteuern. Es können nicht nur Signale zwischen den Tools ausgetauscht, sondern auch die Tools gestartet oder angehalten werden. Z. B. kann das Tool zur Buskommunikation zum Testbeginn automatisch initialisiert oder der Debugger nach Eintreten eines bestimmten Ereignisses aktiviert werden.

Die Architektur des Testframeworks setzt keine bestimmte Form der Testspezifikation voraus. Testspezifikationen können sequenzielle Testabläufe definieren, die z. B. in einem Tabellenkalkulationsprogramm oder als Testsequenzen eines Klassifikationsbaums dargestellt sind, oder durch UML-Verhaltensdiagramme, z. B. Sequenz- oder Zustandsdiagramme, repräsentiert werden.

Eins auf der Basis der beschriebenen Architektur realisiertes Testframework kann in verschiedenen Testphasen – Komponententest, Integrationstest und Systemtest – eingesetzt werden. Bei einem Komponenten- oder Integrationstest müssen die mit dem Testobjekt kommunizierenden Systemkomponenten teilweise oder vollständig simuliert werden. Auch beim Systemtest ist eine Simulation der physikalischen Umgebung notwendig. Solche Simulationen, die je nach Testziel komplex oder rudimentär ausfallen, können als externe Tools implementiert und an das Testframework angebunden werden.

Es wird ein Testframework namens ContinoProva vorgestellt, das die vorgeschlagene Architektur umsetzt. Ferner wird das Vorgehen beim Testen einer Notbremswarnblinkfunktion mit diesem Tool kurz erläutert.


Sadegh Sadeghipour, ITPower Solutions GmbHSadegh Sadeghipour promovierte 1998 am Fachbereich Informatik der Technischen Universität Berlin im Bereich des Softwaretests. Seit 1996 veröffentlicht er Beiträge zum Test eingebetteter Software auf nationalen und internationalen Konferenzen und Workshops sowie in Fachzeitschriften.
Im Jahre 2000 gründete er die Firma IT Power Consultants, später umbenannt auf ITPower Solutions GmbH, in der er seither als Geschäftsführer tätig ist. ITPower Solutions bietet den Entwicklern eingebetteter Systeme, unter anderem aus den Bereichen der Automobilindustrie und der Medizintechnik, Beratung und operative Unterstützung entlang des System- und Software-Entwicklungsprozesses.

Software testen gemäß IEC 61508 – ganz einfach oder unmöglich?

Speaker: Dr. Martin Lange, embeX GmbH

Kind of talk: Standards and liability risks

Day and time: June 22nd 2017, 2:00 pm - 2:45 pm

Abstract: Die IEC 61508 definiert als Basisnorm der funktionalen Sicherheit den „Stand der Technik“ nicht nur für die Entwicklung sicherer Systeme sondern auch konkret für das Testen sicherheitsbezogener Software. Insbesondere der Teil 3 dieser Norm enthält umfangreiche Anforderungen gerade auch an die Verifikation von Software und an die Verfolgbarkeit zwischen Anforderungen und Tests.

Will man diese Anforderungen in einem konkreten Entwicklungsprojekt umsetzen, stößt man jedoch immer wieder auf Schwierigkeiten, z.B.:

• Die in der Norm genannten Entwicklungs- und Testphasen sind nicht eindeutig.
• Testfälle sollen zurückgeführt werden auf Sicherheitsanforderungen, die nirgends im Prozess lokalisiert sind.
• Testverfahren werden gefordert, ohne dass klar ist auf welcher Ebene der Integration sie umzusetzen sind.
• Es finden sich keine Anhaltspunkte, wie sich die Forderungen der Norm anpassen lassen an besonders große oder auch besonders kleine Softwareentwicklungsprojekte.

Der Vortrag soll zeigen, wie sich trotz dieser Schwierigkeiten ein normkonformer und skalierbarer Software-Entwicklungsprozess definieren lässt und wie sich darin die Anforderungen der Norm an die Softwaretests umsetzen lassen.
Dazu wurde zunächst ein generisches, beliebig an die Projektgröße anpassbares Prozessmodell definiert. Die von der Norm geforderten Entwicklungs- und Verifikationsschritte wurden auf dieses Modell abgebildet. Auf Basis dieser Abbildung wurden die Anforderungen der Norm an Entwicklung und Tests den Phasen des generischen Modells zugeordnet.
An Ende blieb für jedes einzelne Arbeitspaket im Prozess eine überschaubare Anzahl von normativen Anforderungen übrig.
Auf diesem Weg ist eine Prozessdefinition entstanden, deren Anforderungen für den einzelnen Entwickler jederzeit überschaubar und nachvollziehbar sind und die damit auch als Basis für Schulungen der Mitarbeiter geeignet ist.
Der so definierte Prozess wurde einer akkreditierten Prüfstelle vorgestellt und mit wenigen Einschränkungen als generischer Prozess akzeptiert.
Ziel des Vortrags ist es, zu zeigen, dass es möglich ist, die Anforderungen der Norm insbesondere auch für das Testen von Software soweit herunter zu brechen, dass sie für den einzelnen Testverantwortlichen leicht überschaubar und damit auch einfach umzusetzen sind.


Dr. Martin Lange, embeX GmbHDr. Martin Lange beschäftigt sich seit über 15 Jahren mit der Entwicklung funktional sicherer embedded Systeme. Er ist bei der embeX GmbH verantwortlich für alle Fragen der Funktionalen Sicherheit. In dieser Funktion ist er einerseits immer auf der Suche nach der sichersten und besten Lösung für den Kunden. Andererseits versucht er beständig, Prozesse und Vorgehensweisen in der Entwicklung so zu verbessern, dass sie auf möglichst geradem Weg zu einem sicheren Produkt führen.

Auf dem Weg zum automatisierten Fahren ­­– Robustheitsanalyse der Steuergerätesoftware durch die Simulation systematisch variierter Verkehrsszenarien

Speaker: Dr. Daniel Ulmer, Steinbeis Interagierende Systeme GmbH

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 2:00 pm - 2:45 pm

Abstract: Der bevorstehende Übergang zum automatisierten Fahren stellt die Automobilindustrie bei der Absicherung der neu zu entwickelnden Fahrzeuggenerationen vor große Herausforderungen. Die Gewährleistung der Steuergerätefunktionalität im automatisierten Fahrbetrieb, welcher es dem Fahrer erlaubt, sich während der Fahrt vom Verkehrsgeschehen abzuwenden, erfordert aufgrund der Übernahme der alleinigen Verantwortung für die vom Fahrzeug durchgeführten Fahrmanöver intensive Testaktivitäten. Ein autonom agierendes Fahrzeug im Straßenverkehr muss mit einer großen Anzahl an unterschiedlichsten Umgebungsbedingungen zurechtkommen, ohne dabei die Insassen bzw. anderer Verkehrsteilnehmer zu gefährden. In der Praxis werden die große Vielfalt der möglichen Verkehrssituationen und deren chronologische Abläufe im Straßenverkehr methodisch meist nur unzureichend bei den Testverfahren erfasst, welche somit kaum Rückschlüsse auf die Robustheit der Steuergerätesoftware zulassen. Abhilfen können hierbei automatisierte Verfahren im Bereich der Robustheitsanalyse bieten, die Fahrzeughersteller und ihre Zulieferer bei der Evaluierung ihrer Steuergerätesoftware unterstützen.


Dr. Daniel Ulmer, Steinbeis Interagierende Systeme GmbHDr. Daniel Ulmer studied Software Engineering at the University of Applied Sciences in Esslingen and received his Master of Electrical Engineering from the University of Delaware, USA, in 2004. In 2012 he received his PHD from the University of Tübingen. Since 2013 he is managing director of Steinbeis Interagierende Systeme GmbH in Esslingen. The company is engaged in systematic testing, test strategies and test platforms for Advanced Driver Assistant Systems and Autonomous Driving.

Kennen Sie schon den Standard ISO/IEC/IEEE 29119?en

Speaker: Gudrun Neumann, SGS-TÜV Saar GmbH

Kind of talk: Standards and liability risks

Day and time: June 22nd 2017, 3:15 pm - 4:00 pm

Abstract: Verifikation durch Testen ist eine wichtige Phase im Software Lebenszyklus. Die Standard-Reihe ISO/IEC/IEEE 29119 gibt international anerkannte Empfehlungen zum Thema Softwaretesten. Die beschriebenen Prozesse, Methoden und Techniken können von jedem Entwickler oder Verifikationsteam angewendet werden, um Software zu testen. Dieser Beitrag gibt einen Überblick über die Standardreihe unter besonderer Berücksichtigung von Embedded Testing.


Gudrun Neumann, SGS-TÜV Saar GmbHGudrun Neumann studierte Informatik an der Technischen Universität München und schloss das Studium als Diplom-Informatikerin Univ. im Jahr 1990 ab.
Seit dem Jahr 2005 befasst sich Frau Neumann mit der Funktionalen Sicherheit von sicherheitsrelevanten Steuerungen mit Schwerpunkt Software in den Bereichen Automotive, Maschine, Industrie, Haushalt, Medizingeräte und Cyber Sicherheit.
Seit 2010 ist sie Produkt Managerin der Funktionalen Sicherheit Software bei der SGS-TÜV Saar GmbH und seit 2012 Teamleiterin Funktionale Sicherheit. In diesem Rahmen ist sie für die Norm konforme Definition und Durchführung von Analysen und Beurteilungen komplexer Software Systeme verantwortlich. Basierend auf langjähriger praktischer Erfahrung bietet sie Schulungen der Standards an und führt Beratungen auf dem Gebiet der sicherheits-relevanten und -orientierten Software-Entwicklung durch.

Testmanagement in einem agilen Umfeld für die Entwicklung von embedded systems

Speaker: Barbara Beenen, bee-IT

Kind of talk: Black & White Box Testing

Day and time: June 22nd 2017, 3:15 pm - 4:00 pm

Abstract: Der tägliche Test im Rahmen des "nightly build" ist unbedingter Bestandteil einer agilen Entwicklung.
Wie stellt man Testdaten auch für embedded systems, die nicht nur aus Software bestehen, in einem automatisierten Testumfeld korrekt und rechtzeitig bereit und wertet die Testergebnisse effizienz und aussagekräftig aus?


Barbara Beenen ist Diplom-Informatikerin und seit über 20 Jahren im Umfeld von embedded systems tätig.

Aufbau und Monitoring von Echtzeitkenngrößen von Linux Preempt RT mit Jenkins

Speaker: Thomas Maierhofer, Maierhofer Consulting

Kind of talk: Integration tests

Day and time: June 22nd 2017, 4:10 pm - 4:55 pm

Abstract: Echtzeitkenngrößen wie z.B. die WCET (worst case execution time) sind wichtige Parameter für „Harte Echtzeit“. Embedded Systeme mit Linux Prempt RT benötigen diese Daten spätestens dann wenn leistungsfähige Scheduler Algorithmen wie EDF (earliest deadline first) eingesetzt werden sollen. Der CI Server Jenkins erlaubt es diese Daten zu erfassen und regelmäßig zu testen. Dies stellt die Testbarkeit von Echtzeitanforderungen - als Teil der funktionalen Anforderungen von Echtzeitsystemen - sicher.

In diesem Vortrag zeigt Thomas Maierhofer wie ein Testsystem aufgesetzt werden kann und welche Kenngrößen erfasst und visualisiert werden können. Die Testumgebung stellt auch ein Performance Dashboard bereit um während der Entwicklung den Trend der Echtzeitkenngrößen verfolgen zu können.


Thomas Maierhofer, Maierhofer ConsultingThomas Maierhofer ist Senior Software Consultant und derzeit bei SCA Schucker (Teil von Atlas Copco) als Berater tätig. Im agilen Team entwickelt er einen neue Generation von Steuerungssoftware auf der Basis von RT Linux. Unter anderem ist er als Lead Developer und Agiler Architekt für den Echtzeitteil der neuen Steuerung verantwortlich.

Noch mehr Testfälle und trotzdem kein Überblick - Testchaos beseitigen mit Linear Distributed Testcases

Speaker: Georg Haupt, oose Innovative Informatik eG

Kind of talk: Table driven testing

Day and time: June 22nd 2017, 4:10 pm - 4:55 pm

Abstract: Von Entwicklungszyklus zu Zyklus steigt die Menge der Testfälle. Jede weitere Anforderung, Anpassung oder Erweiterung des Testobjekts lassen die Anzahl der Testfälle in den Regressionstests wachsen. Die manchmal explosionsartige Entropie des Testfallportfolios führt schnell zur Unübersichtlichkeit. Die Menge der Testfälle zu reduzieren und dafür mehr Prüfpunkte in einem Testfall zu legen kann nicht die Antwort sein. Was ist wenn sich am Testobjekt etwas ändert? Wie warte ich Testfälle bei einer orthogonalen Verteilung? Und überhaupt, welche Testfälle sind betroffen? Da ist sie wieder, die Wartungsfalle. Der Weg aus dieser unübersichtlichen Flut an Testfällen sind „Linear Distributed Testcases „. Einfache übersichtliche Strukturierung und Testfallbenennung helfen Testfälle selbsterklärend zu strukturieren. Auch von Entwicklungszyklus zu Entwicklungszyklus.


Georg Haupt, oose Innovative Informatik eGJahrgang 1971, ISTQB Certified Tester, Certified Quality Designer, ITIL Certified
Als Trainer und Berater liegen die Schwerpunkte von Georg Haupt im Bereich der Qualitätssicherung und Softwaretests.
In 14 Jahren vergleichende Produkttests für die Computerbild, Computerbild-Spiele und Audio-Video-Foto-Bild wurde sein Blick für Produktqualität geschult. Das Motto seiner Trainings lautet: „Aus der Praxis für die Praxis!“ Denn er blickt als ISTQB zertifizierter Test- und Qualitäts-Management Experte auf mittlerweile annähernd 20 Jahre praktische Erfahrung in den Bereichen Soft- und Hardwaretests zurück.

Copyright © 2017 HLMC Events GmbH