ضمان أعلى معايير السلامة وتقليل المخاطر المتعلقة بفشل الأجهزة الطبية هما الركيزتان الأساسيتان لتطوير برمجيات الأجهزة الطبية. وتخضع هذه المجالات لثلاثة معايير: ISO 14971، وISO 13485 الذي سنركز عليه في المرة القادمة، وIEC 62304 الذي هو محور هذا المقال.

دون مزيد من التأخير، أفسح المجال لـ Krzysztof Minicki، مدير قطاع الرعاية الصحية وعلوم الحياة لدينا، الذي سيرشدكم عبر متطلبات IEC 62304 وتنفيذها.

هل تريد معرفة كيفية تطبيق IEC 62304 لإجراء تحليل الفجوات للبرمجيات القديمة؟ اقرأ هذا المقال >>> كيفية تنفيذ تحليل فجوات البرمجيات القديمة كما هو مطلوب بموجب IEC 62304-2015؟

ما هو IEC 62304؟

IEC 62304 هو معيار دولي يحدد المتطلبات الخاصة بتطوير ودورة حياة البرمجيات كجهاز طبي والبرمجيات داخل الأجهزة الطبية. ويهدف IEC 62304 إلى ضمان تنفيذ البرمجيات بأمان، وأن تكون كاملة الوظائف ومصانة طوال دورة حياتها، وكذلك بعد طرحها في السوق. وهو يصف تصنيف السلامة للبرمجيات الطبية وفقًا لمستوى الخطر الذي تشكله على المستخدمين النهائيين والمرضى والأشخاص الذين يشغّلون الجهاز.

صدر معيار IEC 62304 في عام 2006، وبالتالي فإن اسمه الكامل هو IEC 62304:2006. وقد تغير المعيار قليلاً في عام 2015 لتعديله وفقًا لتوجيه MDD الذي كان ساريًا في ذلك الوقت. وأُضيف ملحق يحدد متطلبات السلامة للبرمجيات القديمة التي صدرت قبل سريان المعايير واللوائح الحالية. ويُعرف معيار IEC 62304 مع الملحق أيضًا باسم IEC 62304:2006+AMD1:2015. وتجري حاليًا أعمال متسارعة لتعديل المعيار وفقًا للائحة EU MDR.

هل معيار IEC 62304 إلزامي؟

معيار IEC 62304 ليس إلزاميًا، ومع ذلك يُوصى بأن تتبع المؤسسات التي تطوّر برمجيات الأجهزة الطبية متطلباته. ويتضمن IEC 62304، إلى جانب ISO 13485 وISO 14971، المتطلبات الأساسية التي ينبغي أن تلتزم بها كل شركة لتطوير البرمجيات الطبية فيما يتعلق بضمان أعلى معايير السلامة لمنتجاتها.

هل هل تشترط إدارة الغذاء والدواء IEC 62304؟

تم تنسيق IEC 62304 من قبل الولايات المتحدة ومعترف بها من قبل إدارة الغذاء والدواء الأمريكية (FDA)، وبالتالي يمكن، ولكن ليس بالضرورة، أن تتبعها شركات تطوير البرمجيات الطبية.

ما هي تصنيفات السلامة لأنظمة البرمجيات وفقاً لمعيار IEC 62304؟

يمنح معيار IEC 62304 شركات تطوير البرمجيات سلسلة من الإرشادات حول كيفية التعامل مع تحديد وإدارة المخاطر المرتبطة، على سبيل المثال، بفشل البرمجيات، والذي قد يؤثر على مريض أو مشغّل الجهاز. واستنادًا إلى تصنيف مخاطر الأجهزة الطبية، يحدد المعيار تدابير معينة للتحكم في المخاطر، يجب تنفيذها طوال دورة حياة البرمجيات.

يصف IEC 62304 ثلاث فئات سلامة أساسية للبرمجيات:

  • الفئة A: إذا كانت البرمجيات غير قادرة على إحداث أي ضرر،
  • الفئة Bإذا كان البرنامج قد يتسبب في ضرر أو إصابة طفيفة، لا تؤدي إلى تلف صحي دائم أو طويل الأمد،
  • الفئة C: إذا كان بإمكان البرمجيات التسبب في ضرر صحي جسيم أو إصابات خطيرة أو حتى الوفاة.

يتيح هذا النطاق تحديد وتعديل العمليات المرتبطة بسلامة تطوير البرمجيات الطبية بدقة في جميع المراحل: من التخطيط، مروراً بالبرمجة، وصولاً إلى الإصدار والصيانة.

