SlideShare a Scribd company logo
1 of 30
Security – Reliability – Quality
‫תוכנה‬ ‫בפיתוח‬ ‫ואיכות‬ ‫חדשנות‬
Quality & ROI
‫קיני‬ ‫גיל‬
‫תוכנה‬ ‫איכות‬ ‫לנזקי‬ ‫דוגמאות‬?
‫פעם‬,‫מזמן‬...
oKnight Capital–‫נז‬‫של‬ ‫ק‬440$‫באוגוסט‬ ‫מליון‬2012
‫ינואר‬2013
o‫קבוצת‬‫ללוייד‬‫בנקאות‬,‫מהירה‬ ‫תשלומים‬ ‫מערכת‬ ‫עם‬
o‫פיי‬-‫פל‬,‫כפולים‬ ‫חיובים‬
o‫באטס‬‫גלובל‬(‫ארה‬"‫ב‬),400‫שגוי‬ ‫במחיר‬ ‫בוצעו‬ ‫הוראות‬ ‫אלף‬
‫פברואר‬2013
o‫מניות‬ ‫בשערי‬ ‫נפילה‬–‫מומביי‬,‫הודו‬(‫מליוני‬‫דולרים‬)
o‫פלאפון‬ ‫רשת‬ ‫של‬ ‫קריסה‬(‫בדצמבר‬ ‫סלקום‬ ‫את‬ ‫לשכוח‬ ‫לא‬2010)
Faster Than a Speeding Bullet
What is “faster than a speeding bullet, more
powerful than a locomotive” ?
‫איכות‬–‫באגים‬ ‫ללא‬
‫המסר‬:
‫עסקי‬ ‫צורך‬ ‫הינה‬ ‫איכות‬
‫איכות‬ ‫מהי‬?
‫הלקוח‬ ‫וציפיות‬ ‫לדרישות‬ ‫המוצר‬ ‫התאמת‬
‫לקוח‬ ‫תלוי‬/‫מוצר‬
o‫משחקי‬PC‫או‬...
o‫מצילי‬ ‫ומכשירים‬ ‫לעסקים‬ ‫קריטיות‬ ‫מערכות‬-‫חיים‬
‫מהמוצר‬ ‫כחלק‬ ‫מובנית‬ ‫איכות‬
o‫המוצר‬ ‫מעל‬ ‫תוספת‬ ‫אינה‬
‫תוכנה‬ ‫באיכות‬ ‫כלכליות‬ ‫הגדרות‬
“Technical Debt”
o‫נמוכה‬ ‫באיכות‬ ‫ורשלני‬ ‫מהיר‬ ‫שפיתוח‬ ‫ההצהרה‬,‫לשנים‬ ‫מוביל‬
‫יקרים‬ ‫ושיפורים‬ ‫תמיכה‬ ‫של‬ ‫רבות‬
-Ward Cunningham, 1992
Cost of Quality (COQ)
o‫באגים‬ ‫מניעת‬ ‫של‬ ‫הישירות‬ ‫העלויות‬ ‫סך‬,‫לפני‬ ‫ותיקון‬ ‫מציאה‬
‫בדיקות‬,‫עצמן‬ ‫הבדיקות‬,‫גרסה‬ ‫שחרור‬ ‫לאחר‬ ‫ותיקונים‬
Total Cost of Ownership (TCO)
o‫פיתוח‬ ‫של‬ ‫העלויות‬ ‫סך‬,‫שיפורים‬,‫ותמיכה‬ ‫תחזוקה‬,‫מהיום‬ ‫החל‬
‫המוצר‬ ‫חיי‬ ‫לסוף‬ ‫ועד‬ ‫הראשון‬
Capers Jones–‫ח‬‫איכות‬ ‫וקר‬
‫תוכנה‬ ‫בפיתוח‬ ‫איכות‬ ‫למחקר‬ ‫מקורות‬2012
‫בשנים‬ ‫נאספו‬ ‫הנתונים‬2011-1984
‫כ‬-675‫מתוכן‬ ‫חברות‬150‫מפורצ‬'‫ן‬-500
‫כ‬-35‫הממשלתי‬ ‫בסקטור‬ ‫פיתוח‬ ‫קבוצות‬/‫צבאי‬
‫כ‬-13,500‫ו‬ ‫פרויקטים‬-50-75‫חודש‬ ‫כל‬ ‫חדשים‬
‫מ‬-24‫מדינות‬
‫מ‬ ‫יותר‬-15‫ומשפטים‬ ‫תביעות‬
‫בתוכנה‬ ‫ירודה‬ ‫איכות‬
‫כל‬ ‫מאשר‬ ‫חמורות‬ ‫עסקיות‬ ‫בעיות‬ ‫ביותר‬ ‫אשמה‬ ‫תוכנה‬
‫ידי‬ ‫אחר‬ ‫מוצר‬-‫אדם‬
‫ביותר‬ ‫היקר‬ ‫הנושא‬ ‫נהייתה‬ ‫תוכנה‬ ‫של‬ ‫ירודה‬ ‫איכות‬
‫האנושית‬ ‫בהיסטוריה‬
o‫מ‬ ‫יותר‬-150$‫בארה‬ ‫שנה‬ ‫כל‬ ‫ביליון‬"‫ב‬
o‫מ‬ ‫יותר‬-500$‫בעולם‬ ‫שנה‬ ‫כל‬ ‫ביליון‬
‫רבים‬ ‫בעיני‬ ‫נחשבים‬ ‫טכניים‬ ‫ואנשים‬ ‫פיתוח‬ ‫מנהלי‬
‫מהמנכ‬"‫מובילים‬ ‫כמקצוענים‬ ‫ולא‬ ‫כואב‬ ‫ככורח‬ ‫לים‬
‫התוכנה‬ ‫באיכות‬ ‫שיפור‬-‫התעשיות‬ ‫כל‬ ‫עבור‬ ‫מרכזי‬ ‫נושא‬
‫התחזוקה‬ ‫בשלב‬ ‫הפתעה‬
‫תרזה‬‫לנוויץ‬–‫מ‬‫המחקר‬ ‫חברת‬ ‫ייסדת‬Voke
o‫יוצאת‬Gartner‫המוצר‬ ‫חיי‬ ‫מחזור‬ ‫בנושא‬ ‫ומובילה‬
o..".‫כ‬-80%‫ה‬ ‫מתקציבי‬-IT‫לתחזוקה‬ ‫מוקצים‬
‫חדש‬ ‫פיתוח‬ ‫על‬ ‫ולא‬"
‫תוכנה‬ ‫איכות‬ ‫על‬ ‫הארות‬
‫סקרים‬ ‫של‬ ‫שילוב‬,‫סטטי‬ ‫ניתוח‬,‫ובדיקות‬
o‫מ‬ ‫יותר‬ ‫של‬ ‫זמנים‬ ‫ולוחות‬ ‫פיתוח‬ ‫בעלויות‬ ‫חסכון‬-20%
o‫ב‬ ‫חסכון‬-TCO‫מ‬ ‫יותר‬ ‫של‬-45%
‫התהליך‬ ‫עלות‬ ‫על‬ ‫איכות‬ ‫השפעת‬
‫הבאגים‬ ‫צמצום‬
‫באגים‬ ‫מניעת‬
o‫תיכון‬‫רובוסטי‬
o‫ושימוש‬ ‫מובנה‬ ‫קוד‬‫בקומפוננטות‬
o‫המפתח‬ ‫ברמת‬ ‫סטטי‬ ‫ניתוח‬
‫באגים‬ ‫ותיקון‬ ‫מציאת‬
o‫מערכת‬ ‫ברמת‬ ‫סטטי‬ ‫ניתוח‬/‫בילד‬
o‫קוד‬ ‫סקר‬
o‫בדיקות‬
‫ארגונית‬ ‫כתרבות‬ ‫איכות‬
‫הפיתוח‬ ‫תהליך‬ ‫בסוף‬ ‫פעולה‬ ‫רק‬ ‫ולא‬ ‫שלמה‬ ‫תרבות‬ ‫זו‬
‫ומתמשך‬ ‫תהליכי‬
o‫מלח‬ ‫כמו‬ ‫לא‬ ‫זה‬ ‫איכות‬
‫הבישול‬ ‫תהליך‬ ‫בסוף‬ ‫להוסיף‬ ‫שאפשר‬
o‫המתוק‬ ‫לאוהבי‬ ‫או‬...
‫שוקולד‬ ‫כמו‬ ‫לא‬ ‫זה‬ ‫איכות‬
‫בסוף‬ ‫שמורחים‬,‫העוגה‬ ‫על‬
‫התוכנה‬ ‫איכות‬ ‫את‬ ‫משפרים‬ ‫איך‬?
‫גרסה‬ ‫שחרור‬ ‫לפני‬ ‫בדיקות‬
o‫התהליך‬ ‫סוף‬ ‫לקראת‬ ‫רק‬ ‫מופעל‬
o‫התוצאה‬–‫עלויות‬‫סבבים‬ ‫ובמספר‬ ‫גבוהות‬ ‫תיקון‬
‫ישיר‬ ‫טיפול‬
o‫וקידוד‬ ‫פיתוח‬ ‫של‬ ‫הראשון‬ ‫מהשלב‬ ‫החל‬
o‫קוד‬ ‫סקר‬-‫מקור‬=Code Review
oSCA‫לאכיפה‬,‫באגים‬ ‫ותיקון‬ ‫מציאת‬
‫עקיף‬ ‫טיפול‬
o‫ע‬"‫כגון‬ ‫תקנים‬ ‫י‬–DO-178B/C , MISRA‫וכו‬'
‫הפיתוח‬ ‫בסיום‬ ‫בדיקות‬
‫לבצע‬ ‫אמורים‬ ‫מה‬?
o‫לדרישות‬ ‫התאמה‬ ‫לבדוק‬ ‫אמורים‬
‫בפועל‬ ‫מבצעים‬ ‫מה‬?
o‫מטפלים‬ ‫המקומות‬ ‫ברוב‬(‫בטעות‬)‫יציבות‬ ‫בעיות‬ ‫במציאת‬,
‫ואבטחה‬ ‫אמינות‬
o‫להגיע‬ ‫אמור‬ ‫הקוד‬"‫מוכן‬"‫ובשל‬
‫מפיתוח‬ ‫יותר‬ ‫זולות‬ ‫בדיקות‬?
o‫פרויקט‬ ‫עלות‬ ‫חישובי‬/‫כי‬ ‫מוטעית‬ ‫הנחה‬ ‫על‬ ‫מבוססים‬ ‫לרוב‬ ‫מוצר‬
‫הוא‬ ‫הבדיקות‬ ‫שלב‬ ‫זמן‬"‫זול‬"‫מפיתוח‬ ‫יותר‬
‫איכותי‬ ‫תהליך‬ ‫לא‬ ‫למה‬ ‫אז‬?
‫זמן‬ ‫מספיק‬ ‫אין‬
‫משאבים‬ ‫מספיק‬ ‫אין‬
‫המתאימים‬ ‫בכלים‬ ‫משתמשים‬?!
‫תוכנה‬ ‫איכות‬-‫המסקנות‬
‫המספיקה‬ ‫ויחידה‬ ‫אחת‬ ‫שיטה‬ ‫אין‬
‫ביותר‬ ‫היעילים‬ ‫הינם‬ ‫סטטי‬ ‫וניתוח‬ ‫סקרים‬
o‫מוקדמים‬ ‫בשלבים‬ ‫במיוחד‬
‫אדיר‬ ‫השקעה‬ ‫על‬ ‫החזר‬ ‫מספקת‬ ‫באיכות‬ ‫מצוינות‬
15$‫כל‬ ‫על‬1$‫המושקע‬
‫המסר‬:
‫עסקי‬ ‫צורך‬ ‫הינה‬ ‫איכות‬
‫לחברה‬ ‫משתלמת‬ ‫איכות‬
...‫כמנהל‬ ‫לך‬ ‫וגם‬!
‫ההשקעה‬ ‫על‬ ‫החזר‬
‫ה‬ ‫את‬ ‫נמדוד‬ ‫איך‬ROI‫איכותי‬ ‫בתהליך‬
‫לארגון‬ ‫טובה‬ ‫איכות‬ ‫למה‬?
‫למנהלים‬ ‫טובה‬ ‫איכות‬ ‫למה‬?
‫למפתחים‬ ‫טובה‬ ‫איכות‬ ‫למה‬?
‫הפיתוח‬ ‫באפקטיביות‬ ‫הבאה‬ ‫הקפיצה‬
‫התוכנה‬ ‫פיתוח‬ ‫בתהליך‬ ‫אדיר‬ ‫לשיפור‬ ‫הביאה‬ ‫אוטומציה‬
o‫ניהול‬‫פרוייקטים‬
o‫תקלות‬ ‫אחר‬ ‫מעקב‬
o‫קונפיגורציה‬ ‫ניהול‬
oRegression testing
‫איכות‬ ‫לבקרת‬ ‫אוטומציה‬ ‫לבצע‬ ‫ניתן‬ ‫כיום‬/‫ווריפיקציה‬
oCode Review‫ואוטומטי‬ ‫יסודי‬
o‫הבודד‬ ‫המפתח‬ ‫ברמת‬ ‫קוד‬ ‫בדיקות‬‫לפני‬‫למערכת‬ ‫הכנסתו‬
o‫וארגונים‬ ‫פיתוח‬ ‫לצוותי‬ ‫מערכתית‬ ‫ברמה‬ ‫כוללות‬ ‫בדיקות‬
‫מהמשוואה‬ ‫חלק‬ ‫רק‬ ‫זה‬ ‫יעילות‬
‫תפוקה‬ ‫מול‬ ‫יעילות‬
‫עובד‬ ‫יעילות‬
o‫תפוקה‬-‫נמדדת‬‫חלקי‬‫תפוקה‬-‫סטנדרטית‬
‫תפוקה‬(‫פרודוקטיביות‬)
o‫נתון‬ ‫בזמן‬ ‫עבודה‬ ‫כמות‬
‫אפקטיביות‬
o‫עבודה‬ ‫כמות‬‫מועילה‬‫נתון‬ ‫בזמן‬
o‫בקיזוז‬‫הביזבוז‬
EFFICIENCY
Is doing
THINGS RIGHT
EFFECTIVENESS
Is doing the
RIGHT THINGS
- Peter Drucker
‫לעסקים‬ ‫גם‬ ‫טובה‬ ‫איכות‬
‫בזמן‬ ‫חסכון‬+‫ישירות‬ ‫בעלויות‬ ‫חסכון‬=‫רווחים‬ ‫שיפור‬
‫במשאבים‬ ‫יעיל‬ ‫שימוש‬
‫תחרותיות‬ ‫שיפור‬
‫תדמית‬ ‫שיפור‬
‫תחזוקה‬ ‫עלויות‬ ‫צמצום‬
‫משתמשים‬ ‫רצון‬ ‫שביעות‬
‫מפתחים‬ ‫רצון‬ ‫שביעות‬
‫תוכנה‬ ‫עלות‬ ‫לצמצום‬ ‫איכות‬
‫הרווח‬
‫הפוטנציאלי‬
‫חוסך‬ ‫זה‬ ‫כמה‬–‫ל‬‫עולה‬ ‫זה‬ ‫כמה‬ ‫א‬
‫מעט‬ ‫ממש‬
Capers Jones
PROJECT SIZE
Lines of code (LOC) analyzed with Klocwork 750,000
% of Overall Code Analyzed 100%
DEFECT RATES
Actual number of serious defects found by Klocwork 500
20%
REPAIR EFFICIENCY OF SERIOUS DEFECTS REPORTED BY KLOCWORK
% of serious defects reported that will be fixed at desktop 90%
COST TO FIX DEFECTS BY LOCATION Cost
At developer desktop 15$
At system build stage (using testing cost data) 480$
During Testing 750$
In field (post-release) 3,000$
% of serious defects found by Klocwork that would eventually be discovered
by current Testing
COST TO FIX DEFECTS BY STAGE (REDISTRIBUTION OF DEFECT COST EARLIER IN THE PROCESS)
At developer desktop -$ 6,750$
During system build stage -$ 24,000$
At Testing stage 75,000$ -$
In field 1,200,000$ -$
TOTAL COST TO FIX CRITICAL SOFTWARE DEFECTS 1,275,000$ 30,750$
SAVINGS ON CODE ANALYZED 1,244,250$
‫באגים‬ ‫ולתקן‬ ‫למצוא‬ ‫אחרות‬ ‫דרכים‬ ‫גם‬ ‫יש‬
‫שבאתם‬ ‫ותודה‬!

More Related Content

Similar to מדידת החזר על השקעה בתהליך פיתוח איכותי

ProductX2014 Itai tomer.fabrix
ProductX2014 Itai tomer.fabrixProductX2014 Itai tomer.fabrix
ProductX2014 Itai tomer.fabrixProduct Excellence
 
Collaborating with the customer – a Bank Leumi Agile pilot
Collaborating with the customer – a Bank Leumi Agile pilotCollaborating with the customer – a Bank Leumi Agile pilot
Collaborating with the customer – a Bank Leumi Agile pilotAgileSparks
 
Rm saa s for share 2
Rm saa s for share 2Rm saa s for share 2
Rm saa s for share 2Manageware
 
Rm saa s for share 2
Rm saa s for share 2Rm saa s for share 2
Rm saa s for share 2Manageware
 
Rm saa s for share
Rm saa s for shareRm saa s for share
Rm saa s for shareManageware
 
STR - amit ,nir,micha
STR - amit ,nir,michaSTR - amit ,nir,micha
STR - amit ,nir,michaamit ziserman
 
217188083 mf-trends-2013
217188083 mf-trends-2013217188083 mf-trends-2013
217188083 mf-trends-2013Inbalraanan
 
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020Gideon Cohen
 
Agile Introduction - Hebrew content - 2019
Agile Introduction - Hebrew content - 2019Agile Introduction - Hebrew content - 2019
Agile Introduction - Hebrew content - 2019Dan-Eyal Gazit
 
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטי
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטיהטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטי
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטיTrinitySB
 
כנס לקוחות Kineo הצגת פרויקט פזידע
כנס לקוחות Kineo   הצגת פרויקט פזידעכנס לקוחות Kineo   הצגת פרויקט פזידע
כנס לקוחות Kineo הצגת פרויקט פזידעLiat Oren-Wachs
 
Agile For Website Managers
Agile For Website ManagersAgile For Website Managers
Agile For Website ManagersUdi Salant
 
Qa extreme2011 from classic lc to agile and the testers types of the future_b...
Qa extreme2011 from classic lc to agile and the testers types of the future_b...Qa extreme2011 from classic lc to agile and the testers types of the future_b...
Qa extreme2011 from classic lc to agile and the testers types of the future_b...Eran Kinsbrunner
 

Similar to מדידת החזר על השקעה בתהליך פיתוח איכותי (20)

Virt And Cloud
Virt And CloudVirt And Cloud
Virt And Cloud
 
ProductX2014 Itai tomer.fabrix
ProductX2014 Itai tomer.fabrixProductX2014 Itai tomer.fabrix
ProductX2014 Itai tomer.fabrix
 
Collaborating with the customer – a Bank Leumi Agile pilot
Collaborating with the customer – a Bank Leumi Agile pilotCollaborating with the customer – a Bank Leumi Agile pilot
Collaborating with the customer – a Bank Leumi Agile pilot
 
Rm saa s for share 2
Rm saa s for share 2Rm saa s for share 2
Rm saa s for share 2
 
Rm saa s for share 2
Rm saa s for share 2Rm saa s for share 2
Rm saa s for share 2
 
Rm saa s for share
Rm saa s for shareRm saa s for share
Rm saa s for share
 
STR - amit ,nir,micha
STR - amit ,nir,michaSTR - amit ,nir,micha
STR - amit ,nir,micha
 
I Rox פרופיל חברה
I Rox פרופיל חברהI Rox פרופיל חברה
I Rox פרופיל חברה
 
217188083 mf-trends-2013
217188083 mf-trends-2013217188083 mf-trends-2013
217188083 mf-trends-2013
 
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020
מצגת מפגש מקוון - מסלולי סיוע לתעשיה ספטמבר 2020
 
Agile Introduction - Hebrew content - 2019
Agile Introduction - Hebrew content - 2019Agile Introduction - Hebrew content - 2019
Agile Introduction - Hebrew content - 2019
 
992 software management
992 software management992 software management
992 software management
 
Iec 62368 1
Iec 62368 1Iec 62368 1
Iec 62368 1
 
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטי
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטיהטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטי
הטמעה וניהול נכון ובטוח של קוד פתוח בארגון - טריניטי
 
כנס לקוחות Kineo הצגת פרויקט פזידע
כנס לקוחות Kineo   הצגת פרויקט פזידעכנס לקוחות Kineo   הצגת פרויקט פזידע
כנס לקוחות Kineo הצגת פרויקט פזידע
 
Sap Eng Presentation Win It Dm02
Sap Eng Presentation Win It Dm02Sap Eng Presentation Win It Dm02
Sap Eng Presentation Win It Dm02
 
ShalomIrisCV
ShalomIrisCVShalomIrisCV
ShalomIrisCV
 
Agile For Website Managers
Agile For Website ManagersAgile For Website Managers
Agile For Website Managers
 
Digital First !
Digital First !Digital First !
Digital First !
 
Qa extreme2011 from classic lc to agile and the testers types of the future_b...
Qa extreme2011 from classic lc to agile and the testers types of the future_b...Qa extreme2011 from classic lc to agile and the testers types of the future_b...
Qa extreme2011 from classic lc to agile and the testers types of the future_b...
 

מדידת החזר על השקעה בתהליך פיתוח איכותי

  • 1. Security – Reliability – Quality ‫תוכנה‬ ‫בפיתוח‬ ‫ואיכות‬ ‫חדשנות‬
  • 3. ‫תוכנה‬ ‫איכות‬ ‫לנזקי‬ ‫דוגמאות‬? ‫פעם‬,‫מזמן‬... oKnight Capital–‫נז‬‫של‬ ‫ק‬440$‫באוגוסט‬ ‫מליון‬2012 ‫ינואר‬2013 o‫קבוצת‬‫ללוייד‬‫בנקאות‬,‫מהירה‬ ‫תשלומים‬ ‫מערכת‬ ‫עם‬ o‫פיי‬-‫פל‬,‫כפולים‬ ‫חיובים‬ o‫באטס‬‫גלובל‬(‫ארה‬"‫ב‬),400‫שגוי‬ ‫במחיר‬ ‫בוצעו‬ ‫הוראות‬ ‫אלף‬ ‫פברואר‬2013 o‫מניות‬ ‫בשערי‬ ‫נפילה‬–‫מומביי‬,‫הודו‬(‫מליוני‬‫דולרים‬) o‫פלאפון‬ ‫רשת‬ ‫של‬ ‫קריסה‬(‫בדצמבר‬ ‫סלקום‬ ‫את‬ ‫לשכוח‬ ‫לא‬2010)
  • 4. Faster Than a Speeding Bullet What is “faster than a speeding bullet, more powerful than a locomotive” ?
  • 7. ‫איכות‬ ‫מהי‬? ‫הלקוח‬ ‫וציפיות‬ ‫לדרישות‬ ‫המוצר‬ ‫התאמת‬ ‫לקוח‬ ‫תלוי‬/‫מוצר‬ o‫משחקי‬PC‫או‬... o‫מצילי‬ ‫ומכשירים‬ ‫לעסקים‬ ‫קריטיות‬ ‫מערכות‬-‫חיים‬ ‫מהמוצר‬ ‫כחלק‬ ‫מובנית‬ ‫איכות‬ o‫המוצר‬ ‫מעל‬ ‫תוספת‬ ‫אינה‬
  • 8. ‫תוכנה‬ ‫באיכות‬ ‫כלכליות‬ ‫הגדרות‬ “Technical Debt” o‫נמוכה‬ ‫באיכות‬ ‫ורשלני‬ ‫מהיר‬ ‫שפיתוח‬ ‫ההצהרה‬,‫לשנים‬ ‫מוביל‬ ‫יקרים‬ ‫ושיפורים‬ ‫תמיכה‬ ‫של‬ ‫רבות‬ -Ward Cunningham, 1992 Cost of Quality (COQ) o‫באגים‬ ‫מניעת‬ ‫של‬ ‫הישירות‬ ‫העלויות‬ ‫סך‬,‫לפני‬ ‫ותיקון‬ ‫מציאה‬ ‫בדיקות‬,‫עצמן‬ ‫הבדיקות‬,‫גרסה‬ ‫שחרור‬ ‫לאחר‬ ‫ותיקונים‬ Total Cost of Ownership (TCO) o‫פיתוח‬ ‫של‬ ‫העלויות‬ ‫סך‬,‫שיפורים‬,‫ותמיכה‬ ‫תחזוקה‬,‫מהיום‬ ‫החל‬ ‫המוצר‬ ‫חיי‬ ‫לסוף‬ ‫ועד‬ ‫הראשון‬
  • 9. Capers Jones–‫ח‬‫איכות‬ ‫וקר‬ ‫תוכנה‬ ‫בפיתוח‬ ‫איכות‬ ‫למחקר‬ ‫מקורות‬2012 ‫בשנים‬ ‫נאספו‬ ‫הנתונים‬2011-1984 ‫כ‬-675‫מתוכן‬ ‫חברות‬150‫מפורצ‬'‫ן‬-500 ‫כ‬-35‫הממשלתי‬ ‫בסקטור‬ ‫פיתוח‬ ‫קבוצות‬/‫צבאי‬ ‫כ‬-13,500‫ו‬ ‫פרויקטים‬-50-75‫חודש‬ ‫כל‬ ‫חדשים‬ ‫מ‬-24‫מדינות‬ ‫מ‬ ‫יותר‬-15‫ומשפטים‬ ‫תביעות‬
  • 10. ‫בתוכנה‬ ‫ירודה‬ ‫איכות‬ ‫כל‬ ‫מאשר‬ ‫חמורות‬ ‫עסקיות‬ ‫בעיות‬ ‫ביותר‬ ‫אשמה‬ ‫תוכנה‬ ‫ידי‬ ‫אחר‬ ‫מוצר‬-‫אדם‬ ‫ביותר‬ ‫היקר‬ ‫הנושא‬ ‫נהייתה‬ ‫תוכנה‬ ‫של‬ ‫ירודה‬ ‫איכות‬ ‫האנושית‬ ‫בהיסטוריה‬ o‫מ‬ ‫יותר‬-150$‫בארה‬ ‫שנה‬ ‫כל‬ ‫ביליון‬"‫ב‬ o‫מ‬ ‫יותר‬-500$‫בעולם‬ ‫שנה‬ ‫כל‬ ‫ביליון‬ ‫רבים‬ ‫בעיני‬ ‫נחשבים‬ ‫טכניים‬ ‫ואנשים‬ ‫פיתוח‬ ‫מנהלי‬ ‫מהמנכ‬"‫מובילים‬ ‫כמקצוענים‬ ‫ולא‬ ‫כואב‬ ‫ככורח‬ ‫לים‬ ‫התוכנה‬ ‫באיכות‬ ‫שיפור‬-‫התעשיות‬ ‫כל‬ ‫עבור‬ ‫מרכזי‬ ‫נושא‬
  • 11. ‫התחזוקה‬ ‫בשלב‬ ‫הפתעה‬ ‫תרזה‬‫לנוויץ‬–‫מ‬‫המחקר‬ ‫חברת‬ ‫ייסדת‬Voke o‫יוצאת‬Gartner‫המוצר‬ ‫חיי‬ ‫מחזור‬ ‫בנושא‬ ‫ומובילה‬ o..".‫כ‬-80%‫ה‬ ‫מתקציבי‬-IT‫לתחזוקה‬ ‫מוקצים‬ ‫חדש‬ ‫פיתוח‬ ‫על‬ ‫ולא‬"
  • 12. ‫תוכנה‬ ‫איכות‬ ‫על‬ ‫הארות‬ ‫סקרים‬ ‫של‬ ‫שילוב‬,‫סטטי‬ ‫ניתוח‬,‫ובדיקות‬ o‫מ‬ ‫יותר‬ ‫של‬ ‫זמנים‬ ‫ולוחות‬ ‫פיתוח‬ ‫בעלויות‬ ‫חסכון‬-20% o‫ב‬ ‫חסכון‬-TCO‫מ‬ ‫יותר‬ ‫של‬-45%
  • 13. ‫התהליך‬ ‫עלות‬ ‫על‬ ‫איכות‬ ‫השפעת‬
  • 14. ‫הבאגים‬ ‫צמצום‬ ‫באגים‬ ‫מניעת‬ o‫תיכון‬‫רובוסטי‬ o‫ושימוש‬ ‫מובנה‬ ‫קוד‬‫בקומפוננטות‬ o‫המפתח‬ ‫ברמת‬ ‫סטטי‬ ‫ניתוח‬ ‫באגים‬ ‫ותיקון‬ ‫מציאת‬ o‫מערכת‬ ‫ברמת‬ ‫סטטי‬ ‫ניתוח‬/‫בילד‬ o‫קוד‬ ‫סקר‬ o‫בדיקות‬
  • 15. ‫ארגונית‬ ‫כתרבות‬ ‫איכות‬ ‫הפיתוח‬ ‫תהליך‬ ‫בסוף‬ ‫פעולה‬ ‫רק‬ ‫ולא‬ ‫שלמה‬ ‫תרבות‬ ‫זו‬ ‫ומתמשך‬ ‫תהליכי‬ o‫מלח‬ ‫כמו‬ ‫לא‬ ‫זה‬ ‫איכות‬ ‫הבישול‬ ‫תהליך‬ ‫בסוף‬ ‫להוסיף‬ ‫שאפשר‬ o‫המתוק‬ ‫לאוהבי‬ ‫או‬... ‫שוקולד‬ ‫כמו‬ ‫לא‬ ‫זה‬ ‫איכות‬ ‫בסוף‬ ‫שמורחים‬,‫העוגה‬ ‫על‬
  • 16. ‫התוכנה‬ ‫איכות‬ ‫את‬ ‫משפרים‬ ‫איך‬? ‫גרסה‬ ‫שחרור‬ ‫לפני‬ ‫בדיקות‬ o‫התהליך‬ ‫סוף‬ ‫לקראת‬ ‫רק‬ ‫מופעל‬ o‫התוצאה‬–‫עלויות‬‫סבבים‬ ‫ובמספר‬ ‫גבוהות‬ ‫תיקון‬ ‫ישיר‬ ‫טיפול‬ o‫וקידוד‬ ‫פיתוח‬ ‫של‬ ‫הראשון‬ ‫מהשלב‬ ‫החל‬ o‫קוד‬ ‫סקר‬-‫מקור‬=Code Review oSCA‫לאכיפה‬,‫באגים‬ ‫ותיקון‬ ‫מציאת‬ ‫עקיף‬ ‫טיפול‬ o‫ע‬"‫כגון‬ ‫תקנים‬ ‫י‬–DO-178B/C , MISRA‫וכו‬'
  • 17. ‫הפיתוח‬ ‫בסיום‬ ‫בדיקות‬ ‫לבצע‬ ‫אמורים‬ ‫מה‬? o‫לדרישות‬ ‫התאמה‬ ‫לבדוק‬ ‫אמורים‬ ‫בפועל‬ ‫מבצעים‬ ‫מה‬? o‫מטפלים‬ ‫המקומות‬ ‫ברוב‬(‫בטעות‬)‫יציבות‬ ‫בעיות‬ ‫במציאת‬, ‫ואבטחה‬ ‫אמינות‬ o‫להגיע‬ ‫אמור‬ ‫הקוד‬"‫מוכן‬"‫ובשל‬ ‫מפיתוח‬ ‫יותר‬ ‫זולות‬ ‫בדיקות‬? o‫פרויקט‬ ‫עלות‬ ‫חישובי‬/‫כי‬ ‫מוטעית‬ ‫הנחה‬ ‫על‬ ‫מבוססים‬ ‫לרוב‬ ‫מוצר‬ ‫הוא‬ ‫הבדיקות‬ ‫שלב‬ ‫זמן‬"‫זול‬"‫מפיתוח‬ ‫יותר‬
  • 18. ‫איכותי‬ ‫תהליך‬ ‫לא‬ ‫למה‬ ‫אז‬? ‫זמן‬ ‫מספיק‬ ‫אין‬ ‫משאבים‬ ‫מספיק‬ ‫אין‬ ‫המתאימים‬ ‫בכלים‬ ‫משתמשים‬?!
  • 19. ‫תוכנה‬ ‫איכות‬-‫המסקנות‬ ‫המספיקה‬ ‫ויחידה‬ ‫אחת‬ ‫שיטה‬ ‫אין‬ ‫ביותר‬ ‫היעילים‬ ‫הינם‬ ‫סטטי‬ ‫וניתוח‬ ‫סקרים‬ o‫מוקדמים‬ ‫בשלבים‬ ‫במיוחד‬ ‫אדיר‬ ‫השקעה‬ ‫על‬ ‫החזר‬ ‫מספקת‬ ‫באיכות‬ ‫מצוינות‬ 15$‫כל‬ ‫על‬1$‫המושקע‬
  • 22. ‫ההשקעה‬ ‫על‬ ‫החזר‬ ‫ה‬ ‫את‬ ‫נמדוד‬ ‫איך‬ROI‫איכותי‬ ‫בתהליך‬ ‫לארגון‬ ‫טובה‬ ‫איכות‬ ‫למה‬? ‫למנהלים‬ ‫טובה‬ ‫איכות‬ ‫למה‬? ‫למפתחים‬ ‫טובה‬ ‫איכות‬ ‫למה‬?
  • 23. ‫הפיתוח‬ ‫באפקטיביות‬ ‫הבאה‬ ‫הקפיצה‬ ‫התוכנה‬ ‫פיתוח‬ ‫בתהליך‬ ‫אדיר‬ ‫לשיפור‬ ‫הביאה‬ ‫אוטומציה‬ o‫ניהול‬‫פרוייקטים‬ o‫תקלות‬ ‫אחר‬ ‫מעקב‬ o‫קונפיגורציה‬ ‫ניהול‬ oRegression testing ‫איכות‬ ‫לבקרת‬ ‫אוטומציה‬ ‫לבצע‬ ‫ניתן‬ ‫כיום‬/‫ווריפיקציה‬ oCode Review‫ואוטומטי‬ ‫יסודי‬ o‫הבודד‬ ‫המפתח‬ ‫ברמת‬ ‫קוד‬ ‫בדיקות‬‫לפני‬‫למערכת‬ ‫הכנסתו‬ o‫וארגונים‬ ‫פיתוח‬ ‫לצוותי‬ ‫מערכתית‬ ‫ברמה‬ ‫כוללות‬ ‫בדיקות‬
  • 24. ‫מהמשוואה‬ ‫חלק‬ ‫רק‬ ‫זה‬ ‫יעילות‬
  • 25. ‫תפוקה‬ ‫מול‬ ‫יעילות‬ ‫עובד‬ ‫יעילות‬ o‫תפוקה‬-‫נמדדת‬‫חלקי‬‫תפוקה‬-‫סטנדרטית‬ ‫תפוקה‬(‫פרודוקטיביות‬) o‫נתון‬ ‫בזמן‬ ‫עבודה‬ ‫כמות‬ ‫אפקטיביות‬ o‫עבודה‬ ‫כמות‬‫מועילה‬‫נתון‬ ‫בזמן‬ o‫בקיזוז‬‫הביזבוז‬ EFFICIENCY Is doing THINGS RIGHT EFFECTIVENESS Is doing the RIGHT THINGS - Peter Drucker
  • 26. ‫לעסקים‬ ‫גם‬ ‫טובה‬ ‫איכות‬ ‫בזמן‬ ‫חסכון‬+‫ישירות‬ ‫בעלויות‬ ‫חסכון‬=‫רווחים‬ ‫שיפור‬ ‫במשאבים‬ ‫יעיל‬ ‫שימוש‬ ‫תחרותיות‬ ‫שיפור‬ ‫תדמית‬ ‫שיפור‬ ‫תחזוקה‬ ‫עלויות‬ ‫צמצום‬ ‫משתמשים‬ ‫רצון‬ ‫שביעות‬ ‫מפתחים‬ ‫רצון‬ ‫שביעות‬
  • 27. ‫תוכנה‬ ‫עלות‬ ‫לצמצום‬ ‫איכות‬ ‫הרווח‬ ‫הפוטנציאלי‬
  • 28. ‫חוסך‬ ‫זה‬ ‫כמה‬–‫ל‬‫עולה‬ ‫זה‬ ‫כמה‬ ‫א‬ ‫מעט‬ ‫ממש‬ Capers Jones PROJECT SIZE Lines of code (LOC) analyzed with Klocwork 750,000 % of Overall Code Analyzed 100% DEFECT RATES Actual number of serious defects found by Klocwork 500 20% REPAIR EFFICIENCY OF SERIOUS DEFECTS REPORTED BY KLOCWORK % of serious defects reported that will be fixed at desktop 90% COST TO FIX DEFECTS BY LOCATION Cost At developer desktop 15$ At system build stage (using testing cost data) 480$ During Testing 750$ In field (post-release) 3,000$ % of serious defects found by Klocwork that would eventually be discovered by current Testing COST TO FIX DEFECTS BY STAGE (REDISTRIBUTION OF DEFECT COST EARLIER IN THE PROCESS) At developer desktop -$ 6,750$ During system build stage -$ 24,000$ At Testing stage 75,000$ -$ In field 1,200,000$ -$ TOTAL COST TO FIX CRITICAL SOFTWARE DEFECTS 1,275,000$ 30,750$ SAVINGS ON CODE ANALYZED 1,244,250$
  • 29. ‫באגים‬ ‫ולתקן‬ ‫למצוא‬ ‫אחרות‬ ‫דרכים‬ ‫גם‬ ‫יש‬