Intuitive Formale Spezifikation von Anforderungen
BTC EmbeddedSpecifier ermöglicht Ihnen die intuitive Erstellung und Verwaltung von semi-formalen und formalen Anforderungen in sicherheitskritischen Projekten.
Während die semi-formale und formale Beschreibung von Anforderungen im ISO 26262 und IEC 61508 Standard empfohlen wird, ist für das Lesen und Schreiben der Anforderungen in den meisten formalen Beschreibungssprachen ein umfangreiches Expertenwissen notwendig. BTC EmbeddedSpecifier bietet Ihnen eine einfach zu nutzende Methode, um informelle Anforderungen intuitive in formalisierte Anforderungen zu überführen.
In heutigen Entwicklungsprojekten werden Anforderungen in der Regel in einer informellen, natürlichen Sprache beschrieben. Da natürliche Sprache einen gewissen Interpretationsspielraum mit sich bringt, kann es vorkommen, dass Funktionsentwickler oder Testingenieure ein anderes Verhalten implementieren, als ursprünglich geplant war. Mit Hilfe einer semi-formalen oder formalen Beschreibung im BTC EmbeddedSpecifier werden Anforderungen in eine klare, eindeutige und maschinenlesbare Darstellung überführt. Dies erhöht zum Einen die Qualität der Anforderungen und steigert zusätzlich ihren Wert für die weitere Verwendung im Entwicklungsprozess.
Wir sehen insbesondere zwei Gründe, weshalb die formale Beschreibung von Anforderungen bislang noch keine besonders große Akzeptanz in Softwareentwicklungsprojekten für eingebettete Systeme gefunden hat.
Der Umgang mit formalen Sprachen wie LTL als zu schwierig wahrgenommen
Die Nachverfolgbarkeit zu vorhandenen informalen Anforderungen ist häufig nicht gegeben.
Mit Universal Pattern adressieren wir beide Punkte in einer effizienten Art. Die graphische Darstellung ist gleichzeitig Editor und Report, so dass sich die formalen Anforderungen einfach erstellen, verstehen und reviewen lassen. Man könnte es “Model-based Requirements-Engineering” nennen. Ein typischer Formalisierungsprozess startet mit einer informalen Anforderdung und gliedert sich in drei Schritte:
Im ersten Schritt werden individuelle Ausdrücke oder Ereignisse als sogenannte Makros im Text identifiziert.
Im zweiten Schritt werden diese Makros strukturiert, um deren Beziehung und zeitliches Verhalten abzubilden.
Im letzten Schritt werden die Makros mit echten Interfaceobjekten des zu testenden Systems verknüpft und sind damit maschinenlesbar.
Bei natürlich-sprachlichen Anforderungen ist die Definition der Requirements Coverage immer eine schwierige Frage. Die Entscheidung ob eine Anforderung abgedeckt ist und ob diese Abdeckung vollständig ist basiert in der Regel auf einem manuellen Review der zugehörigen Testfälle.
Auf Basis der Spezifikationsmethode Universal Pattern haben wir eine mathematische Definition von Requirement Coverage entwickelt, welche eine vollständig automatische Berechnung ermöglicht.
Aufgrund der Maschinenlesbarkeit von formalisierten Anforderungen können diese in verschiedenen Verifikationsmethoden eingesetzt und damit die Qualität und die Vollständigkeit des Verifikationsprozesses dramatisch erhöht werden. Beispiele dafür sind:
In einem traditionellen Anforderungs-basierten Test-Prozess überprüft ein Testfall in der Regel nur die Anforderung aus welcher er abgeleitet wurde. Aber könnte Testfall N°5 nicht die Anforderung N°10 verletzen? Mit Formal Test werden alle Testfälle automatisiert gegen alle Anforderungen geprüft, so dass mögliche Seiteneffekte ohne zusätzlichen Testaufwand aufgezeigt werden.
Falls bestimmte Anforderungen nicht vollständig getestet sind, können Sie mit dem Requirements-based Test Generation Add-On die fehlenden Testfälle automatisch generieren und somit automatisiert 100% Requirement Coverage erreichen.
Dank unserer einzigartigen Model-Checking Technologie, erhalten Sie auf Knopfdruck den mathematischen Beweis dass Ihre Sicherheits-Anforderungen nie verletzt werden können. Und sollte eine Verletzung doch möglich sein, generiert Ihnen BTC EmbeddedValidator einen Testfall als Gegenbeispiel und Grundlage für das Debugging.
Sie möchten unsere Tools in Ihrer Entwicklungsumgebung testen? Gerne stellen wir Ihnen eine kostenfreie Evaluierungslizenz zur Verfügung., inkl. Kick-Off Trainings-Workshop und Support durch unser Team.
Sie haben Fragen oder Interesse an einer persönlichen Tool Demo? Nutzen Sie unten stehenden Link, um ein unverbindliches Meeting mit unserem Engineering Team zu buchen.
Sie möchten unsere Tools in Ihrer Entwicklungsumgebung testen? Gerne stellen wir Ihnen eine kostenfreie Evaluierungslizenz zur Verfügung., inkl. Kick-Off Trainings-Workshop und Support durch unser Team.
Sie haben Fragen oder Interesse an einer persönlichen Tool Demo? Nutzen Sie unten stehenden Link, um ein unverbindliches Meeting mit unserem Engineering Team zu buchen.
Unser Blog mit Artikeln rund um die Themen Embedded Software Entwicklung, Model-based Design, Serien-Code Generierung, ISO 26262, Continuous Integration und mehr.
Wolfgang Meincke
Stuttgart, Germany
Entdecken Sie die wichtigsten Features unserer Tools in diesen kurzen Demo Videos.
Wir entwickeln automatisierte und intelligente Test Lösungen, welche unseren Kunden weltweit dabei helfen, eine hohe Software Qualität im Einklang mit dem ISO 26262 Standard zu erreichen
Copyright © 2025 BTC Embedded Systems