ضع في اعتبارك أن الفئات المذكورة أعلاه مرتبطة ارتباطًا وثيقًا بالبرمجيات. تُصنَّف الأجهزة الطبية وفقًا للائحة الأجهزة الطبية الأوروبية (EU MDR) في الاتحاد الأوروبي أو وفقًا للمتطلبات الخاصة بكل بلد.

يحدد IEC 62304 متطلبات السلامة المطبقة على كل فئة. تأتي الفئة A بأقل عدد من المتطلبات نظرًا لأنها لا تشكل أي خطر على صحة الإنسان أو حياته. المتطلبات المطبقة على الفئتين B وC متشابهة جدًا. والفرق بين الفئة A والفئتين B وC كبير سواء في التنفيذ أو في التكلفة الإجمالية.

هناك أمر مهم آخر يجب مراعاته وهو أنه عند إجراء التصنيف، يجب أيضًا أن نأخذ في الاعتبار سيناريو قد لا يعمل فيه البرنامج بشكل صحيح، أو قد يكون غير متاح أو مخترقًا. هل سيشكل ذلك أي خطر على المستخدمين النهائيين في مثل هذه الحالة؟

كيفية إجراء تصنيف السلامة وفقًا لمعيار IEC 62304؟

عند إجراء التصنيف، ينبغي أن نفترض دائمًا سيناريو الحالة الأسوأ عندما قد يحدث موقف خطِر.

أول شيء يجب تحديده هو ما إذا كان الموقف الخطير ناتجًا عن فشل البرمجيات. إذا لم يكن كذلك، فإن البرمجيات تستوفي متطلبات الفئة A.

إذا كان الجواب نعم، يمكننا الانتقال إلى الخطوة التالية وتقييم فعالية تدابير ضبط المخاطر الخارجية عن البرمجيات. وقد يتضح أن مثل هذه التدابير قد تقلل من احتمال تسبب عطل برمجي في ضرر أو قد تخفف من شدة هذا الضرر.

بعد ذلك، علينا تحديد ما إذا كان فشل البرمجيات يؤدي إلى مخاطر غير مقبولة. إذا لم يكن كذلك، فإن البرمجيات تستوفي فئة A. وإذا كان كذلك، فيجب علينا تقييم شدة الإصابة المحتملة. وإذا كانت إصابة غير خطيرة، فإن برمجيات جهازنا الطبي تستوفي فئة B. وإذا كان الفشل قد يتسبب في ضرر جسيم أو حتى الوفاة، فإنه يندرج ضمن فئة C.

يمكن العثور على خوارزمية تصنيف السلامة في القسم 4.3 من معيار IEC 62304.

تفكيك البرمجيات وفقاً لمعيار IEC 62304

يسمح معيار IEC 62304 بتفكيك مكونات البرمجيات، بحيث يمكن تصنيفها إلى فئات مختلفة، بشرط الحفاظ على الفصل والعزل المناسبين.

على سبيل المثال، إذا كان برنامجك مصنفًا بحكم التعريف ضمن الفئة عالية المخاطر C، يمكنك محاولة تفكيكه إلى مكونات منفصلة. يجب عزلها من حيث البنية والوظائف. ونتيجة لذلك، قد يتبين أن بعض المكونات تنتمي إلى فئة مخاطر أقل، وهذا بدوره يقلل من التكاليف الإجمالية لتطوير البرمجيات الطبية. إذا كنت لا تعرف كيفية إجراء هذا التفكيك أو لديك بعض الشكوك، يمكننا إشراك فريقنا ومساعدتك.

Software decomposition under IEC 62304

أجايل مقابل IEC 62304

لا يفرض IEC 62304 أي نموذج تطويري محدد. ورغم أن طريقة كتابته قد توحي بنموذج الشلال، فإن الجدول B.1 في الملحق B يعرض أمثلة على استراتيجيات تطوير متنوعة، بما في ذلك الاستراتيجية التزايدية وكذلك الاستراتيجية التطورية، أي الأجايل. وقد طبّقت Spyrosoft نهج الأجايل بالكامل لتسليم برمجيات الأجهزة الطبية لدينا. يمكننا أن نوفّر لك حلاً في إطار زمني قصير يقلّص الوقت اللازم للوصول إلى السوق مع شفافية كاملة خلال التطوير.

Agile vs IEC 62304

