Agile Entwicklungsmethoden

Level up: So entsteht Software schneller

25. September 2018, 14:00 Uhr | Mirjana Slapničar und Nenad Časni (Comtrade)
Auch die Software muss Normen erfüllen.
© Pixabay

Der Funktionsumfang vieler medizintechnischer Produkte hat in den vergangenen Jahren zugenommen. Realisiert werden die neuen Features häufig über Software-Komponenten. Damit steigen gleichzeitig die Anforderungen an die Softwareentwicklung.

Die vielfältigen technologischen Innovationen in der Medizintechnik führen zu einem Wettlauf der Anbieter und zu immer kürzeren Produktzyklen. Jedoch bleibt eine zentrale Aufgabe der Hersteller, die Qualität der Software zu sichern: Schleicht sich ein Fehler ein, kann dies zu erheblichen finanziellen Verlusten führen und sogar Menschenleben gefährden. Unternehmen benötigen daher innerhalb der Produkt- und Software-Entwicklung entsprechend angepasste Methoden, um trotz hohem Innovationstempo die strengen Anforderungen an medizintechnische Produkte erfüllen zu können. Hier helfen agile Methoden, die Entwicklungsarbeiten auch in bei medizinischen Geräten zu beschleunigen.

Bei der Softwareentwicklung setzen Unternehmen zumeist auf das traditionelle Wasserfallmodell. Diese Methode erscheint auf den ersten Blick als eine unkomplizierte Möglichkeit, um die zahlreichen gesetzlichen Anforderungen einhalten zu können. Hierbei werden noch vor Beginn der Codierungs-Arbeiten alle Anforderungen erfasst, geprüft und genehmigt. Erst dann beginnt die eigentliche Entwicklung. Ist eine erste Version der Software aus Sicht der Entwickler fertig, erfolgt die vom Gesetzgeber geforderte Verifizierung und Validierung.

Agil entwickeln und Compliance erfüllen

Ein solches traditionelles Modell kann unter bestimmten Umständen zwar durchaus noch praktikabel sein. In der Praxis verändern sich aber während der Code-Entwicklung die Anforderungen und Wünsche auf Kundenseite. Methoden wie die agile Softwareentwicklung helfen dabei, mehr Flexibilität in ein Projekt zu bringen. Aber lassen sich damit auch die gesetzlichen Anforderungen erfüllen?

Wer eine neue Entwicklungsmethode einführen möchte, muss in der stark regulierten Medizintechnik eine Vielzahl von Vorschriften berücksichtigen. So sind beispielsweise in der Norm IEC 62304 Anforderungen definiert, die bei der Entwicklung von Software und Komponenten einzuhalten sind (Kasten). Die hier vorgeschriebenen Prozesse, Aktivitäten und Aufgaben bilden den Rahmen für die Organisation der Entwicklungsarbeiten.

Kurz erklärt

Die Norm IEC 62304 (»Medizinprodukte – Software-Lebenszyklus-Prozesse«) beschreibt Prozesse zur Herstellung und Wartung von Software, die sowohl Teil eines Medizinprodukts als auch alleinstehendes Medizinprodukt sein kann. Explizit schließt due Norm die Validierung und abschließende Freigabe des Medizinproduktes aus, deckt aber ansonsten den Entwicklungsprozess von der Erhebung der Anforderung an die Software bis hin zu deren Freigabe ab. Ein wichtiger Teil ist die Wartung und Änderung von Software, für die die Norm eigene Prozesse beschreibt. Der Schnittstelle zum Risikomanagement ist ebenfalls ein eigenes Kapitel gewidmet, das grundsätzlich auf die EN ISO 14971 verweist und diese nur um Software-spezifisches ergänzt.

Quelle: C. Johne, M. Hölzer-Klüpfel, S. Wittorf: Basiswissen Medizinsche Software. 1. Auflage. Dpunkt.verlag. Heidelberg 2011

 

Warum überhaupt auf agile Entwicklung setzen?

Bei der agilen Methode müssen bei Projektstart die Anforderungen noch nicht vollständig bis ins Detail definiert sein. Das unterscheidet sie von traditionellen Methoden, die vollständig definierte Leistungsanforderungen verlangen. Somit kann bei der agilen Software-Entwicklung der tatsächliche Entwicklungsprozess deutlich früher beginnen, ohne eine unnötige Fixierung auf Details, die sich im späteren Verlauf möglicherweise aus praktischen Gründen oder aufgrund von falsch verstandenen Anforderungen als irrelevant erweisen.

Agile Herangehensweisen ermöglichen es zudem, medizintechnische Produkte und deren Software-Komponenten frühzeitig ersten Praxistests zu unterziehen. Die in kurzen Abständen durchgeführten Planungs- und Entwicklungszyklen erleichtern den regelmäßigen Abgleich der Softwareentwicklung mit den Anforderungen von Nutzern. Ist das Produkt beispielsweise stark kundenorientiert und ändern sich Anforderungen immer wieder, verlangt dies höchste Flexibilität bei den Entwicklern. Agile Methoden helfen dabei, die veränderten Kundenwünsche in den Entstehungsprozess einfließen zu lassen.

Die Norm IEC 62304 schreibt ein V-Modell für die Software-Entwicklung vor. Damit lassen sich die allgemeinen Anforderungen an die medizinische Software-Entwicklung erfüllen.
Die Norm IEC 62304 schreibt ein V-Modell für die Software-Entwicklung vor. Damit lassen sich die allgemeinen Anforderungen an die medizinische Software-Entwicklung erfüllen.* 
© Wikimedia Commons

  1. Level up: So entsteht Software schneller
  2. Warum überhaupt auf agile Entwicklung setzen?

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu ComTrade Software Solutions GmbH