320 likes | 563 Views
מדדי איכות תוכנה. שלמה רון. ר' תחום ויועץ SQA. " אינך יכול להפעיל בקרה על מה שאינך יכול למדוד". Tom DeMarco (1982 ). נושאי המצגת. מבוא הגדרות מטרות מחזור החיים – מדדים מדדי איכות תוכנה – פיתוח מדדי איכות תוכנה – מערכת סיכום. מבוא. איכות – גורם המבדיל בין :
E N D
מדדי איכות תוכנה שלמה רון ר' תחום ויועץ SQA
" אינך יכול להפעיל בקרה על מה שאינך יכול למדוד". Tom DeMarco (1982 ).
נושאי המצגת • מבוא • הגדרות • מטרות • מחזור החיים – מדדים • מדדי איכות תוכנה – פיתוח • מדדי איכות תוכנה – מערכת • סיכום
מבוא • איכות – גורם המבדיל בין : חברות מצליחות לפחות מצליחות ! • איכות תוכנה – אוסף של תכונות (מוצר,שרות,מערכת) המאפשר תמיכה בדרישות משתמש.
מבוא-המשך • מדידת האיכות היא כלי מרכזי להפעלת בקרה על מוצרי תוכנה,תהליך פיתוחם ואחזקתם. • מערכת איכותית היא מערכת העומדת בדרישות מדדי האיכות ( Metrics )שהוגדרו לה. • פיתוח והפעלה של מדדים כמותיים הוא מרכיב חשוב בתשתית ניהול איכות.
הגדרות • מדידה – תהליך המבוסס על שיטות וכללים מוגדרים. • ישות – היא מוצר או תהליך הקשור ביצירת המוצר או תחזוקתו. • מאפיין – תכונה של הישות המאפשרת להגדיר לגביה מדדים.
מטרות • תהליך נמדד במטרה לשפר וליעל אותו. • תוצר נמדד במטרה להעלות את איכותו ותועלתו. • כלי השוואתי בין פרויקטים. • הערכת איכות הפיתוח ושיפורו. • לשפר את יחס עלות / תועלת של מערכת.
מחזור החיים של תהליך המדידה • הגדרת יעדי הארגון והמערכת / מטרות המדידה. • הגדרת המדדים – מודל GQM . • מדידה – איסוף נתונים. • ניתוח הנתונים והפקת לקחים. • החלטות ופעולות.
מחזור החיים – מודל BasiliGoal /Question / Metric לפי מודל זה התהליך כולל שלושה שלבים: • מטרה( ישות ) - Goal • חקירה ( מאפיינים ) - Question • מדד (ערכים ) - Metric
מחזור החיים - ישות • מה היא הישות אותה רוצים למדוד? • לשם מה נחוצה המדידה? • מה רוצים למדוד ואיזה החלטות לקבל ? • מה הקשר בין מטרת המדידה עם יעדי המערכת והארגון ?
מחזור החיים - מאפיינים • מהם המאפיינים והתכונות של הישות הנמדדת? • האם מאפשרים מימוש מטרות המדידה ? • הגדרת תכונות כלליות ואיכותיות אותם נרצה למדוד.
מחזור החיים - מאפיינים ניתן לחלק תכונות איכות של תוכנה כך: • פנימיות – תכונות במנותק מהסביבה. • גודל • מודולריות • עלות
מחזור החיים - מאפיינים • חיצוניות – תכונות תוכנה בסביבה נתונה: • תחזוקה • שימושיות Usability
מחזור החיים - מדד • פירוק המאפיינים להגדרות הניתנות למדידה עם ערכים כמותיים וביחידות ברורות. • מודד את התכונה המבוקשת ,הפעלתו פשוטה. • מבוסס על נתוני המערכת – אינו דורש איסוף נתונים עצמאי. • מדד בלתי מוטה – אובייקטיבי.
מחזור החיים - מדד • מדדי איכות תוכנה : • נכונות – עד כמה תוכנה מקיימת דרישות המשתמש. • אמינות – מינימום באגים ונפילות. • יעילות – כמות המשאבים שתוכנית (מוצר) משתמשת בו כדי לבצע את משימותיה.
מחזור החיים - מדד • שימושיות – כמה זמן צריך ללמוד להשתמש בתוכנה, להכין קלט, להבין פלט (עקומת למידה). • תחזוקה – כמה זמן דורשים תיקונים וגילוי באגים. • גמישות – כמה זמן דרוש לביצוע שינוים בתוכנה . • השתלבות - קלות פעולת הגומלין עם תוכנות אחרות.
שיטות לאיסוף נתונים : נתונים שניתן לקבלם באופן אוטומטי כמוצר נלווה לעבודה השוטפת – מספר השעות המושקעות בתוצר מסוים. מחזור החיים – איסוף נתונים
מחזור החיים – איסוף נתונים • נתונים שאפשר לשחזרם באמינות ובמועד מאוחר יותר :מספר שורות קוד. • נתונים שיש לאסוף ע"י מערכת ממוחשבת : מידע על תקלות , סוג , מדווח וכו..
מחזור החיים – ניתוח הנתונים מניתוח הנתונים שנאספו בשלבי המדידה ניתן ללמוד על הנעשה בארגון : • מהי המגמה בארגון מבחינת איכות התוצרים. • עדכון המדדים – הוספה, שינוי או ביטול מדדים. • קבלת החלטות ונקיטת פעולות מתקנות. • ייתכנו שינויים בישויות המערכת וביעדי הארגון.
מדדי איכות – איכות המערכת • מדידה וניתוח תקלות שהתגלו בשלבי הבדיקות. • פילוח תקלות לפי קריטיות ,סוג תקלה וכו. • זמן ממוצע לסגירת תקלה. • זמן תגובה ללקוח. • כמות פניות לעזרה בתפעול / הדרכה. • סקר שביעות רצון המשתמשים.
מאפיינים ומדדים מטרות מדדי איכות תוכנה נתונים ניתוח ומסקנות
מדדי איכות – פיתוח תוכנה מדד יעילות הפיתוח – Development Productivity DevP – נמדד בשעות עבודה לפיתוח 1000 שורות קוד. H – מספר שעות העבודה שהושקעו בפיתוח. Lines Of Code – מספר אלפי שורות קוד. מקור הנתונים - נתוני שעות עבודה של הצוות ממערכת נוכחות. DevP= LOC / H
מדדי איכות – פיתוח תוכנה מדד צפיפות שגיאות תוכנה- ED Error Density)) נמדד במספר השגיאות ב- 1000 שורות תוכנה. Lines Of Code – מספר אלפי שורות תוכנה. NE – מספר סה"כ שגיאות תוכנה. מקור הנתונים : דוחות של סקרי תיכון , דוחות של בדיקות תוכנה. ED=NE/LOC
מדד איכות –איכות הפיתוח • מטרה – עמידה במדדים שנקבעו ע"ס סטטיסטיקות. העלאת רמת איכות הפיתוח . • ישות – תהליך פיתוח. • מאפיינים – איכות הפיתוח. • מדד - % תקלות קריטיות מסה"כ התקלות. % תקלות פיתוח מסה"כ התקלות.
נתונים וסטטיסטיקה • נתונים – כמות ,סוג וחומרת התקלות ממערכת • לתיעוד בדיקות.( T/D ). • ערכי בסיס - קביעת ערכי סף מניתוח סטטיסטי • קודם. • % תקלות בחומרה קריטיות מסה"כ התקלות : עד 5%. • % תקלות מסוג פיתוח מסה"כ התקלות : 50%. • % תקלות מסוג אפיון , תשתית , עיצוב ביחד :%50.
התפלגות הנתונים תקלות קריטיות - %6.7 תקלות פיתוח - %60.8
נוסחאות לחישוב המדדים • DevS – עמידה בסטנדרט פיתוח. ) > 1) • MetS –מדד בסיסי. • MetR – ערך מדד מתקבל. DevS1 = 6.7 / 5 = DevS2 = 60.8 / 50 = DevS=MetR / MetS 1.34 1.22
חישוב איכות הפיתוח DevQ = DevS1 * DevS2 1.63 = 1.34 * 1.22 DevQ – איכות הפיתוח ( > 1).
סיכום יישום שיטת מדדי האיכות יוצר – מנגנון קבוע ומתמשך של היזון חוזר, הכולל איסוף נתונים על חריגי איכות בארגון , ניתוחם ,שיפורם והטמעת השינויים בארגון – במטרהל :התייעלות, צמצום עלויות , שירות ללקוח והגברת רמת האיכות.
סיכום מערכת איכותית מטרות ניתוח ומסקנות שינויים ושיפורים ישויות מאפיינים מדדים ונתונים