وبعبارة أخرى، يعني ذلك أنه يمكن استخدام أي استراتيجية تطوير طالما أن الوثائق الفنية متسقة مع عمليات التطوير ومتوافقة مع IEC 62304.

لننتقل الآن إلى الشكل الذي ينبغي أن تبدو عليه عملية تطوير البرمجيات وتوثيقها وفقًا لمعيار IEC 62304.

ما هي متطلبات عملية تطوير البرمجيات بموجب IEC 62304؟

يمكن تلخيص عملية تطوير البرمجيات وفقًا للمعيار IEC 62304 بأنها تحويل مدخلات التصميم إلى مخرجات التصميم. ونعني بمخرجات التصميم المتطلبات التجارية والوظيفية، إلى جانب الغرض المقصود من الاستخدام. ومخرجات التصميم هي ما تم إنشاؤه من مدخلات التصميم وفقًا لمتطلبات المعيار IEC 62304. أما التحقق، بعبارات بسيطة، فهو التحقق مما إذا كانت المدخلات تتوافق مع المخرجات.

لتحقيق مخرجات تصميم مناسبة، تحدد IEC 62304 متطلبات تفصيلية لكل مرحلة من مراحل عملية تطوير البرمجيات:

يشترط المعيار IEC 62304 على المصنّعين وضع خطة لتطوير البرمجيات وفقًا لنطاق البرمجيات التي سيطوّرونها وحجمها وتصنيف سلامتها. وينبغي الحفاظ على هذه الخطة محدّثة.

ينبغي أن توثّق متطلبات البرمجيات المتطلبات الوظيفية ومتطلبات القدرات، مثل الغرض من البرمجيات أو لغة الشيفرة، إضافةً إلى متطلبات الأمان، وتدابير ضبط المخاطر، والواجهات بين نظام البرمجيات والأنظمة الأخرى، وغير ذلك من التفاصيل الكثيرة الواردة في القسم 5.2.2 من معيار IEC 62304.

يتطلب معيار IEC 62304 من المصنّعين توثيق البنية البرمجية وفقاً لتصنيفها. كما يجب إدراج البرمجيات الخارجية غير المصنّعة (SOUPs)، وهو الاسم التنظيمي للبرمجيات الخارجية التي تشكّل جزءاً من برمجيات جهازنا الطبي أو تدعم عملية التطوير، إلى جانب المتطلبات التي ينبغي أن تلبيها ونتائج التحقق منها. ويكتسب هذا أهمية خاصة كإجراء وقائي لتقليل خطر وصول القراصنة أو الأشخاص غير المصرّح لهم إلى البرمجيات وتشكيلهم خطراً على المستخدمين النهائيين.

وفقًا لمعيار IEC 62304، يجب تقسيم البرمجيات إلى وحدات برمجية، ينبغي تطوير تصميم تفصيلي لها، بحيث يمكن تنفيذها بشكل صحيح.

يُطلب من المصنّع إنشاء عملية التحقق من وحدة البرمجيات ومعايير القبول لكل وحدة برمجية.

يشترط المعيار IEC 62304 أن يكون لدى المصنّعين خطة تكامل، يتم بموجبها إجراء دمج وحدات النظام في عناصر برمجية أو أنظمة برمجية. كما يتعين على المصنّعين تضمين سجلات الاختبار والتحقق.

وفقًا للمعيار IEC 62304، يجب على المصنّعين وضع المتطلبات والإجراءات والمعايير لاختبارات نظام البرمجيات. كما ينبغي تضمين نتائج هذه الاختبارات في الوثائق.

قبل إصدار البرمجيات، يُطلب من المُصنّع التأكد من إتمام جميع عمليات التحقق وتوثيق أي مشكلات محتملة. كما يقع على عاتق المُصنّع واجب ضمان إصدار البرمجيات دون أي تلف أو تغييرات غير مصرح بها.

بالإضافة إلى ذلك، وفقًا لمتطلبات التتبع في معيار IEC 62304، يُطلب من المصنّعين إثبات أن جميع متطلبات النظام والبرمجيات، وكذلك تدابير ضبط المخاطر المدرجة في الوثائق، قد تم تنفيذها واختبارها والتحقق منها بشكل صحيح. ويجب إيلاء اهتمام خاص لضمان وجود تدابير ضبط المخاطر المناسبة لكل فئة طوال دورة حياة تطوير البرمجيات بأكملها.

يتضمن معيار IEC 62304 أيضاً متطلبات صيانة البرمجيات وإدارة المخاطر وإدارة تكوين البرمجيات وعمليات حل المشكلات. سنتناولها في الأقسام التالية.

