Accemic among Speakers of Software Quality Days 2022

In the upcoming year the already known Software Quality Days will take place again. This convention is one of the most important ones in Europe if it comes to Software Quality in the Software-Cycle as a whole.

In 2022 the convention will take place under hygiene regulations according to the then then standards in the Austria Center Vienna. Accemic Technologies is proud to hold a speech in the field of Embedded Testing on the first conference day (21.1.2022). The title of the speech is “structural test on higher levels” and will start at 2.35pm. We are more than happy that Accemic Technologies will among the speakers of the Software Quality Days and will be able to show its knowledge on this day.

Talk @ SAEC Days 2020 23.7.2020

Alexander Weiss und Martin Heininger (HEICON):
Strukturelle Tests auf höheren Testebenen

Wie kann die Vollständigkeit von Integrations- und Systemtests eingebetteter Systeme gemessen werden? Mathematisch exakt tut man dies mit strukturellen Tests. Leider hat die hierzu oftmals verwendete SW-Instrumentierung den Nachteil, dass sie das Zeitverhalten des Releasecodes und eine ganze Menge anderer Dinge verfälscht. Bei Modultests kommt es darauf nicht unbedingt an, bei Tests höherer Ebenen meist aber schon. Was also tun?

Im Vortrag (und in der begleitenden Ausstellung) wird eine neue Beobachtungsmethode vorgestellt, die mittels eines live synchronisierten digitalen Zwillings nichtintrusiv und kontinuierlich die strukturelle Testabdeckung misst und damit eine exakte Aussage liefert, wie viele weiße Flecken bei der Ausführung der höheren Tests verblieben sind. Ist dieser nicht ausgeführte Code nur für Modultests oder gar nicht erreichbar? Oder fehlt da der eine oder andere Test?

Zudem erlaubt der tiefe Blick in den Prozessor (ohne dass die Applikation dadurch beeinflusst wird) auch die parallele Überwachung einer Vielzahl komplexer Timing -Constraints. Diese lassen sich bequem in einer Hochsprache beschreiben und schlagen Alarm, wenn nach zehn Stunden Betrieb eine Funktion eine Mikrosekunde zu lange gebraucht hat. Ohne SW-Instrumentierung.

Um die Testbarkeit eines eingebetteten Systems derart zu verbessern, müssen einige Soft- und Hardwarevoraussetzungen bei der Planung der Systemarchitektur berücksichtigt werden. Am Ende des Vortrags werden auch diese erläutert.

Talk @ SAEC Days 2020 21.7.2020

Martin Heininger (HEICON) and Alexander Weiss: Strukturelle Tests auf höheren Testebenen Wie kann die Vollständigkeit von Integrations- und Systemtests eingebetteter Systeme gemessen werden? Mathematisch exakt tut man dies mit strukturellen Tests. Leider hat die hierzu oftmals verwendete SW-Instrumentierung den Nachteil, dass sie das Zeitverhalten des Releasecodes und eine ganze Menge anderer Dinge verfälscht. Bei Modultests […]

Forum Safety and Security 2020

Alexander Weiss: Dynamische und strukturelle Tests auf höheren Ebenen

Fehlerfreie Software ist ein unerfüllbarer Traum. Jedoch muss eine Annäherung an dieses Ideal eines der wichtigsten Entwicklungsziele sein, besonders im Bereich der sicherheitskritischen Systeme. Neben einer wohl überlegten Systemarchitektur und einer guten Implementierung sind daher (a) möglichst vollständige funktionale und strukturelle Tests und (b) Vorkehrungen für den Umgang mit Fehlern im Feld unbedingte Voraussetzungen, um die maximal mögliche Sicherheit für ein System zu erreichen. Die entscheidende Voraussetzung für umfassende Tests und effiziente Fehlersuche ist die Beobachtbarkeit, idealerweise ohne das System dabei zu beeinflussen. Bei den funktionalen Tests wird die automatische Überprüfung von Timing-Constraints (dynamische Analyse von Wirketten) immer bedeutsamer, bei den strukturellen Tests wird es zunehmend wichtiger, diese auch auf höheren Testebenen (Integrations- und Systemtests) durchführen zu können. Im Vortrag wird ein Überblick über neue Ansätze zum Umgang mit diesen Herausforderungen gegeben. Es wird erläutert und demonstriert, wie Timing-Constraints mittels einer Hochsprache beschrieben werden und wie sich kleinste Timingverletzungen selbst in langen Testläufen vollautomatisiert erkennen lassen. Der Teilnehmer lernt, wie er die Anzahl verbleibender Fehler im Release-Code abschätzen kann, welche Fehlertypen durch Tests auf höheren Ebenen erkannt werden können und welche Vorkehrungen er in seinem Hard- und Softwaredesign treffen sollte, um möglichst effizient testen und später debuggen zu können.