רקע
כמה פעמים שמעתם אמירות כגון: "הפרויקט שסיימנו לפני שבוע היה "דפוק", לוח הזמנים שהתחייבנו במכרז לא היה ריאלי, וזה "בעדינות", וכך גם התקציב של הפרויקט. כצפוי נלחצנו מאוד על ידי ההנהלה והתוצאה קיצורי דרך, שגיאות קשות, ובסיכום - פרויקט באיכות נמוכה שגרם נזק כספי גדול לחברה". או אמירה קשה כמו "הפרויקט שעוד מעט", תודה לאל, נסיים, התחיל ברגל שמאל, כאשר התברר שמישהו לא בדק וכמעט כל הצוות ש"תוכנן" לבצע את הפרויקט, עסוק בפרויקטים ארוכים אחרים, ולא יכול להתפנות לפרויקט שלנו. בסופו של דבר "לגיון זרים", מוכשר ככל שמצאנו, התחיל באיחור את הפרויקט, "צבר" הרבה שגיאות, וסיים את הפרויקט באיחור ניכר. לעלות שעברה בהרבה את התקציב, נוסף קנס לא קטן ששולם ללקוח כפיצוי על האיחור"
איחורים בהשלמת הפרויקט, הפסדים, פרויקטים באיכות נמוכה, ובמקרים רבים מצבים קשים הרבה יותר, הם התוצאות ההרסניות של הצעת מכרז רשלנית, שלא נבדקה בקפדנות על ידי ספק התוכנה. התוצאה קשה למבצע הפרויקט הסובל הפסדים ניכרים, ולפחות ל"אי נעימות" לרוכש התוכנה, כתוצאה מפרויקט שאיכותו נמוכה והושלם באיחור.
מבוא
חוזה גרוע תמיד אינו רצוי. סקר חוזה הוא התהליך שבו סקירת טיוטת ההצעה במכרז וסקירת טיוטת החוזה, מסייעות ליצור חוזה מוצלח. מנקודת מבט של הא"ת (הבטחת איכות תוכנה), חוזה גרוע שמתאפיין, בדרך כלל, בהגדרה רופפת של דרישות, תקציב ולוח זמנים לא ריאליים, צפוי שיביא לאיכות נמוכה של מוצר התוכנה. ברוב המקרים של חוזה בלתי תקין, כתוצאה מלחץ בלוח הזמנים ובתקציב, ההנהלה לוחצת לחסוך זמן ולקצץ במשאבי הפיתוח. התוצאה הבלתי נמנעת היא איכות נמוכה ואפילו כישלון הפרויקט. במקרים אחרים, בהם תקציב ההצעה ולוח הזמנים שלה מבוססים על אומדנים מנופחים ושגויים, סביר מאוד שההצעה תיכשל במכרז.
שלבי סקר החוזה
תהליך סקר החוזה מתחיל בסקר טיוטת ההצעה, כאשר בשלב שני, מתבצע סקר טיוטת החוזה. "סקר החוזה" מקיף את שתי הפעילויות. פרק זה מציג את סקר החוזה מנקודת ראותו של ספק התוכנה (המפתח).
המטרות הכלליות של סקר החוזה
הגורמים המשפיעים על היקף סקר החוזה
הגורמים הקובעים את היקף ההשקעה הנדרש לסקר החוזה הם:
בהתאם, סקר חוזה של פרויקט קטן יכול להתבצע על ידי סוקר אחד, שלא יידרש להשקיע הרבה מזמנו.
מאחר וביצוע סקר חוזה צורך משאבי כוח אדם רבים, יש לבדוק אפשרות להימנע מביצוע הסקר בהתאם למצב.
אפשר להימנע מסקר חוזה:
בנהלים של סקר חוזה צריך להגדיר מצבים שבהם ביצוע סקר חוזה אינו חובה. כמו כן רצוי שימונה איש מקצוע בכיר במחלקת פיתוח התוכנה שיקבע האם יש לקיים סקר חוזה בפרויקטים "פשוטים" שלא נכללו בהגדרות הנוהל.
תפקיד יחידת הבטחת איכות תוכנה בסקרי חוזה
תפקידה של יחידת הא"ת בביצוע סקרי חוזה חשוב ביותר, וכולל ייזום, ארגון הצוות והשתתפות בצוות הסקר. במקרים שצוות יחידת הא"ת הוא קטן או שנדרש סיוע של מומחים מתחום ההצעה, אנשים שלא מהיחידה התבקשו להצטרף לצוות הסקר.
ביצוע סקר חוזה נדרש בסטנדרטיםIEEE Std. 730-2014 ISO/IEC 90003:2014, המקדישים סעיפים מיוחדים לנושא.
תהליך סקר חוזה ושלביו
מקרים שונים יכולים להביא חברת תוכנה לחתימת חוזה עם לקוח. הרגילים ביותר הם:
(1) הגשת הצעה וזכייה במכרז.
(2) קבלת פרויקט לאחר הגשת הצעת יחיד לפי מפרט דרישות RFP של לקוח.
(3) קבלת הזמנה פנימית ממחלקה אחרת בארגון לפיתוח מוצר תוכנה
יש שיטענו כי חוזה נחתם רק בשני המקרים הראשונים ונדיר מאוד בפרויקט פנימי. במקרה זה מתקיימים "תחליפי חוזה" או "מסמך הבנות". מסמך כזה כולל תיאור כללי של הדרישות והבנות כלליות לגבי לוח הזמנים והתקציב. ברוב המקרים, "תחליף חוזה", זקוק לסקר החוזה, אף יותר מאשר הצעה במכרז.
להלן תיאור שלבי סקר החוזה:
שלב ראשון – סקר טיוטת ההצעה
במהלך שלב זה סוקרים את טיוטת ההצעה וגם את המסמכים ששימשו בסיס להכנת הטיוטה: מפרט הדרישות של הלקוח, פרטים נוספים שנמסרו על ידי הלקוח לצוות הכנת ההצעה, אומדנים לעלויות משאבים שיידרשו לפרויקט, הסכמים וטיוטות של הסכמים עם שותפים וקבלני משנה.
שלב שני – סקר טיוטת החוזה
בשלב זה סוקרים את טיוטת החוזה על סמך ההצעה שהוגשה ללקוח וההסכמות שהושגו עם הלקוח לאחר הגשת ההצעה.
תהליך סקר החוזה יכול להתחיל מייד לאחר השלמת טיוטת ההצעה. לאחר השלמת סקר טיוטת ההצעה, הצוות שהכין את המסמך יבצע את ההשלמות והתיקונים המתבקשים.
השלב השני של סקר החוזה יתחיל עם קבלת טיוטת החוזה לביצוע הפרויקט .
תהליך העבודה המשולב של צוות ההצעה וצוות סקר החוזה בהכנת ההצעה והחוזה מוצג באיור 1.
איור 1: תהליך העבודה של צוות ההצעה וצוות סקר החוזה בהכנת ההצעה והחוזה
סקר חוזה הוא התהליך שבו סקירת טיוטת ההצעה במכרז וסקירת טיוטת החוזה, מסייעות ליצור חוזה מוצלח |
הערה ליישום במצבים מסוימים הספק (מפתח התוכנה) מגיש הצעה נמוכה ממחיר העלות משיקולים כגון פוטנציאל פרויקטים עתידיים לאותו לקוח או רצון להתמחות בתחום חדש. במקרים כאלה ההצעה צריכה להתייחס לאומדנים הריאליים של לוח הזמנים, תקציב ויכולות מקצועיות. ההפסד הצפוי הוא הפסד מחושב ולא כישלון הפרויקט. |
מטרות הבדיקה וההערכה בסקר טיוטת הצעה
המטרה של סקר טיוטת ההצעה היא להבטיח שהפעילויות הבאות בוצעו באופן משביע רצון על ידי צוות ההצעה. מטרות הבדיקה הן לבדוק:
1. האם הובהרו דרישות הלקוח והאם תועדו?
מפרטי דרישות ומסמכים טכניים דומים יכולים להיות כלליים מדי ולא מדויקים מספיק לצרכי הכנת הצעת הפרויקט. מסמכים נוספים שיש לבדוק הם הבהרות של דרישות לא ברורות ועדכונים.
2. האם נבחנו גישות אלטרנטיביות לגבי ביצוע הפרויקט?
לעיתים קרובות, אלטרנטיבות מבטיחות ומתאימות לביצוע הפרויקט לא נסקרות על ידי צוות ההצעה באופן נאות. חיסרון זה מתייחס ברוב המקרים לאלטרנטיבות למיחזור, שילוב תוכנה שנרכשה, שותפות ושימוש בקבלני משנה בעלי ידע בתחום.
3. האם הוגדרו הצדדים הפורמליים של יחסי לקוח עם מפתח התוכנה
הצעה צריכה להגדיר צדדים פורמליים שכוללים: (1) ערוץ תקשורת סדיר בין הלקוח למפתח, (2) רשימת מוצרי הפרויקט, (3) קריטריונים לקבלת הפרויקט, (4) תהליך פורמלי לאישור השלמת שלב בפרויקט, וכן (5) נוהל טיפול בבקשות הלקוח לשינוים.
4. האם זוהו סיכוניי הפרויקט?
על צוות ההצעה לזהות ולהציג פתרון לסיכוני הפרויקט, כגון חוסר ידע מקצועי מספיק בתחום הפרויקט או בהפעלת כלי פיתוח הנדרשים בפרויקט.
5. האם נערכו אומדנים נאותים ללוח הזמנים ולמשאבים שיידרשו?אומדני המשאבים מתייחסים לצוות המקצועי ולמתקני הפיתוח, לעלות קבלני משנה, כמו גם לסך הכולל של תקציב הפרויקט. אומדני לוח הזמנים צריכים להתייחס לדרישות לוח הזמנים של כל המשתתפים בפרויקט.
6. האם נבדקו יכולות הביצוע והזמינות בהתייחס לפרויקט?
בדיקת יכולות הביצוע צריכה להתייחס ליכולות המקצועיות ולזמינות של אנשי צוות ומתקני פיתוח במועד המתוכנן לפרויקט.
7. האם נבדקו יכולות הלקוח למלא את המחויבות שלו בפרויקט?
הבדיקה מתייחסת ליכולות הפיננסיות וליכולות הארגוניות, כגון יכולת לגייס צוות ולהכשיר צוות להפעלת המערכת, יכולת לביצוע התקנות חומרה נדרשות, יכולת שדרוג מערכת התקשורת שלו.
8. האם הוגדרו תנאי ההתקשרות עם שותפים וקבלני משנה?
התנאים כוללים נושאי הבטחת איכות, לוח התשלומים, חלוקת רווחי הפרויקט בין השותפים ושיטות שיתוף הפעולה בין הנהלות הפרויקטים.
9. האם הוגדרו זכויות היוצרים שזוהו?
נושא זה הוא בעל חשיבות רבה במקרים שבהם תוכנה ממוחזרת משולבת בפרויקט או שצפויות אפשרויות למיחזור התוכנה בעתיד. נושא זה חיוני בהפעלת שירותי תוכנה והפעלת אמצעי אבטחת תוכנה.
מטרות הבדיקה וההערכה בסקר טיוטת חוזה
המטרה של סקר טיוטת החוזה היא להבטיח שהפעילויות הבאות בוצעו באופן משביע רצון על ידי צוות המחלקה המשפטית:
כל ההסכמות בין הלקוח והמפתח צריכות להיות מתועדות נכון בחוזה ובנספחים לחוזה. הסכמות אלה מיועדות לפתור נושאים שלא היו ברורים וליישב חילוקי דעות בין הלקוח למפתח שהתגלו במהלך המשא ומתן לאחר הגשת ההצעה.
אין להכניס שינויים, תוספות או השמטות לטיוטת החוזה, כפי שהוסכמה בדיונים. כל השינויים, בין אם מכוונים או שאינם מכוונים, עלולים לגרום להתחייבויות בלתי צפויות ומשמעותיות מצידו של המפתח.
רשימות תיוג לסקר חוזה הן בדרך כלל כלי שימושי, המסייע לצוות הסקר לארגן את עבודתו ולהבטיח כיסוי טוב של הנושאים הרלוונטיים.
יישום סקר חוזה
נעסוק בשני נושאים:
מי מבצע את סקרי החוזה
כדי להבטיח שסקר החוזה הוא יעיל, הוא צריך להתבצע על ידי אנשים בלתי תלויים, כלומר לא על ידי חברים בצוות ההצעה. אנשי צוות סקר החוזה יכולים להיות:
ביצוע סקרי חוזה בפרויקטים גדולים
פרויקטים גדולים מתאפיינים לפחות באחד מהבאים: היקף גדול מאוד, סיבוכיות טכנית גדולה מאוד, תחום מקצועי חדש לארגון, סיבוך ארגוני רב (מספר גדול של משתתפים בפרויקט, כגון שותפים, קבלני משנה, לקוחות ועוד). כתוצאה - יישום של תהליך סקר החוזה בפרויקט גדול דורש, ברוב המקרים, השקעת מספר רב של שעות עבודה..
הקשיים בביצוע סקרי חוזה בפרויקטים גדולים
מן המוסכמות היא שסקר חוזה הוא אמצעי מצוין להקטנת הסיכוי לכישלון פרויקט. אולם קיימים קשיים מבניים בביצוע סקרי חוזה, ובמיוחד כשמדובר בפרויקטים גדולים:
צוותי סקר טיוטת הצעה נתונים, ברוב המקרים, בלחצי זמן, בגלל איחור בהשלמת הכנת טיוטת ההצעה. כתוצאה, סקר טיוטת ההצעה צריך להתבצע תוך ימים ספורים, דבר שלא מאפשר ביצוע מלא של הסקר ואיתור תיקונים דרושים בהצעה הוא חלקי בלבד.
המטרה של סקר טיוטת החוזה היא להבטיח שהטיוטה כוללת את כל התכנים הנכונים, ורק אותם, לאחר שהטיוטה נבדקת על ידי צוות המחלקה המשפטית |
המועמדים הפוטנציאליים לצוות סקר חוזה הם ברובם בכירים בארגון, שבדרך כלל הם בעלי התחייבויות קודמות שעליהם לבצע בזמן הסקר המתוכנן. גיוס מועמדים אלה הוא משימה קשה ביותר, אם לא בלתי אפשרית. כדאי להזכיר כי ביצוע סקר חוזה דורש השקעת זמן ניכר.
דרכים ליישום פרויקטים גדולים
ביצוע של סקר חוזה דורש זמן ומאמץ כדי להבטיח את השלמתו המוצלחת. המאמץ הנדרש בסקר של פרויקט גדול הוא כפול ומכופל. מומלץ לנקוט בצעדים הבאים כדי לסייע לתהליך סקר החוזה
פירוט תפקידיו של ראש צוות סקר חוזה כולל: גיוס חברי צוות הסקר, חלוקת מטלות הסקר בין חברי הצוות, תיאום בין צוות ההצעה לבין צוות הסקר, תיאום בין חברי הצוות ומעקב התקדמות עבודתם, סיכום הממצאים של הצוות, והשתתפות בדיונים עם צוות ההצעה על ממצאי סקר טיוטת ההצעה.
סקר חוזה בפרויקטים פנימיים
חלק ניכר מהפרויקטים של פיתוח תוכנה הם פרויקטים פנימיים – פרויקטים המבוצעים על ידי אחת ממחלקות הארגון עבור מחלקה אחרת בארגון.
לעיתים קרובות פרויקטים פנימיים אינם מבוססים על מערכת מלאה של יחסי ספק – לקוח. פרויקטים כאלה מבוססים על הבנה כללית לגבי מפרט דרישות כללי, כאשר הרצון הטוב הוא מרכיב מרכזי ביחסים בין שתי המחלקות, המזמינה והמפתחת. צפוי שהמחלקה מפתחת תבצע מעין "סקר חוזה זריז" או שכלל לא תבצע סקר. למרבה הצער, יחסים רופפים מתאפיינים גם בהיעדר בחינה מספקת של הגדרת הדרישות, לוח הזמנים, התקציב וסיכוני הפרויקט. כתוצאה יש לצפות לקשיים הבאים:
בהתאם ל"רשימה" הנ"ל, קל להסיק כי פרויקטים פנימיים כאלה מועדים לכישלון יותר מפרויקטים חיצוניים המתנהלים על פי חוזים. אפשר להסיק כי ניהול יחסי ספק-לקוח וחוזים המוכחים כמועילים לפרויקטים חיצוניים, יוכלו להועיל רבות גם לפרויקטים פנימיים.
המאמר לקוח מתוך פרק בספר
"הבטחת איכות תוכנה – מעקרונות ליישום"
מאת דניאל גלין,
הוצאת "הוד – עמי",
אוקטובר 2021.