اطّلع على خدمات الرعاية الصحية المدعومة بالذكاء الاصطناعي لدينا!

اقرأ المزيد

ما هي متطلبات عملية صيانة البرمجيات بموجب IEC 62304؟

يتطلب المعيار من المصنّعين إعداد خطة صيانة للبرمجيات، وإنشاء العمليات والإجراءات اللازمة لتحليل المشكلات والتعديلات فضلاً عن تنفيذ التغييرات.

كما تحدد IEC 62304 متطلبات منفصلة تتعلق بمراقبة ملاحظات المستخدمين وتوثيقها وتقييمها. وينبغي تسجيل المشكلات المحددة كتقارير مشكلات، تتضمن تقييماً لكيفية تأثيرها المحتمل على سلامة برمجيات الأجهزة الطبية. كما يُطلب من المصنّعين وجود عملية لحل المشكلات لمعالجة أي من هذه المشكلات.

للحصول على قائمة أكثر تفصيلاً بالمتطلبات المتعلقة بعملية صيانة البرمجيات، راجع القسم 6 من معيار IEC 62304.

ما هي متطلبات عملية إدارة المخاطر وفقاً لمعيار IEC 62304؟

ينبغي للمصنّعين تحليل البرمجيات من حيث مساهمتها في المواقف الخطرة، وتحديد عناصر البرمجيات هذه وتوثيق الأسباب المحتملة، مثل عيوب البرمجيات، أو حالات الاستخدام الخاطئ المتوقعة، أو التشغيل المعطوب وغير المتوقع لبرمجيات SOUPs.

لذلك، يجب على المصنّع تحليل التغييرات التي تطرأ على برمجيات الجهاز الطبي بانتظام، بما في ذلك البرمجيات غير المعروفة المصدر (SOUPs)، والتي قد تسهم في حدوث حالات خطرة، وتحديد ما إذا كانت هناك حاجة إلى أي تدابير إضافية للتحكم في المخاطر.

بالإضافة إلى ذلك، في كل حالة قد يسهم فيها أحد عناصر البرمجيات في نشوء وضع خطِر، يجب على المُصنّع تحديد وتوثيق تدابير ضبط المخاطر المناسبة وفقًا للمعيار ISO 14971، مثل جعل استخدام ميزات برمجية معينة مستحيلًا إذا لم يتحقق شرط محدد. ويجب التحقق من تنفيذ كل تدبير جديد لضبط المخاطر وتوثيق النتائج.

يُطلب من المُصنِّع أيضًا توثيق إمكانية تتبع أي خطر برمجي محدَّد.

للحصول على قائمة أكثر تفصيلاً بمتطلبات عملية إدارة المخاطر، راجع القسم 7 من IEC 62304.

ما هي متطلبات عملية إدارة تكوين البرمجيات وفقاً لمعيار IEC 62304؟

يُطلب من مُصنّعي البرمجيات الطبية إنشاء وسائل لتحديد عناصر التكوين، أو بعبارة أخرى، إنشاء خطة تكوين البرمجيات. ويجب أن تتضمن الخطة أنواع وإصدارات عناصر التكوين مع تحديد SOUPs بشكل منفصل. ويجب توثيق جميع عناصر التكوين وإصداراتها التي تشكّل تكوين نظام البرمجيات.

تتضمن معيار IEC 62304 أيضاً المتطلبات المتعلقة بكيفية الموافقة على التغييرات التي تطرأ على عناصر التكوين وتنفيذها والتحقق منها، كما تشترط أن يحتفظ المصنّعون بسجلات لتتبع كل تغيير.

للحصول على قائمة أكثر تفصيلًا بالمتطلبات المتعلقة بعملية إدارة تكوين البرمجيات، راجع القسم 8 من IEC 62304.

ما هي متطلبات عملية حل مشكلات البرمجيات بموجب IEC 62304؟

بموجب معيار IEC 62304، يجب على المُصنِّع إعداد تقرير مشكلة لكل مشكلة يتم اكتشافها في برمجيات الجهاز الطبي (أثناء الإنتاج). ويجب أن يتضمن هذا التقرير معلومات حول كيفية تأثير المشكلة على أداء البرمجيات أو سلامتها أو أمنها (بيان درجة الخطورة)، بالإضافة إلى معلومات أخرى قد تكون مفيدة في حل المشكلة.

