על חשיבות ה-QA ועתיד התחום בעידן ה-AI
כיום הדרישה לתוכנה יציבה עם עדכונים תכופים גבוהה מאי פעם ● הדרישות הללו הופכות את מחלקת ה-QA לאחת מהחשובות בארגון ● כיצד מתבצע כיום QA, ואיך הוא יראה בעידן ה-AI אליו אנו נכנסים?
בדצמבר 2020 מאות מיליוני גיימרים המתינו בציפיה לשחרור המשחק Cyberpunk 2077. זה היה יותר מעוד משחק, זו היתה בשורה.
המפתחת CD Projekt Red אחראית להצלחות כמו משחקי The Witcher המהוללים, שאף עובדו לסדרה בנטפליקס. פיתוח Cyberpunk 2077 נמשך שמונה שנים והושקעו בו 313 מיליון דולר. הוא הבטיח לגיימרים עיר עתידנית בסגנון 'בלייד ראנר', אותה יוכלו לחקור בחופשית, כמו גם שלל משימות וסיפור סוחף. הטריילרים הציגו גרפיקה מסחררת והשחקן הראשי במשחק היה קיאנו ריבס.
בארגונים רבים נהוג לשלב בין אוטומציות לבדיקות ידניות, וכך הפיתוח מרוויח מיעילות האוטומציה וגם מהיצירתיות האנושית של הבודק
ואז בדצמבר 2020 התקיימה ההשקה… והתרסקות. הסיפור הנהדר והעיר המדהימה נקברו תחת גרפיקה נוראית ואלפי באגים מביכים: מכוניות מעופפות, דמויות מפוקסלות, התרסקויות חוזרות ונשנות ועוד. כמות הבאגים היתה כה גדולה, עד שגיימרים רבים יצרו סרטוני "מיטב הבאגים של Cyberpunk 2077".
כעבור זמן התברר מקור הבעיה: החברה החיצונית לבקרת איכות (QA), שנשכרה על ידי המפתחת, התנהלה ברשלנות. מתוך 30 בודקים קבועים שעבדו על המשחק, רק ל-10 היה ניסיון של כשנה, בנוסף, רבים מהבאגים לא דווחו, לא הוקצה למשימה כח אדם מספק ועוד.
ההשקה עלתה למפתחת ביוקר. גיימרים רבים דרשו החזר, המשקיעים זעמו והמוניטין של החברה התרסק. לזכות המפתחת יאמר שהיא לקחה אחריות והחלה בעדכונים תקופתיים, שכיום מאפשרים למשחק לפעול היטב ולקבל ביקורות מהללות.
מה אפשר ללמוד מהמקרה? קודם כל, לא להשיק מוצר לא גמור. לקח נוסף הוא ש-QA ברמה גבוהה הוא לא מותרות – הוא הכרח.
To QA or Not QA: מפתחים, אל תקחו את זה אישית…
בודקי האיכות הראשונים של תוכנות (Software Quality Assurance) החלו לפעול כבר בתחילת שנות ה-50. המתודולוגיה שלהם כללה שלושה שלבים עיקריים: תכנון איכות, בקרה ושיפור. שלושת הערכים האלו עדיין עומדים בבסיס של QA בן זמננו.
במובנים רבים, התפקיד של אנשי QA לא זוהר. הבודקים לא נחשבים כמובילי הפיתוח, ואור הזרקורים לרוב מופנה למפתחים או למנהלי המוצר. גם עצם תפקידם עשוי לייצר אנטגוניזם, שכן מהות ה-QA היא לאתר טעויות פיתוח ולהציף אותן כלפי מעלה – ואיזה מפתח אוהב לשמוע שטעה?
ועדיין, מחלקת QA היא סטנדרט בארגונים כבר עשורים. בתחילת המאה העשרים, כאשר הייצור הפך למורכב ותובעני יותר, בודקי איכות החלו להשתלב במפעלים כדי לבדוק תקינות מוצרים ותהליכי ייצור. עם השנים התפתחו גם תקני איכות שונים (לדוגמה תקני ISO) וחלק מתפקידם של בודקי האיכות היה לוודא התאמת מוצרים או שירותים לתקנים הללו. בעלי מקצוע אלו – שמתמחים בבדיקות מוצרים פיזיים או עמידה בתקנים – עדיין קיימים, ולמעשה נדרשים במיוחד. בתחומים מסוימים, לדוגמה פיתוח מוצרי רפואה, בקרת איכות הדוקה היא תנאי לקבלת אישורי FDA ויציאה לשוק.
בקרת איכות לתוכנה: בין הבדיקה הידנית ל-AI
איך מבצעים כיום בדיקות איכות לתוכנה? כדי להבטיח מוצר נקי מבאגים ככל הניתן, הבודק חייב לבצע מגוון בדיקות לכל פיתוח: בדיקות עומסים, התאמה למכשירים שונים, תקינות GUI ועוד. לאחר שהבודק זיהה באג הוא שולח אותו חזרה לתיקון בפיתוח ועורך בדיקות חוזרות אחרי התיקון.
כיום רוב הארגונים שואפים לעבוד בשיטת Agile, עליה כתבתי בעבר. כלומר, הפיתוח מורכב מהרבה אפליקציות קטנות וגרסאות עדכון מרובות (לפעמים פעם בשבוע או יום). השיטה נועדה להבטיח פיתוח דינמי, למנוע צוואר בקבוק, שנפוץ בפיתוחי "מפל מים", ולאפשר המשך פעילות של המוצר, גם אם חלקים ממנו סובלים מבאגים. המשמעות עבור בודקי QA היא שכדי לעמוד בקצב העדכונים עליהם לעבוד באופן מתודולוגי ומסודר, לתעד כמה שיותר ולהיות מסוגלים להגיב במהירות לדרישות הארגון והפיתוח – סט כישורים מרשים מאוד.
איך מתבצעות הבדיקות? באופן מסורתי QA לתוכנה נעשות באופן ידני. בודק התוכנה מבצע בדיקות על היישום ובמקביל בוחן את הקוד. מדובר בשיטה הבסיסית ביותר לביצוע QA לתוכנה, ועד לפני שנים לא רבות גם השיטה יחידה.
בשנים האחרונות נכנסו לתמונה כלי אוטומציית QA. קיימים שפע יישומים כאלו, כל אחד מיועד לפלטפורמות שונות או סוגים שונים של אפליקציות, אך מטרת כולם היא לייעל את הבדיקות. כדי להשתמש באוטומציות, בודק התוכנה מתכנן אסטרטגיה, כותב תסריטי בדיקה ומריץ את הבדיקות על התוכנה. לעיתים קרובות הבדיקה תכלול השוואת קוד לגרסאות קודמות ואף דיווח אוטומטי על באגים שאותרו. בארגונים רבים נהוג לשלב בין אוטומציות לבדיקות ידניות, וכך הפיתוח מרוויח מיעילות האוטומציה וגם מהיצירתיות האנושית של הבודק.
מה צופן העתיד ל- QA? השנה שוחררו מספר כלי AI עוצמתיים, כמו ChatGPT, שעליו כתבתי לאחרונה. כבר עכשיו, בגרסה יחסית צעירה שלו, ChatGPT יוצר שיבוש בתחומים רבים. משתמשים רבים כבר יצרו בעזרתו אפליקציות ופיתוחים ברמות מורכבות ומרשימות.
כלי AI מרשימים נוספים צפויים להגיע בחודשים הקרובים, ואת היקף יכולותיהם ניתן רק לנחש. סביר שבעתיד הקרוב נראה כלי AI שיהיו מסוגלים לקחת את הבדיקות האוטומטיות רחוק יותר מאי פעם. יכולות אלו צפויות לשנות חלקים ממהותו של בודק התוכנה, וידרשו גם מבעלי מקצוע אלו להסתגל לעתיד שבו AI הופכת לחלק מהיומיום של כולנו.
הכותב כיהן כמנמ"ר מימון ישיר וכיום משמש כיועץ טכנולוגי לארגונים, מנכ"ל חברת הייעוץ New Advice ושופט בתחרות מצטייני המחשוב IT AWARDS 2022
תגובות
(0)