במאמר זה נסביר מה הוא ההבדל בין קריטריון כניסה ליציאה.
כיצד מגדירים קריטריונים אלו ואיפה אנו פוגשים אותם במהלך ההתהוות של פרויקט הבדיקות. בין היתר נחשף לדוגמאות שונות של קריטריוני כניסה ויציאה מפרויקטים אמיתיים.
קריטריוני כניסה ויציאה הם בעצם פרמטרים חשובים לצוות הבדיקות בכדי שנבין מתי פעילות הבדיקות אמורה להתחיל ומתי להסתיים. הקריטריונים הם חלק בלתי נפרד מתהליך תכנון ואומדן הבדיקות ומופיעים כחלק ממסמך תכנון הבדיקות הרשמי (STP).
ההבדלים בין הקריטריונים
קריטריון כניסה:
קריטריון כניסה מגדיר את תנאי הקדם להתחלה של פעילות בדיקות נתונה.
במילים אחרות מדובר על הגדרה של נקודת ההתחלה, כך גם נקרא הקריטריון כשאנו עובדים בשיטה האגי'לית.
הנחת המוצא היא שלא נתחיל בבדיקות לתוכנה שאינה יציבה או שלא הגיעה אלינו ברמה מספקת בכדי להתחיל להריץ בדיקות שהכנו מראש.
פעילות הבדיקות היא בד"כ תהליך עתיר משאבים שמצריך תיאום ותכנון ואין הגיון להתחיל בבדיקות כאשר המערכת לא עוברת למשל בדיקות שפיות ראשוניות, כלומר איננה מבצעת את הפונקציות הבסיסיות אותן היא נדרשת.
מטרת הקריטריונים היא להבטיח שהמערכת אכן מוכנה לבדיקות ובכך למנוע מצבים של אי יציבות ועבודה כפולה.
קריטריונים אפשריים שיכולים לשמש אותנו להחלטה אם להתחיל או לא:
(למשל אם הושגו הרישיונות הנדרשים)
קריטריוני כניסה יכולים גם להיות מחוץ לעולמות התוכנה כמו למשל:
כל אלו יכולים להוות סוגים שונים של קריטריוני כניסה שאם לא יתקיימו, פעילות הבדיקה תימשך כנראה זמן רב יותר מהצפוי, תעלה יותר כסף ותסכן את תהליך הבדיקות בהיבטים של עלויות, זמן וחריגות אחרות שאינן רצויות.
דוגמא ממשית לקריטריון כניסה:
שלב |
קריטריון |
בדיקות שפיות |
בוצעו כל הבדיקות שתוכננו |
בדיקות שפיות |
כל הבדיקות שבוצעו, עברו בהצלחה |
בדוגמא הנ"ל מבקש מתכנן הבדיקות להצהיר שמבחינתו כניסה לתהליך הבדיקות מותנית בכך שכל הבדיקות שתוכננו מבעוד מועד כבדיקות שפיות ירוצו ומבחינתו חשוב שכל הבדיקות שהורצו עברו בהצלחה.
ראוי למשל במקרה כזה, לשאול את המחבר – בכמה בדיקות מדובר שכן אם מדובר באתר תדמית למשל אפשר להסתפק במס' מועט של בדיקות שפיות כיוון שהמערכת אינה קריטית.
זאת בניגוד למערכת מעולמות המדיקל, הצבא או התעופה ששם ראוי שהקריטריונים יהיו מהודקים יותר ולכן נצפה לכמות גבוהה מאוד של בדיקות שפיות וכך נקבע רף גבוה יותר לתחילת העבודה.
קריטריון יציאה:
קריטריון זה מגדיר אילו תנאים יש להשיג בכדי להצהיר על השלמה של רמת בדיקה או סבב בדיקות.
אנו נפגוש את הקריטריון במסמך תכנון הבדיקות (STP) וגם במסמך סיכום הבדיקות (STR) שבו נוכל לגלות אם עמדנו או לא עמדנו בקריטריון המבוקש.
עמידה או אי עמידה בקריטריון היציאה תוכל לאפשר לנו להמליץ אם לעבור לשלב הבא או לא. המלצות ומסקנות אלו יועברו לדרג בעלי העניין שממתינים לקבל את התוצאות. (מנהל הפרויקט, הלקוח, אנשי הפיתוח וכו').
כללים לקביעת קריטריון יציאה:
קריטריונים אפשריים שיכולים לשמש אותנו להחלטה מתי ניתן להפסיק:
חשוב לציין שגם בלי שקריטריון היציאה מושג, במקרים מסוימים הבדיקות מסתיימות לפני שהגיעו לסיום מאחר והסתיים התקציב, אזל הזמן שהוקצה לסבב הבדיקות או שקיים לחץ להוציא את המוצר לשוק מצידם של אנשי המוצר. הפסקת הבדיקות בתנאים שכאלו יכולה להילקח בחשבון בתנאי שהסיכון בשחרור המוצר ללא בדיקות נוספות מוצג לבעלי העניין וקיימת הסכמה מצידם להמשיך.
בסופו של יום תמיד יתקיים המתח בין אנשי המוצר שמבקשים להרוויח זמן כאשר מה שמניע אותם הוא : Time to the market
מול אנשי הבדיקות שמבקשים יותר זמן בכדי להבטיח יותר איכות.
דוגמא ממשית לקריטריון יציאה:
להלן הגדרת הקריטריונים לאישור העברת המערכת לייצור, ברמת אחוז התקלות
מסך הבדיקות שבוצעו:
להלן הגדרת הקריטריונים לאישור העברת המערכת לייצור, ברמת הבדיקות:
מחוץ להגדרה של קריטריוני יציאה עבור הפרויקט, ניתן להגדיר גם קריטריוני יציאה לכל פעילות שמתבצעת כחלק מתהליך הבדיקות, להלן סקירה של כמה דוגמאות:
קריטריוני יציאה אפשריים עבור משימת פיתוח שמטרתה לכתוב קוד עבור התכונה או סיפור משתמש שיש לפתח יכולים לכלול:
קריטריוני יציאה אפשריים עבור פגישות עבודה או סקירות:
קריטריוני יציאה אפשריים עבור סבב בדיקות או ספרינט:
קריטריוני יציאה אפשריים עבור סיפורי משתמש:
קריטריוני יציאה אפשריים עבור בניית תשתית אוטומציה:
חשוב לציין שאין רשימה אידיאלית של קריטריוני יציאה שמתאימה לכל צוות, כלומר כל אחד שאחראי על הבדיקות יכול להחליט על קריטריוני יציאה בהתבסס על הצוות והקשר הבדיקות, ניתן כמובן להקל או להחמיר עימם בהתאם למהות המוצר ולפי הסכמות עם הלקוח ומנהל המוצר.
עובדה זאת עולה בקנה אחד עם אחד מעקרונות הבדיקה שמדבר על כך שבדיקות הן תמיד תלויות הקשר. כלומר קריטריוני יציאה של אתר תדמית לא יהיו זהים לאפליקציית ניווט או תוכנת ניהול מערכת מדיקל וכיוצא בזאת.
נקודה נוספת שמבליטה את חשיבותו של קריטריון היציאה היא שהוא משפיע גם על בקרת הבדיקות שכוללת פעולה של תיקון כתוצאה ממידע ומדדים שנאספים ומדווחים תוך כדי הפרויקט והם עלולות להשפיע על כלל פעילויות הבדיקה ואף על פעילויות הפיתוח.
מדדים שנוגעים בהתקדמות העבודה מול לוחות הזמנים כמו:
כל אלו הם פרמטרים ואינדיקציות שנועדו לאפשר לנו להבין איפה אנו עומדים ביחס לקריטריוני היציאה שנקבעו מראש וכך להבין אם אנחנו עומדים ביעדי הבדיקות או שלא.
לסיכום
קריטריוני כניסה ויציאה הם אמות מידה חשובות בניהול פרויקט איכותי.
ללא הבנה מה מבחינתנו ייחשב לתחילת ההנעה של הפרויקט ומה הם התנאים שיוכלו להוכיח לנו שאנו עומדים בהצלחה ויכולים להכריז על המשך לשלב הבא לא נוכל לצאת לדרך.
בדרך לשם נזכור שכללי הברזל יהיו:
יש נושאים ומושגים נוספים שהייתם רוצים לקרוא עליהם? תשלחו מייל ואשמח לכתוב[email protected]