Algorithmus gesetzeskonform spezifizieren. Aber wie?

Donnerstag 24. September 2015

Ein Algorithmus ist eine Rechenvorschrift, die beispielsweise in Software umzusetzen ist. Vielen Medizinprodukteherstellern ist unklar, ob solch ein Algorithmus als Teil der Stakeholder-Anforderungen, in der Software-Anforderung oder in der Software-Architektur zu spezifizieren ist. Kein Wunder, denn die Sache ist gar nicht ganz so einfach.

Angenommen Sie als Hersteller bekommen die Aufgabe von einem Kunden, einen Algorithmus zu implementieren, wie er beispielsweise in einer wissenschaftlichen Publikation beschrieben ist. Gleich in mehreren Dokumente Ihrer technischen Dokumentation muss das seinen Niederschlag finden.

Gleich in mehreren Dokumenten kann ein Algorithmus beschrieben werden müssen

Algorithmus als Teil der Stakeholder-Anforderungen

Ein Algorithmus kann Teil Ihrer Stakeholder-Anforderungen sein. Beispielsweise wenn eine Dosisberechnung gemäß einer Formel erfolgen, dann beschreibt diese Formel das Arbeitsergebnis. Sie ist somit eine sogenannte fachliche Anforderung. Fachliche Anforderungen sind neben den Nutzungsanforderungen ein weiterer Vertreter der Stakeholder-Anforderungen.

Algorithmen als Teil der Software-Anforderungen

Beim Beispiel der Dosisberechnung beschreibt die Formel auch gleichzeitig die nach außen (UI) sichtbare Reaktion (in Form der Anzeige der Dosis) auf die Aktion der Benutzer (Eingabe von Parametern wie Patientengewicht). Solch eine Blackbox-Beschreibung ist eine System- bzw. Software-Anforderung.

Es besteht keine Notwendigkeit, den Algorithmus in den Software-Anforderungen erneut zu beschreiben. Vielmehr würde man die entsprechende Stakeholder-Anforderung referenzieren.

Algorithmus als Teil der Software-Architektur

Es kann auch vorkommen, dass ein Algorithmus erst im Rahmen der Software-Architektur als Vorgabe für die Programmierer entwickelt wird. Auch hierzu ein Beispiel:

Wenn eine zurückgelegte Strecke als zeitliches Integral über die Geschwindigkeit v(t) berechnet und angezeigt werden muss, so wäre das eine Software-Anforderung. Die Art und Weise jedoch, mit der dieses Integral berechnet wird (z.B. numerisch versus algorithmisch) wäre eine Entscheidung, die der Software-Architekt trifft, in dem er berücksichtigt:

  • Performanzanforderung
  • Zur Verfügung stehende Hardware
  • Einsatz von Bibliotheken (SOUPs)

In diesem Fall wäre der Algorithmus aufgeteilt worden in einen fachlichen Teil und einen technischen.

 

War dieser Artikel hilfreich? Bitte berwerten Sie:
1 Stern2 Sterne3 Sterne4 Sterne5 Sterne

Autor des Beitrags " Algorithmus gesetzeskonform spezifizieren. Aber wie?

Johner Institut GmbH

Logo Johner Institut klein

Bewertung 0 von 5 bei 0 Bewertungen


Kategorien: Software & IEC 62304
Tags: ,

Kommentar schreiben