Softwareentwicklung nach EN 62304

Teil 1: Normkonformes Design

22. November 2017, 9:10 Uhr | Mark Pitchford, Technical Specialist bei LDRA
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Design der Softwarearchitektur

Da die Anforderungen im gesamten Projektverlauf nur selten unverändert bleiben, kann die Pflege einer Rückverfolgbarkeits-Matrix zu einem administrativen Albtraum werden. Ein Requirements Traceability Tool entschärft das Problem durch die automatische Pflege der Verbindungen zwischen den Anforderungen, der Entwicklung und den Testartefakten und -aktivitäten. Jegliche Änderungen in den zugehörigen Dokumenten oder dem Softwarecode lassen sich automatisch markieren, sodass alle Tests, die noch einmal überarbeitet werden müssen, entsprechend berücksichtigt werden (Bild 3).

Design der Softwarearchitektur

Im Zuge des Designs der Softwarearchitektur muss der Hersteller die wichtigen strukturellen Komponenten, ihre nach außen sichtbaren Eigenschaften und die Beziehungen zwischen ihnen definieren. Jegliches Verhalten von Softwarekomponenten, das Auswirkungen auf andere Komponenten haben kann, sollte in der Architektur beschrieben werden. Damit können sämtliche Anforderungen an die Software durch spezifizierte Softwarebausteine implementiert werden, was sich in der Regel durch eine technische Evaluierung verifizieren lässt.

Da die Softwarearchitektur auf den zuvor definierten Anforderungen basiert, müssen für sie Schnittstellen zwischen den Softwarebausteinen, die die Anforderungen umsetzen, definiert werden. Viele dieser Elemente werden im Rahmen des Projekts selbst erstellt, während einige aus anderen Projekten übernommen werden – einige vielleicht sogar in Form von Bibliotheken externer Zulieferer. Für solch einen Code muss der Nachweis erbracht werden, dass er den Funktions- und Performance-Anforderungen des Projekts entspricht.

Aus Gründen des Risikomanagements müssen bestimmte Elemente möglicherweise separiert werden. Dennoch sind ihre Verbindungen zu den anderen Elementen Bestandteil der Gesamtarchitektur. Tools können in vielen Phasen des Architekturdesigns Hilfestellung leisten, so zum Beispiel bei der Spezifikation der Anforderungen und bei der Rückverfolgbarkeit und Verifikation des Designmodells. Wird beim Design der Softwarearchitektur nach einem modellbasierten Konzept vorgegangen – zum Beispiel mit Simulink, Rational Rhapsody oder Scade –, kann ein mit den gewählten Modellierungs-Tools integriertes Toolpaket die Analyse des generierten Codes und die Rückverfolgung zu den Modellen erheblich erleichtern.

Detailliertes Softwaredesign

Sind die Anforderungen und die Architektur definiert und verifiziert, kann auf dieser Grundlage mit dem detaillierten Design begonnen werden. Es spezifiziert Algorithmen, Datendarstellungen und die Schnittstellen zwischen den verschiedenen Softwaremodulen und Datenstrukturen. Erst wenn das Design fertig ist, kann mit der Implementierung begonnen werden. Das geschieht in der Regel durch eine technische Evaluierung des detaillierten Designs als Ganzes sowie durch Verifikation der einzelnen Module und ihren Schnittstellen.

In einer späteren Phase des Entwicklungszyklus kann ein Toolpaket beim Generieren grafischer Artefakte helfen, die das implementierte Design mithilfe von Walktroughs oder Inspektionen überprüfen. Ein möglicher Ansatz ist das Prototyping der Softwarearchitektur mit einer geeigneten Programmiersprache. So lassen sich auch etwaige Anomalien im Design auffinden, Grafische Artefakte wie etwa Aufruf- und Flussdiagramme eignen sich ebenfalls gut, um das implementierte Design durch visuelle Inspektion zu überprüfen.

Bild 3. Automatisierte Rückverfolgbarkeit der Anforderungen mit dem »TBmanager«
Bild 3. Automatisierte Rückverfolgbarkeit der Anforderungen mit dem »TBmanager«
© LDRA

  1. Teil 1: Normkonformes Design
  2. Softwareentwicklung mit der LDRA Tool Suite
  3. Design der Softwarearchitektur

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu LDRA Inc.