בשנים האחרונות אנו נתקלים ביותר ויותר תוכנות רפואיות ואפליקציות מתחומי ה- E-health והבריאות הדיגיטלית אשר חלקן פשוטות ומיועדות יותר לצרכי Well being כגון אפליקציות סלולריות לניטור שינה, פעילויות ספורטיביות, מדדי בריאות בסיסיים, בעוד אחרות מציעות טכנולוגיות מתקדמות לשימושם של חולים, צוותי רפואי, רופאים וארגוני בריאות, ובמקרה זה מדובר ב- SAMD (software as a medical device)
כמו מכשור רפואי או תרופה, גם שימוש בתוכנה רפואית, עשוי להוות סיכון לבריאותם של חולים ואף לחייהם ועל כן תוכנות רפואיות צריכות לעמוד בקריטריונים שונים וביניהם דיוק, אמינות, חסיון מידע, רובוסטיות וכיו”ב וכמובן הן כפופות לדרישות רגולציה מחמירות של רשויות הבריאות השונות. במאמר שלפניכם נרחיב בנושא בדיקות QA והבטחת איכות לתוכנה.
בדיקות QA והבטחת איכות לתוכנה רפואית
אחד מהמסמכים הראשונים שיש לכתוב כחלק מפיתוח תוכנה רפואית הינו Risk Assessment אשר כולל בתוכו את כל הסיכונים הפוטנציאליים הכרוכים בשימוש בתוכנה הרפואית, מדרג את רמות הסיכון והפריויטיזציה, ומגדיר האם יש צורך ביישום פעילויות מתקנות, ואם כן מהן וכיצד כל אחת מהן מפחיתה את רמות הסיכון, אם בכלל.
למעט הסיכון למשתמשי הקצה ולחולים, לחברות העוסקות בפיתוח אפליקציות ותוכנות רפואיות, כמו גם מוצרי בריאות דיגיטלית אחרים, קיים סיכון עסקי משמעותי. חברה אשר תפתח מוצר אשר אינו עומד בדרישות הרגולציה כגון 21 CFR part 11 וה- HIPAA של ה- FDA, ה- Annex 11 וה- GDPR של האירופאים, לא תוכל לרשום אותו כאמ”ר או תוכנה רפואית ברשויות הבריאות, וגם עמידה בדרישות הרגולציה, אינה מבטיחה כי שימוש בתוכנה לא איכותית אשר לא עברה את בדיקות התוכנה הנדרשות והולידציה ובהצלחה, עלול להוביל לפגיעה בחיי אדם, לקנסות ולתביעות משפטיות.
יתרה מזאת, פערים שנמצאו ולא טופלו כיאות במערכות התוכנה הרפואית, עשויים להוביל לאיומי אבטחה ו/או להעברת נתונים לא מספיקים או נכונים, אשר המטופלים זקוקים להם ומסתמכים עליהם בתהליכי ניהול המחלה והטיפול.
לפיכך, חשיבותו של שלב בדיקת התוכנה והבטחת האיכות שלה, הידוע בכינויו QA לתוכנה, מהווה נדבך חשוב מאין כמוהו בשלבי פיתוח התוכנה המאוחרים, לקראת תהליכי הווריפיקציה, הולידציה והרישום.
תקני אבטחה ואיכות לתוכנה רפואית
תחום המדיקל והפארמה ידוע בדרישות הרגולציה המחמירות שלו. זהו תחום המאופיין בחסמי כניסה גבוהים ולכן על חברות הטכנולוגיה המתעתדות לשלב את הטכנולוגיות המתקדמות שלהן לתחום זה, להפנים עובדה זו ולפעול בהתאם, תוך השקעת המשאבים הנדרשים על מנת לעמוד בדרישות הרגולציה הרלוונטיות ובהצלחה.
רוב התוכנות יסווגו ברמה הרגולטוריות כמכשור רפואי (אמ”ר) וזאת בהסתמך על רמות הסיכון שתתקבלנה בתהליך הערכת הסיכונים וההשפעה על המטופלים ואנשי המקצוע המשתמשים בתוכנה הרפואית. למעט דרישות כגון עמידה בתקן ISO 13485, 21CFR part 820, MDR, CE וכדומה, יש לעמוד גם בתקני אבטחה כגון FDA, HL7, DICOM, CMMI ו- ISO.
ביצוע סקירה רגולטורית והגדרת דרישות הרגולציה ותקני האבטחה הנדרשים, הנה חלק מביצוע Gap analysis בתחילת פרויקט פיתוח מוצר בריאות דיגיטלית ותוכנה רפואית, וככזה, מצריך נקיטת פעולות בהתאם. טיפול בפערים המתגלים מבעוד מועד, תחסוך לחברה זמן וכסף הכרוכים בביצוע שינויים ובפתרון בעיות שתתגלינה בשלבים המאוחרים יחסית, כגון בשלבי בדיקות התוכנה הרפואית והולידציה.
בדיקות תוכנה רפואית ובקרת איכות
בדיקות תוכנה רפואית המיועדת לתחומי הבריאות אינו נחשבות כמסובכת מדי. אחרי הכל, אמנם מדובר בטכנולוגיות דיגיטליות מתקדמות כגון עיבוד תמונה, קול, חישה תוך הסתמכות על AI, ML, Big data , DL ועוד, אשר עוברות התאמה למטרות כגון הצלת חיים וטיפול בחולים.
כמובן שעל הטכנולוגיה הדיגיטלית המשמשת לצרכי הבריאות והטיפול בחולים לעמוד בבדיקות ולידציה מחמירות, ויחד עם זאת, מדובר בלא פחות ממהפיכה, אשר תנגיש ניטור, שרותים וטיפולים רפואיים לחולים, בעלויות סבירות, בזמינות גבוהה, במהירות, דיוק, עקביות, ואמינות.
ללא ספק, בדיקות תוכנה המבוצעות לתוכנות לשימושים רפואיים, נחשבות מוגדרות וקפדניות יותר, בהשוואה לבדיקות תוכנה המיועדת לשימושים מסחריים אחרים.
שירותי בדיקות תוכנה רפואית
רוב מערכות התוכנה הרפואית מאופיינות בארכיטקטורה מורכבת, בזרימות עבודה מרובות ובכמות נתונים גדולה מאוד ולכן תהליך בדיקת התוכנה, צריך להתבצע ע”י בודק תוכנה מקצועי בתחומי הבריאות הדיגיטלית בעל ידע, מומחיות ומקצועיות רלוונטיים.
לא כל בודק תוכנה, יכול לבצע בדיקת QA לתוכנה רפואית בצורה טובה ואפקטיבית, היות ויש לעבוד לפי נהלי מערכת איכות קפדניים, להבין את הדרישות הרגולטוריות השונות אשר יש לעמוד בהן ולתת אחריות על התוצאה.
בנוסף, רמת התיעוד הנדרשת במסגרת בקרת האיכות ואבטחת האיכות של התוכנה, הנה גבוהה ולעיתים תדרש להיות מוצגת בפני רשויות הבריאות במסגרת ביקורת רגולטורית, אשר יתבקשו לאשר את התוכנה הרפואית לשימוש במסגרת תהליך הרישום שלה.
לסיכום, ככל שמדובר בשרותי ביצוע בדיקות QA לתוכנה רפואית, קשה למצוא בודק QA לתוכנה בעל התמחות וניסיון מתאימים ויש לבחון קבלת שירותי QA לתוכנה חיצוניים על מנת לבצען כנדרש על מנת למסור ללקוח תוכנה בטוחה ואיכותית תך עמידה בלוחות הזמנים.
בניית תוכנית לבדיקת QA לתוכנה רפואית
על מנת לעמוד בכל הדרישות שפורטו במאמר זה, יש לייסד אסטרטגיה מסודרת ליישום תהליכי בדיקות ה- QA לתוכנה ולבנות את תוכנית הבדיקה הנכונה בהתאם, לדוגמא:
- עבודה לפי נהלים – על החברה המבצעת את בדיקות התוכנה לעבוד בהתאם לנהלים מוגדרים אשר מהווים חלק ממערכת ניהול האיכות של הארגון. במסגרת נהלים אלה, יפורט כיצד תבוצענה בדיקות התוכנה, תוך שימוש באילו כלים, מהו סדר הפעילויות הנדרש, כיצד יש לתעד את ממצאי הבדיקות וכמובן כיצד חוקרים, מדווחים ומטפלים בתקלות ובאגים אשר מתגלים כחלק מביצוע בדיקות ה – OA.
- בדיקות ביצועי התוכנה הרפואית תחת עומסים – יש לוודא כי התוכנה או האפליקציה הרפואית מגיבים מספיק מהר בשימוש שוטף ובמקרים בהם הרשת אינה מתפקדת ברמות מיטביות, לדוגמא כתוצאה מעומסים חריגים או תפקוד לא תקין של רכיבים. לכן, חשוב לכלול בתוכנית בדיקת התוכנה, בדיקות במס’ דרגות, בהתאם לקונפיגורציות השונות והארכיטקטורה של התוכנה, תוך סימולציות של מצבי קיצון ולבצע שינוים ועדכונים בתוכנה ובתשתיות בהתאם לממצאים.
- בדיקות אבטחה ופגיעה – יש לוודא כי תוכנת הבריאות יכולה לשמור על רשומות בריאותיות אישיות ונתונים של מטופלים כנדרש, ולהמנע ממצבי זליגת מידע ואירועי התקפה מצד האקרים.
- בדיקות UX – יש לוודא כי התוכנה הרפואית או אפליקציית הבריאות אינטואיטיבית לשימוש עבור סוגים שונים של מתשמשים, החל מאנשים בריאים וצעירים וכלה באנשים מבוגרים וחולים, אשר מאופיינים בהגבלות כגון בעיות מוטוריות, ראיה וכיו”ב וזאת במגוון מצבי שימוש שונים.
- בדיקות לוקליזציה – יש לוודא כי תוכנת הבריאות עומדת בתקנות מקומיות וחוקים הנדרשים במדינות מסויימות.
- בדיקות התאמה – יש לוודא כי התוכנה הרפואית עומדת בדרישות האבטחה וחסיון המידע כגון תקנות ה – HIPAA ו – FDA בארה”ב וה – GDPR באירופה.
- בדיקות אוטומטיות לתוכנה – מומלץ לשלב שימוש בכלי בדיקה אוטומטיים אמינים ומקצועיים בשילוב עם בדיקות רגילות, במטרה לחסוך זמן ומשאבים.
- בדיקות אינטגרציה – התוכנה או האפליקציה הרפואית פועלת בסביבה מורכבת, כלומר מחוברת למערכות אחרות כגון תיקים רפואיים, מסדי נתונים, אביזרי חישה, רשתות סלולריות ותוכנות אחרות. במסגרת בדיקות התוכנה, יש לבצע את הבדיקות ב – “סביבת עבודה אמיתית” על מנת לגלות בעיות אינטגרציה.