This post is also available in: 
     English (אנגלית)
English (אנגלית)
FIXCHECK היא גישה חדשה לשיפור ניתוח תיקוני פאצ'ים המשלבת ניתוח סטטי, בדיקות אקראיות ומודלים שפה. היא נוצרה על ידי חוקרי התוכנה של IMDEA פקונדו מולינה, חואן מנואל קופיה ואלסנדרה גורלה.
תחזוקת מערכות תוכנה כרוכה ביצירת תיקונים לתיקון פגמים בתוכנה, עליהם מדווחים לרוב באמצעות מקרי בדיקה החושפים את הבעיות. לאחר מכן המפתחים יוצרים פאצ'ים אותם יש לאמת לפני שהם מתחייבים לבסיס הקוד, כדי להבטיח שהבדיקה שסופקה כבר לא תחשוף את הפגם.
עם זאת, לפעמים התיקונים עדיין לא מצליחים לטפל ביעילות בבאג הבסיסי או להציג באגים חדשים, מה שמוביל לתיקונים שגויים. זיהוי תיקונים שגויים אלה משפיע באופן משמעותי על הזמן והמאמץ שמפתחים מוציאים על תיקוני באגים, כמו גם על התחזוקה הכוללת של מערכות תוכנה. יתר על כן, בעוד שכמה מפתחי תוכנה משתמשים בתיקון תוכנה אוטומטי (APR) כדי ליצור באופן אוטומטי תיקונים עבור תוכניות עם באגים, פעמים רבות הם מגלים תיקונים שגויים רבים שאינם מטפלים בבאג.
על פי Techxplore, חוקרים ב-IMDEA Software טיפלו בבעיה זו על ידי הפיתוח של FIXCHECK, גישה חדשנית המשלבת ניתוח סטטי, בדיקות אקראיות ו-LLM כדי ליצור באופן אוטומטי בדיקות כדי לזהות באגים בתיקונים שגויים.
על פי הדיווחים, נעשה בו שימוש בתהליך בן שני שלבים- תחילה הוא יוצר בדיקות אקראיות ומקבל סדרה גדולה של מקרי מבחן, ולאחר מכן משתמש ב-LLM כדי להפיק טענות משמעותיות מכל מקרה מבחן. FIXCHECK כולל גם מנגנון לבחירה ותיעדוף שמבצע מקרי בדיקה חדשים בתוכנית שקיבלה פאצ'ים, ומדרג או מבטל בדיקות אלה על פי יעילותן.
התוצאות מראות כי חידוש זה יכול לייצר ביעילות בדיקות לגילוי באגים עבור 62% מהפאצ'ים השגויים שנכתבו על ידי מפתחים ולהשלים את טכניקות הערכת התיקון הקיימות על ידי מתן מקרי בדיקה שחושפים באגים עבור עד 50% מהפאצ'ים השגויים.
FIXCHECK גם משפר את היעילות של אימות התיקונים ומקדם אימוץ רחב יותר של שיטות תיקון תוכנה אוטומטיות. הוא מביא להתקדמות משמעותית בתיקון ותחזוקת תוכנה, שכן הוא מספק פתרון לאוטומציה של ייצור בדיקות וזיהוי תקלות במהלך תחזוקת תוכנה.




