{"id":7971,"date":"2025-11-29T08:23:29","date_gmt":"2025-11-29T07:23:29","guid":{"rendered":"https:\/\/web-dev-weissblau.de\/microconsult\/?p=7971"},"modified":"2026-02-13T07:46:34","modified_gmt":"2026-02-13T06:46:34","slug":"evaluation-of-software-verification-tools","status":"publish","type":"post","link":"https:\/\/www.microconsult.de\/en\/evaluierung-von-software-verifikationswerkzeugen\/","title":{"rendered":"Evaluation of software verification tools"},"content":{"rendered":"<h2>Was k\u00f6nnen und leisten sie?<\/h2>\n<p style=\"text-align: left;\" align=\"center\">Autoren: Ralf Gerlich, Dr. Rainer Gerlich, BSSE System and Software Engineering (BSSE), Christian R. Prause, Deutsches Zentrum f\u00fcr Luft- und Raumfahrt e. V. (DLR)<\/p>\n<h3>Beitrag &#8211; Embedded Software Engineering Kongress 2016<\/h3>\n<p><strong>Mit Softwareverifikationswerkzeugen sollen Fehler in Software gefunden werden. Doch gibt es nur sp\u00e4rliche Information \u00fcber das, was die Werkzeuge wirklich leisten. Meistens liegt nur die Beschreibung des Herstellers vor, an der sich ein Anwender (grob) orientieren kann. So werden Werkzeuge eher nach Bedienerfreundlichkeit oder Verbreitung in der Software-Community ausgew\u00e4hlt als nach ihren tats\u00e4chlichen F\u00e4higkeiten, Fehler zu finden \u2013 die von den Herstellerangaben abweichen k\u00f6nnen.<\/strong><\/p>\n<p>Aber ohne detaillierte Information \u00fcber die F\u00e4higkeiten eines Werkzeuges ist es objektiv gesehen eigentlich nur ein gutes Gef\u00fchl, mehr f\u00fcr die Qualit\u00e4tssicherung getan zu haben, mindestens etwas mehr als vorher. Doch k\u00f6nnte man vielleicht noch mehr tun? Um diese Frage zu kl\u00e4ren, hat das Raumfahrtmanagement des Deutschen Zentrums f\u00fcr Luft- und Raumfahrt (DLR) eine Untersuchung beauftragt an sechs Werkzeugen, angewendet auf repr\u00e4sentative Middleware (Embedded Software) aus der Raumfahrt. Diese Aktivit\u00e4t wird aktuell an weiteren Werkzeugen und weiterer Software fortgef\u00fchrt. Ergebnisse der abgeschlossenen Untersuchung werden in diesem Beitrag vorgestellt.<\/p>\n<h2>\u00dcberblick<\/h2>\n<p>Die sechs Werkzeuge repr\u00e4sentieren einen Querschnitt bzgl. der statischen und dynamischen Verifikationsverfahren. Wesentlich f\u00fcr die Auswahl war, dass au\u00dfer Werkzeugkonfiguration keine manuellen Eingriffe w\u00e4hrend der Analyse, insbesondere beim dynamischen Verfahren, notwendig sind. Die Werkzeuge verwenden folgende Methoden:<\/p>\n<ul>\n<li>symbolische Ausf\u00fchrung (2)<\/li>\n<li>abstrakte Interpretation (2)<\/li>\n<li>automatisches Testen (1).<\/li>\n<\/ul>\n<p>Das Testwerkzeug wendet massive Stimulation auf jede Funktion der Middleware an, beobachtet auftretende Anomalien wie Exceptions oder Index-Out-Of-range, und wertet sie aus. Au\u00dferdem wurde noch ein Compiler (gcc mit\u00a0<span class=\"quellcode\">\u2013Wall<\/span>\u00a0unter mingw) ber\u00fccksichtigt, um einen Anhaltspunkt zu bekommen, in wie weit die F\u00e4higkeiten heutiger Compiler vergleichbar sind mit denen von StaticAnalyzern.<\/p>\n<p>Der Vergleich der Ergebnisse der verschiedenen Werkzeuge war eine gro\u00dfe Herausforderung und konnte nicht wie beabsichtigt automatisch durchgef\u00fchrt werden: teilweise fehlen Zeilennummern f\u00fcr die Zuordnung, Meldungen zum selben Fehler k\u00f6nnen f\u00fcr verschiedene Zeilen gemeldet werden, auch doppelt. Im Folgeprojekt wird nun versucht, den Automatisierungsgrad aufgrund der fr\u00fcheren Erfahrungen zu erh\u00f6hen.<\/p>\n<h2>Ratschl\u00e4ge f\u00fcr die Werkzeugauswahl und -anwendung<\/h2>\n<p>Die folgenden Ratschl\u00e4ge \u2013 auf Basis h\u00e4ufiger Fehlannahmen \u2013 sollen helfen, Fehler bei der Auswahl und dem Einsatz von Verifikationswerkzeugen zu vermeiden:<\/p>\n<p><em>Die Werkzeuge unterscheiden sich nicht.<\/em><\/p>\n<p>Falsch. Die Werkzeuge implementieren immer eine bestimmte Methode der Fehlererkennung und wenden einen bestimmten Regelsatz an. Daher k\u00f6nnen sich die Ergebnisse hinsichtlich erkannter Fehler signifikant unterscheiden.<\/p>\n<p><em>Ein Werkzeug findet alle Fehler.<\/em><\/p>\n<p>Falsch. Ein Werkzeug kann nur die Fehler, genauer die Fehlertypen, finden, die sie zugrundeliegende Methode und die Implementierung unterst\u00fctzen. Die Implementierung kann die Bandbreite der Methode noch weiter einschr\u00e4nken.<\/p>\n<p><em>Einfach das Werkzeug anwenden, das reicht.<\/em><\/p>\n<p>Falsch. F\u00fcr die Anwendung sollte eine Strategie entwickelt werden. Welche Fehler kann ein Werkzeug erkennen, welche sollen erkannt werden, wie hoch darf das Restrisiko sein, welche Werkzeuge sollte man kombinieren?<\/p>\n<p>Eine solche Strategie setzt die Kenntnis der F\u00e4higkeiten voraus.<\/p>\n<p><em>Alle Werkzeuge haben das Ziel, alle Fehler zu finden.<\/em><\/p>\n<p>Falsch. Werkzeuge k\u00f6nnen bzw. m\u00fcssen wegen begrenzter Ressourcen (Speicher, Zeit, Genauigkeiten) Kompromisse schlie\u00dfen. Manche minimieren die (Warte)Zeit zu Lasten der Genauigkeit und Vollst\u00e4ndigkeit.<\/p>\n<p>Diese schnelle, &#8222;oberfl\u00e4chlichere&#8220; Fehlererkennung kann durchaus sinnvoll sein, um viele einfache Fehler zu beseitigen, um die Laufzeiten genauerer\/ vollst\u00e4ndigerer Werkzeuge zu reduzieren, also um den meisten groben M\u00fcll wegzur\u00e4umen, damit anschlie\u00dfend der feinere M\u00fcll besser aufgenommen werden kann, d.h. eine mehrstufige Strategie zur Optimierung.<\/p>\n<p><em>Die Werkzeuge erzeugen viele unzutreffende Meldungen.<\/em><\/p>\n<p>Falsch. Die aktuelle Untersuchung zeigt, dass nur ein kleiner Anteil der Meldungen unzutreffend ist, im Durchschnitt aller Werkzeuge ca. 25%.<\/p>\n<p>Der \u00fcblicherweise kommunizierte oder angenommene Wert stellt ein Vielfaches dieses beobachteten Wertes dar.<\/p>\n<p><em>Das Werkzeug wird nur zur Abnahme am Projektende eingesetzt.<\/em><\/p>\n<p>Falsch. Diese Strategie f\u00fchrt erfahrungsgem\u00e4\u00df zu einer hohen Anzahl von Meldungen, wobei ein hoher Anteil davon unzutreffend sein kann &#8211; im Sinne von &#8222;der Fehler kann nicht auftreten&#8220; &#8211; oder nur f\u00fcr wenige Randf\u00e4lle zutrifft &#8211; im Sinne von &#8222;es ist unwahrscheinlich, dass der Fehler auftritt.&#8220;<\/p>\n<p><em>Jeder gemeldete Fehler kann auch beseitigt werden.<\/em><\/p>\n<p>Falsch. Bei vielen Meldungen, d.h. einer Mischung aus kritischen, weniger kritischen und unkritischen Meldungen, k\u00f6nnen kritische Meldungen \u00fcbersehen werden. Ziel sollte daher sein, durch Vorsorgema\u00dfnahmen wie Anwendung von &#8222;Best Practices&#8220; und fr\u00fchzeitigem Werkzeugeinsatz (s.o.) die Anzahl unzutreffender Meldungen zu reduzieren.<\/p>\n<p><em>Fehler, die von der Implementierung eines Werkzeuges unterst\u00fctzt werden, werden immer gemeldet.<\/em><\/p>\n<p>Falsch. Bestimmte Fehler k\u00f6nnen die Meldungen f\u00fcr anderer Fehler unterdr\u00fccken. Einen vollst\u00e4ndigen \u00dcberblick erh\u00e4lt man erst dann, wenn keine (kritischen) Meldungen mehr erscheinen.<\/p>\n<p><em>Unzutreffende Meldungen kann man ignorieren.<\/em><\/p>\n<p>Falsch. Ob eine Meldung zutrifft, also einen Fehler anzeigt, der beseitigt werden muss oder nicht, kann erst nach (eingehender) Analyse festgestellt werden. Das erfordert (wahrscheinlich viel) Aufwand.<\/p>\n<p>Ziel sollte also sein, solche Meldungen zu vermeiden durch geeignete Ma\u00dfnahmen wie durch Anwendung von &#8222;Best Practices&#8220; und dem fr\u00fchzeitigen Werkzeugeinsatz, damit die Ursachen f\u00fcr unzutreffende Meldungen baldm\u00f6glichst erkannt werden k\u00f6nnen.<\/p>\n<p><em>Meldungen sind immer verst\u00e4ndlich und nachvollziehbar.<\/em><\/p>\n<p>Falsch. Die Aussage der Meldung ist nicht immer leicht nachvollziehbar. Bei einigen Werkzeugen muss man die zugrundeliegende Methode kennen, um die Meldung verstehen und die Stelle des Fehlers finden zu k\u00f6nnen.<\/p>\n<p><em>Die Meldungen sind eindeutig hinsichtlich der Identifikation eines tats\u00e4chlichen Fehlers.<\/em><\/p>\n<p>Falsch. Die Meldungen m\u00fcssen meistens interpretiert werden. Ob die Meldungen zutreffen, h\u00e4ngt auch davon ab, welche Sicht das Werkzeug auf die Softwarehat. Je nachdem, ob Kontext ber\u00fccksichtigt wird, also einschr\u00e4nkende Bedingungen bspw. in einem integrierten System, oder nicht, kann die Meldung ein True oder False Positive sein (zutreffend oder nicht, TP oder FP). Bei manchen Werkzeugen kann festgelegt werden, ob Kontext ber\u00fccksichtigt wird oder nicht. Wenn ja, dann ist die Meldung eindeutig bzgl. der Festlegung zum Kontext.<\/p>\n<h2>Kennzahlen<\/h2>\n<p>F\u00fcr die Auswertung wurden 20 Fehlertypen identifiziert, auf die alle Meldungen aller Werkzeuge abgebildet werden konnten, und in drei Kategorien unterteilt: kritisch, potenziell kritisch und unkritisch. Als Kennzahlen wurden Sensitivity und Precision bestimmt, \u00fcber alle Fehlertypen, f\u00fcr die 3 Kategorien und pro Fehlertyp. Beide Werte liegen zwischen 0 und 1. Je n\u00e4her bei 1, desto besser.<\/p>\n<p>Die Sensitivity charakterisiert die F\u00e4higkeit, Fehler zu finden und ist der Quotient aus der Anzahl gefundener Fehler zu der Gesamtanzahl der Fehler. Da prinzipiell die Anzahl von Fehlern in der gepr\u00fcften Software nicht bestimmt werden kann, wurde sie durch die Vereinigungsmenge aller mit allen Werkzeugen gefundenen Fehler approximiert, erg\u00e4nzt durch weitere Fehler, die bei der Analyse der Werkzeugmeldungen manuell gefunden wurden.<\/p>\n<p>Die Precision ist ein Ma\u00df f\u00fcr die Treffsicherheit eines Werkzeuges und ist der Quotient aus der Anzahl tats\u00e4chlicher Fehler unter allen Meldungen des Werkzeuges (TP \/ (TP+FP)).<\/p>\n<h2>Charakterisierung der Werkzeuge<\/h2>\n<p>Die von den Werkzeugen benutzten Verfahren werden in Tab. 1 kurz charakterisiert.<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td width=\"78\">\n<p align=\"center\"><strong>Werkzeug<\/strong><\/p>\n<\/td>\n<td width=\"77\">\n<p align=\"center\"><strong>Typ<\/strong><\/p>\n<\/td>\n<td width=\"317\">\n<p align=\"center\"><strong>Analysemethode<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">1<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">statisch<\/td>\n<td width=\"317\">\n<p align=\"left\">SymbolischeAusf\u00fchrung, Datenflussanalyse<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">2<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">statisch<\/td>\n<td width=\"317\">\n<p align=\"left\">Abstrakte Interpretation<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">3<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">dynamisch<\/td>\n<td width=\"317\">\n<p align=\"left\">Auto-Stimulation<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">4<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">statisch<\/td>\n<td width=\"317\">\n<p align=\"left\">SymbolischeAusf\u00fchrung, Datenflussanalyse<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">5<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">statisch<\/td>\n<td width=\"317\">\n<p align=\"left\">Datenflussanalyse<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"78\">\n<p align=\"center\">6<\/p>\n<\/td>\n<td valign=\"top\" width=\"77\">Compiler<\/td>\n<td width=\"317\">\n<p align=\"left\">Syntax, Semantik<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><em><br \/>\nTab. 1: Charakterisierung der Werkzeuge<\/em><\/p>\n<h2>Ergebnisse<\/h2>\n<p>Die hier dargestellten Ergebnisse spiegeln nur einen kleinen Ausschnit der erarbeiteten Ergebnisse wider. Sie beruhen auf bestimmten Auswertungskriterien. Bei deren Variation \u00e4ndern sich auch die Werte f\u00fcr Sensitivity und Precision.<\/p>\n<p>Sensitivity und Precision sind nicht korreliert. Die Werte von Sensitivity variieren von 0,04 bis 0,7, die von Precision von 0,5 bis 0,98. Ein Werkzeug mit geringer Sensitivity kann eine hohe Precision haben.<\/p>\n<p>Insgesamt werden \u2013 \u00fcberraschenderweise &#8211; ca. 2\/3 der Meldungen nur von einem der Werkzeuge generiert, so dass ein erheblicher Zuwachs f\u00fcr die Sensitivity bei Kombination mehrerer Werkzeuge erwartet werden kann. Bspw. steigt der Wert der h\u00f6chsten Sensitivity von 0,5 eines einzelnen Werkzeuges auf 0,8 bei Kombination von zwei Werkzeugen.<\/p>\n<p>Ein weiteres Ergebnis der Untersuchungen und Diskussionen mit den Werkzeugherstellern ist in Bild 1 (<a title=\"Evaluierung von Software-Verifikationswerkzeugen\" href=\"https:\/\/www.microconsult.de\/wp-content\/uploads\/2025\/12\/test_qualitaet_evaluierung_von_software-verifikationswerkzeugen_gerlich_bsse.pdf\" target=\"_blank\" rel=\"noopener\">PDF<\/a>) dargestellt. Die Werkzeuge m\u00fcssen nicht notwendigerweise alle das Ziel haben, m\u00f6glichst viele Fehler zu finden. Die Implementierung kann auf einem Kompromiss beruhen: Sensitivity gegen Ausf\u00fchrungszeit. So kann es durchaus sinnvoll sein, mit einem Werkzeug mit geringerer Sensitivity schnell bestimmte Fehlertypen zu finden, um dann sp\u00e4ter umfangreichere und\/oder effizientere Analysen f\u00fcr komplexere Fehlertypen durchf\u00fchren zu k\u00f6nnen. Man sollte nur wissen, welcher Kompromiss geschlossen wurde.<\/p>\n<h2>Zusammenfassung<\/h2>\n<p>Die Ergebnisse zeigen, dass bei der Planung der Verifikation von Software Kenntnisse \u00fcber die Eigenschaften der auszuw\u00e4hlenden Werkzeuge unumg\u00e4nglich sind, wenn das Ziel einer optimalen Qualit\u00e4t der Software erreicht werden soll. Zur weiteren Optimierung und Effizienzsteigerung sollten die Werkzeuge fr\u00fchzeitig und kontinuierlich sowie ggf. kombiniert \u00fcber die Codierungsphase eingesetzt werden. Dadurch kann der Codierstil auf die Bedingungen der sp\u00e4teren Verifikation abgestimmt werden. Viele Meldungen k\u00f6nnen auf diese Weise vermieden werden, inkl. der vermutlich sonst hohe manuelle Aufwand.<\/p>\n<p>Der Compiler nur mit der Option \u2013Wall ist keine ernsthafte Konkurrenz zu den Static Analysern. Eine weitere Untersuchung ist geplant, um zu kl\u00e4ren, ob bei Aktivierung der Optimierung bessere Ergebnisse erreicht werden.<\/p>\n<p>Weitere Information zu der Auswertung und den Ergebnissen sind unter [1] und [2] zu finden, oder auf Nachfrage bei den Autoren.<\/p>\n<h2>Danksagung<\/h2>\n<p>Die Autoren danken den Werkzeugherstellern bzw. -distributoren f\u00fcr die Werkzeuge 4 und 5, die eine Evaluierungslizenz zur Verf\u00fcgung gestellt haben.<\/p>\n<p>Der Inhalt dieses Beitrags ist ein Ergebnis des Projektes &#8222;Evaluierung von Software-Verifikationsmethoden und -werkzeugen&#8220; (ESVW) f\u00fcr das Raumfahrtmanagement des Deutschen Zentrums f\u00fcr Luft- und Raumfahrt (DLR) im Auftrag des Bundesministeriums f\u00fcr Wirtschaft und Energie (BMWi), Fkz . 50PS1505.<\/p>\n<h2>Literatur- und Quellenverzeichnis<\/h2>\n<p class=\"references\">[1] C.R.Prause, R.Gerlich, R.Gerlich, A.Fischer: &#8222;Characterizing Verification Tools Through Coding Error Candidates Reported in Space Flight Software&#8220;, Eurospace Symposium DASIA&#8217;15 &#8222;Data Systems in Aerospace&#8220;, 19 \u2013 21 May, 2015, Barcelona, Spain<\/p>\n<p class=\"references\">[2] R.Gerlich, R.Gerlich, A.Fischer, M.Pinto, C.R.Prause: &#8222;Early Results from Characterizing Verification Tools Through Coding Error Candidates Reported in Space Flight Software&#8220;, Eurospace Symposium DASIA&#8217;16 &#8222;Data Systems in Aerospace&#8220;, 10 \u2013 12 May, 2016, Tallinn, Estonia<\/p>\n<p><a title=\"Evaluierung von Software-Verifikationswerkzeugen (PDF)\" href=\"https:\/\/www.microconsult.de\/wp-content\/uploads\/2025\/12\/test_qualitaet_evaluierung_von_software-verifikationswerkzeugen_gerlich_bsse.pdf\" target=\"_blank\" rel=\"noopener\"><strong>Beitrag als PDF downloaden<\/strong><\/a><\/p>\n<hr \/>\n<h2>Test, Qualit\u00e4t &amp; Debug &#8211; unsere Trainings &amp; Coachings<\/h2>\n<p><strong>Wollen Sie sich auf den aktuellen Stand der Technik bringen?<\/strong><\/p>\n<p>Dann informieren Sie sich\u00a0<a title=\"Test &amp; Debug Training und Coaching\" href=\"https:\/\/www.microconsult.de\/alle-trainings-termine-komplettuebersicht\/\" target=\"_blank\" rel=\"noopener\"><strong>hier<\/strong>\u00a0<\/a>zu Schulungen\/ Seminaren\/ Trainings\/ Workshops und individuellen Coachings von MircoConsult zum Thema Test, Qualit\u00e4t &amp; Debug.<\/p>\n<p><strong>Training &amp; Coaching zu den weiteren Themen unseren Portfolios finden Sie\u00a0<a title=\"Training &amp; Beratung - alle Themen\" href=\"https:\/\/www.microconsult.de\/training-beratung\/\" target=\"_blank\" rel=\"noopener\">hier<\/a>.<\/strong><\/p>\n<hr \/>\n<h2>Test, Qualit\u00e4t &amp; Debug &#8211; Fachwissen<\/h2>\n<p>Wertvolles Fachwissen zum Thema\u00a0Test, Qualit\u00e4t &amp; Debug steht\u00a0<a title=\"Test und Debug\" href=\"https:\/\/www.microconsult.de\/test-und-debug\/\" target=\"_blank\" rel=\"noopener\"><strong>hier<\/strong>\u00a0<\/a>f\u00fcr Sie zum kostenfreien Download bereit.<\/p>\n<p><a title=\"Test und Debug\" href=\"https:\/\/www.microconsult.de\/test-und-debug\/\" target=\"_blank\" rel=\"noopener\"><strong>Zu den Fachinformationen<\/strong><\/a><\/p>\n<p><strong>Fachwissen zu weiteren Themen unseren Portfolios finden Sie <a title=\"Fachinformationen\" href=\"https:\/\/www.microconsult.de\/fachwissen\/\" target=\"_blank\" rel=\"noopener\">hier<\/a>.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Was k\u00f6nnen und leisten sie? Autoren: Ralf Gerlich, Dr. Rainer Gerlich, BSSE System and Software Engineering (BSSE), Christian R. Prause, Deutsches Zentrum f\u00fcr Luft- und Raumfahrt e. V. (DLR) Beitrag &#8211; Embedded Software Engineering Kongress 2016 Mit Softwareverifikationswerkzeugen sollen Fehler in Software gefunden werden. Doch gibt es nur sp\u00e4rliche Information \u00fcber das, was die Werkzeuge [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","inline_featured_image":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-7971","post","type-post","status-publish","format-standard","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Evaluierung von Software-Verifikationswerkzeugen - MicroConsult Academy GmbH<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.microconsult.de\/en\/evaluation-of-software-verification-tools\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Evaluierung von Software-Verifikationswerkzeugen - MicroConsult Academy GmbH\" \/>\n<meta property=\"og:description\" content=\"Was k\u00f6nnen und leisten sie? Autoren: Ralf Gerlich, Dr. Rainer Gerlich, BSSE System and Software Engineering (BSSE), Christian R. Prause, Deutsches Zentrum f\u00fcr Luft- und Raumfahrt e. V. (DLR) Beitrag &#8211; Embedded Software Engineering Kongress 2016 Mit Softwareverifikationswerkzeugen sollen Fehler in Software gefunden werden. Doch gibt es nur sp\u00e4rliche Information \u00fcber das, was die Werkzeuge [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.microconsult.de\/en\/evaluation-of-software-verification-tools\/\" \/>\n<meta property=\"og:site_name\" content=\"MicroConsult Academy GmbH\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-29T07:23:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-13T06:46:34+00:00\" \/>\n<meta name=\"author\" content=\"weissblau media\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"weissblau media\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/\"},\"author\":{\"name\":\"weissblau media\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/#\\\/schema\\\/person\\\/b6d4c4ae959b068fbe8d9416ed019a0a\"},\"headline\":\"Evaluierung von Software-Verifikationswerkzeugen\",\"datePublished\":\"2025-11-29T07:23:29+00:00\",\"dateModified\":\"2026-02-13T06:46:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/\"},\"wordCount\":1729,\"commentCount\":0,\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/\",\"url\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/\",\"name\":\"Evaluierung von Software-Verifikationswerkzeugen - MicroConsult Academy GmbH\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/#website\"},\"datePublished\":\"2025-11-29T07:23:29+00:00\",\"dateModified\":\"2026-02-13T06:46:34+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/#\\\/schema\\\/person\\\/b6d4c4ae959b068fbe8d9416ed019a0a\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/evaluierung-von-software-verifikationswerkzeugen\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.microconsult.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Evaluierung von Software-Verifikationswerkzeugen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/#website\",\"url\":\"https:\\\/\\\/www.microconsult.de\\\/\",\"name\":\"MicroConsult Academy GmbH\",\"description\":\"Professionelle Schulungen, Beratung und Projektunterst\u00fctzung\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.microconsult.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.microconsult.de\\\/#\\\/schema\\\/person\\\/b6d4c4ae959b068fbe8d9416ed019a0a\",\"name\":\"weissblau media\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g\",\"caption\":\"weissblau media\"},\"sameAs\":[\"https:\\\/\\\/www.microconsult.de\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Evaluation of software verification tools - MicroConsult Academy GmbH","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.microconsult.de\/en\/evaluation-of-software-verification-tools\/","og_locale":"en_GB","og_type":"article","og_title":"Evaluierung von Software-Verifikationswerkzeugen - MicroConsult Academy GmbH","og_description":"Was k\u00f6nnen und leisten sie? Autoren: Ralf Gerlich, Dr. Rainer Gerlich, BSSE System and Software Engineering (BSSE), Christian R. Prause, Deutsches Zentrum f\u00fcr Luft- und Raumfahrt e. V. (DLR) Beitrag &#8211; Embedded Software Engineering Kongress 2016 Mit Softwareverifikationswerkzeugen sollen Fehler in Software gefunden werden. Doch gibt es nur sp\u00e4rliche Information \u00fcber das, was die Werkzeuge [&hellip;]","og_url":"https:\/\/www.microconsult.de\/en\/evaluation-of-software-verification-tools\/","og_site_name":"MicroConsult Academy GmbH","article_published_time":"2025-11-29T07:23:29+00:00","article_modified_time":"2026-02-13T06:46:34+00:00","author":"weissblau media","twitter_card":"summary_large_image","twitter_misc":{"Written by":"weissblau media","Estimated reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/#article","isPartOf":{"@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/"},"author":{"name":"weissblau media","@id":"https:\/\/www.microconsult.de\/#\/schema\/person\/b6d4c4ae959b068fbe8d9416ed019a0a"},"headline":"Evaluierung von Software-Verifikationswerkzeugen","datePublished":"2025-11-29T07:23:29+00:00","dateModified":"2026-02-13T06:46:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/"},"wordCount":1729,"commentCount":0,"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/","url":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/","name":"Evaluation of software verification tools - MicroConsult Academy GmbH","isPartOf":{"@id":"https:\/\/www.microconsult.de\/#website"},"datePublished":"2025-11-29T07:23:29+00:00","dateModified":"2026-02-13T06:46:34+00:00","author":{"@id":"https:\/\/www.microconsult.de\/#\/schema\/person\/b6d4c4ae959b068fbe8d9416ed019a0a"},"breadcrumb":{"@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.microconsult.de\/evaluierung-von-software-verifikationswerkzeugen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.microconsult.de\/"},{"@type":"ListItem","position":2,"name":"Evaluierung von Software-Verifikationswerkzeugen"}]},{"@type":"WebSite","@id":"https:\/\/www.microconsult.de\/#website","url":"https:\/\/www.microconsult.de\/","name":"MicroConsult Academy GmbH","description":"Professional training, consulting and project support","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.microconsult.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/www.microconsult.de\/#\/schema\/person\/b6d4c4ae959b068fbe8d9416ed019a0a","name":"weissblau media","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bbb409da4970da9446f6c49465d453cb8a0dae301e4d4f465b5c4e62408daa2e?s=96&d=mm&r=g","caption":"weissblau media"},"sameAs":["https:\/\/www.microconsult.de"]}]}},"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/posts\/7971","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/comments?post=7971"}],"version-history":[{"count":6,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/posts\/7971\/revisions"}],"predecessor-version":[{"id":11694,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/posts\/7971\/revisions\/11694"}],"wp:attachment":[{"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/media?parent=7971"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/categories?post=7971"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microconsult.de\/en\/wp-json\/wp\/v2\/tags?post=7971"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}