يجب التحقيق في كل مشكلة لتحديد سببها والتعرف على الاتجاهات المحتملة للمشكلات. كما يتعين على الشركة المصنعة للبرمجيات الطبية تقييم مدى ارتباط المشكلة بسلامة البرمجيات باستخدام عملية إدارة المخاطر. ويجب توثيق نتائج التحقيق، وإنشاء طلب تغيير لكل إجراء ضروري لإصلاح المشكلة. وبمجرد حل المشكلة، يجب على الشركة المصنعة التحقق من الحل، والتحقق مما إذا كانت الاتجاهات السلبية قد انعكست، وإغلاق تقرير المشكلة إن كان ذلك ينطبق.

يشير أحد المتطلبات الأخيرة في هذا القسم إلى محتويات وثائق الاختبار، والتي ينبغي أن تتضمن، من بين أمور أخرى، الحالات الشاذة المكتشفة، ومعلومات حول الإصدار الذي تم اختباره، وأدوات الاختبار، وكذلك تحديد هوية المختبر.

هناك نقطة مهمة أخرى يجب ذكرها وهي أن الشركة المصنعة ملزمة بإبلاغ جميع الأطراف المعنية بالمشكلة، بما في ذلك المستخدمون النهائيون والجهات الرسمية، بالإضافة إلى الاحتفاظ بسجلات أي تقرير عن المشكلة مع حلها والتحقق منه للرجوع إليه في المستقبل.

هل تبحث عن شريك في تطوير البرمجيات الطبية يلتزم بأعلى معايير السلامة؟

تُعد IEC 62304 أحد أركان نظام إدارة الجودة المتكامل لدينا، والذي خضع مؤخرًا للتدقيق وسيتم اعتماده قريبًا.

يتمتع فريقنا من مهندسي الجودة والامتثال التنظيمي بخبرة في بناء برمجيات الأجهزة الطبية الآمنة المتوافقة مع IEC 62304، ويمكنه أيضًا مساعدتك في التصنيف الأمني أو تفكيك برمجياتك.

استخدم نموذج الاتصال أدناه لحجز استشارة أو لمناقشة مشروع البرمجيات الخاص بجهازك الطبي مع Krzysztof.

IEC 62304 هو معيار دولي يحدد متطلبات دورة الحياة لبرمجيات الأجهزة الطبية والبرمجيات كجهاز طبي. ويتمثل هدفه في ضمان تطوير البرمجيات وإصدارها وصيانتها بأمان طوال دورة حياتها بأكملها. وهو يساعد المؤسسات على تقليل المخاطر المتعلقة بأعطال البرمجيات التي قد تؤثر على المرضى أو مشغلي الأجهزة.

لا يُعدّ IEC 62304 إلزاميًا قانونيًا، لكنه موصى به بشدة ومعتمد على نطاق واسع. وإلى جانب ISO 14971 وISO 13485، فإنه يشكّل الإطار الأساسي الذي تستخدمه شركات البرمجيات الطبية لتلبية توقعات السلامة والمتطلبات التنظيمية. ويؤدي اتباعه إلى تحسين احتمالية اجتياز عمليات التدقيق والمراجعات التنظيمية بشكل كبير.

يحدد المعيار ثلاث فئات، هي A وB وC، بناءً على مستوى الضرر المحتمل الناجم عن فشل البرمجيات. فلا تشكّل الفئة A أي خطر، وقد تتسبب الفئة B في إصابة غير خطيرة، بينما قد تؤدي الفئة C إلى ضرر بالغ أو الوفاة. ويحدد هذا التصنيف عمق العمليات والتوثيق والضوابط التي يجب تنفيذها.

لا يفرض معيار IEC 62304 أي منهجية محددة، حتى وإن بدا متوافقًا مع نموذج الشلال. تُعد الاستراتيجيات الرشيقة (Agile) والتزايدية والتطورية مقبولة تمامًا طالما أن الوثائق والعمليات تتوافق مع متطلبات المعيار. وتطبق Spyrosoft المنهجية الرشيقة بنجاح مع الحفاظ على الامتثال الكامل.

تتطلب المواصفة عملية منظمة تحوّل مدخلات التصميم إلى مخرجات تصميم مُتحقق منها. وهي تحدد توقعات واضحة للتخطيط والمتطلبات والهندسة المعمارية وتصميم الوحدات والتكامل والاختبار والتحقق والإصدار. ويجب الحفاظ على التتبع وإجراءات التحكم الموثقة في المخاطر طوال دورة الحياة بأكملها.