נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול…

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול…

כשבונים לוח זמנים לפרויקט, השאלה הראשונה שנשאלת היא: נו… ומה הנתיב הקריטי שלי?

נתיב קריטי Ms Project

כדי לענות על השאלה הזו "מי הנתיב הקריטי ב- MS Project?" יש ללחוץ בתפריט "תצוגה", ב'מסנן' ולבחור ב"קריטי". על המסך תהיה רשימת הפעילויות המחושבות כקריטיות ב- MS-Project, לפי שיטת CPM.

מה זה בעצם נתיב קריטי בפרויקט?

אבל… בואו נבין מה עומד מאחורי צמד המלים: נתיב קריטי. 
יש שתי שיטות שונות למציאת הנתיב הקריטי, וליתר דיוק, בשתיהן יש נתיב שנקרא 'הנתיב הקריטי' אבל הוא לא בהכרח זהה.
שיטה אחת נקראת CPM – Critical Path Method – שיטת הנתיב הקריטי.

השיטה השניה נקראת HCP – Hidden Critical Path – נתיבים קריטיים נסתרים.
כדי להסביר את המונחים, הדרך הקלה ביותר היא להדגים על רשת פרויקט (פשוטה מאד). 

נניח שיש לנו פרויקט קטנטן, נקרא לו 'פרויקטון', שיש בו 6 פעילויות לביצוע. לכל פעילות ניתן שם (מקורי, לפי הא'-ב') ומשך צפוי בימים:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

לפעילויות האלו נוסיף שתי אבני דרך. אבני דרך מסמלות התחלה או סיום ולכן המשך שלהן הוא 0. נמספר את השורות ונקבל:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

לכל פעילות, יש פעילויות מקדימות (כלומר, אלו שבאות לפניה) ופעילויות עוקבות (כלומר, אלו שיכולות להתבצע אחריה). נכתוב את הקדימויות המגדירות את ה'פרויקטון' שלנו, לפי מספרי השורות (המספר המזהה):

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

נניח שנתחיל את פרויקטון ביום ראשון. הנחה סבירה תהיה שימי שישי-שבת אינם ימי עבודה. כשנבנה את הרשת, בגאנט, היא תראה כך:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

ועכשיו, כשסיימנו להכין את האביזרים, נלך לתכל'ס!

CPM ו- נתיב קריטי לפי CPM

שיטת CPM פותחה בשנות ה- 50 של המאה הקודמת (להיסטוריה ראו את הערך בויקיפדיה באנגלית).

כדי למצוא את הנתיב הקריטי לפי CPM יש לבנות את רשת הפרויקט ואז לבצע 3 חישובים, לפי הסדר הזה:
חישוב קדמי
חישוב אחורי
חישוב המרווח הכולל, הנקרא באנגלית Total Slack או Total Float

אזהרה: התצוגה המתמטית נראית מסובכת, אבל נא לא להתרגש ממנה. ההסבר במלים הרבה יותר פשוט…

חישוב קדמי – בחישוב הקדמי אנחנו מחפשים את הזמנים המוקדמים ביותר לכל פעילות.

הגדרת המשתנים

  • Early Start – ES , התחלה מוקדמת
  • Early Finish – EF, סיום מוקדם
  • k – הפעילות אותה אנחנו בוחנים
  • j – הפעילות המקדימה (predecessor) ל- k
    L(k) – משך הפעילות k

ES(start)=0=EF(start)
ES(k)=MAX{EF(j)|j" is the predecessor of k" }
EF(k)=ES(k)+L(k)

מתחילים מנקודת ההתחלה של הפרויקט, מגדירים אותה כזמן '0', ולפי הקשרים בין הפעילויות (קדימויות) ומשכי הפעילויות מגדירים את הזמנים המוקדמים לביצוע כל פעילות בפרויקט.

בדוגמת פרויקטון, אם נניח כי הפרויקט מתחיל ב- 01 לספטמבר, והוא גם יום ראשון, נקבל בחישוב הקדמי את התאריכים האלו:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון


חישוב אחורי – בחישוב האחורי אנחנו מחפשים את הזמנים המאוחרים ביותר לכל פעילות.

הגדרת המשתנים

  • LS – Late Start, התחלה מאוחרת
  • LF – Late Finish, סיום מאוחר
  • k – הפעילות אותה אנחנו בוחנים
  • j – הפעילות העוקבת (successor) ל- k
    L(k) – משך הפעילות k

LF(end)=EF(end)
LF(k)=MIN{LS(j)|j" is the successor of k" }
LS(k)=LF(k)-L(k)

מתחילים מנקודת הסיום של הפרויקט, שהתקבלה בחישוב הקדמי, ולפי הקשרים בין הפעילויות (קדימויות) ומשכי הפעילויות מגדירים את הזמנים המאוחרים לביצוע כל פעילות בפרויקט.

בדוגמת פרויקטון, מצאנו כי בחישוב הקדמי הפרויקט מסתיים ב- 12/09 (סוף יום חמישי). בחישוב האחורי נקבל את התאריכים האלו:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

חישוב המרווח הכולל, הנקרא באנגלית Total Slack (בתוכנת Project) או Total Float (בתוכנת Primavera) עונה על השאלה הבאה:
בכמה ימים ניתן לדחות (או להאריך) את הפעילות בתנאי שסיום הפרויקט לא ידחה?
החישוב הינו חישוב פשוט – לכל פעילות יש לחשב את ההפרש בין ההתחלה המאוחרת שלה להתחלה המוקדמת שלה.
הנוסחה תהיה: TS(k)=LS(k)-ES(k)
באותו האופן אפשר לחשב לפי הסיומים – התוצאה תהיה זהה.
ועכשיו – לנתיב הקריטי לפי CPM – הנתיב הקריטי יהיה רצף הפעילויות אשר המרווח הכולל שלהן הוא 0.
בפרויקטון יהיה מדובר ב:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

כלומר לפעילויות "התחלה", "א", "ג", "ו", "סיום" המרווח הכולל הוא 0 ולכן הן מרכיבות את הנתיב הקריטי.

כשצובעים ברשת הפרויקט את הפעילויות הקריטיות עם מרווח כולל 0 באדום ושאר הפעילויות נותרות בכחול, התוצאה תהיה כזו:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

כלומר לפעילויות "התחלה", "א", "ג", "ו", "סיום" המרווח הכולל הוא 0 ולכן הן מרכיבות את הנתיב הקריטי.

שאלה: האם הנתיב הארוך ביותר ברשת הוא תמיד ה- נתיב קריטי לפי CPM?

התשובה תלויה איפה אתם נמצאים –

אם אתם נמצאים באוניברסיטה, ובתרגיל שלפניכם אין השהיה בין פעילויות ואין אילוצי תאריכים (דברים הקורים במציאות, אבל לא קורים בתרגילים) אז התשובה היא: כן! 

אבל… אם אתם עובדים על פרויקט אמיתי, אז, למשל, אם בין פעילות ד ל- ה תהיה השהיה בת 2 ימים בלבד, התוצאה תהיה:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

כלומר, הנתיב הקריטי השתנה לפעילויות "התחלה", "ד", "ה", "ו", "סיום" – ואז הנתיב הארוך ביותר הוא לא הנתיב הקריטי! 😮 

הנתונים יראו כך:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

ומה יקרה אם לא תהיה השהיה, אבל יהיה אילוץ, על פעילות ב', לפיו לא ניתן יהיה להתחיל את הפעילות הזו לפני 08/09, אז נקבל:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

כלומר, הנתיב הקריטי הוא לא הנתיב הארוך ביותר בכלל!! הוא מורכב רק מפעילויות "ב", "ג", "ו", "סיום". 🤔

הנתונים יראו כך:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

ולא דיברתי בכלל על קשרי התחלה להתחלה או סיום לסיום ועל תאריכי יעד, אשר גורמים לשינויים בחישובי המרווח הכולל ובכך יכולים גם לשנות את הנתיב הקריטי מקצה לקצה.

ומה קורה בשיטת HCP?

HCP ו- נתיב קריטי לפי HCP

שיטת HCP פותחה על-ידי טל לבנון בתחילת שנות ה- 2000. (למשפט בויקיפדיה ראו את הערך בויקיפדיה בעברית, בכלים נפוצים לניהול פרויקטים ).

שיטת HCP אדישה לאילוצים, השהיות, קשרי התחלה להתחלה או סיום לסיום ולתאריכי יעד. כל מה ש"מעניין" את שיטת HCP – הוא: רשת הקשרים בין הפעילויות.

שיטת HCP ממפה את רשת הפעילויות לפי נתיבים. למשל, אם נתחיל בפרויקטון בפעילות "התחלה" ניתן להמשיך משם או לפעילות "א" או ל- "ב" או ל- "ד". מכל אחת ממשיכים הלאה – עד למיפוי הפרויקט.

הנתיב הקריטי לפי HCP מוגדר כנתיב הארוך ביותר ברשת הפרויקט.

לכל נתיב אחר, i, יהיה מרווח משך הנתיב, DSi, (DS – Duration Slack) שערכו יהיה ההפרש בין משך הנתיב הארוך ביותר למשך הנתיב i.

כלומר, בפרויקטון, במיפוי HCP ימצאו 3 נתיבים:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון


הארוך ביותר יהיה משכו 10 ימי עבודה, ולכן לאחרים שמשכם 9 ימים ו- 7 ימים יהיה מרווח המשך 1 יום ו- 3 ימים בהתאמה – והם יהיו נתיבים קריטיים נסתרים.

בגאנט, כל פעילות שמשתתפת באחד מנתיבי ה- HCP מסומנת בכוכבית סגולה כך:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

והנתונים יראו כך:

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

חדי העין שבינכם (ואם הגעתם עד לכאן, אתם בטוח נכללים בבעלי יכולת התמדה ובחדות עיניים! 😉), יגידו – אבל, היי, אין הבדל בין המרווח הכולל למרווח ה- HCP! אז… מה זה שווה?! 🤔

אתם צודקים! אם החיים היו תרגיל באוניברסיטה – אזי ה- HCP היה תרגיל ותו לא!

אבל… כידוע, החיים מכילים השהיות, אילוצים, קשרי התחלה להתחלה וסיום סיום ותאריכי יעד… אז, למשל, כאשר נוסיף את ההשהיה בין פעילות ד ל- ה, הנתיב הקריטי לפי CPM ישתנה לגמרי, ומה יקרה ל- HCP?

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

המ… לא קרה כלום. 😀

רגע, ומה יקרה כאשר נוסיף אילוץ?

נתיב קריטי ונתיב קריטי נסתר – כל מה ש(כמעט) רצית לדעת ולא ידעת לשאול...טל לבנון

ה- HCP לא משתנה… 

מה זה אומר? ה- HCP אדיש ל"משחקים" בלו"ז – כך שאם שינוי קטן בין הפעילויות גורם לנתיב הקריטי לפי CPM להתחלף ולהשתנות – על ה- HCP זה לא משפיע: הנתיב הארוך ביותר לא משתנה. 

שימו לב, שאם גורם בפרויקט רוצה להרחיק תשומת לב מפעילויות מסוימות, עם CPM – אפשר לעשות זאת בקלות. לעומת זאת, ב – HCP קשה מאד "להעלים" פעילויות מתשומת הלב של כל המשתתפים בפרויקט. 

שאלה: איך אני יכול לדעת את כל הכללים הטכניים? האם אין משהו שבודק את "הדברים הטכניים" בשבילי?
תשובה: יש היום את HCP Go – התוסף ל- Project של HCP: בלחיצת כפתור תוכלו לנתח את קובץ לוחות הזמנים שלכם – ותקבלו דוח חינמי עם התוצאות!

מה זה אומר? במלים אחרות – נסכם:

• הנתיב הקריטי לפי CPM הינו רצף הפעילויות אשר המרווח הכולל שלהן הוא 0.
• הנתיב הקריטי לפי HCP הוא רצף הפעילויות היוצרות את הנתיב אשר המשך שלו הוא הארוך ביותר ברשת.
• הנתיב הקריטי לפי CPM רגיש מאד ומשתנה אם יש אילוצים, השהיות וגם לקשרי התחלה להתחלה וסיום לסיום ולתאריכי יעד. (הערה: שלושת האחרונים לא הודגמו מפאת אורכו של הבלוג, אבל הי… תמיד יש מקום לבלוג נוסף!! 😉)
• הנתיב הקריטי לפי HCP אדיש לגמרי ואינו משתנה אם יש אילוצים, השהיות, קשרי התחלה להתחלה ו/או סיום לסיום ותאריכי יעד.
• במצב בו אין אילוצים, השהיות, קשרי התחלה להתחלה ו/או סיום לסיום ותאריכי יעד – CPM ו- HCP יראו את אותו הנתיב הקריטי!

מסקנה: השיטות CPM ו- HCP אינן מוציאות זו את זו (כלומר, הן לא מבטלות זו את זה) אלא הן משלימות זו את זו!
במלים אחרות – אם אתם מנהלים פרויקט או שכתבתם לו"ז או קיבלתם לו"ז ממישהו אחר – המידע שתקבלו רק מ- CPM יהיה חלקי, והמידע שתקבלו רק מ- HCP יהיה חלקי, אבל מידע משתיהן יאפשר לכם להבין את הפרויקט הרבה יותר טוב ולנהל אותו הרבה יותר טוב!

רגע… רגע… ומה לגבי הנתיבים הקריטים הנסתרים? וכמה נתיבים כאלו יש בפרויקט? ואיזה נתיבים קריטיים נסתרים האפליקציה מוצאת? על כל זאת ועוד בבלוג אחר. ואם תרצו לנסות בעצמכם – תורידו את אפליקציית HCP Go ל- Project שלכם ו… Run Analysis! 😊

אהבת את מה שקראת?
יש אנשים שאכפת לך מהם? זה הזמן לשתף! 

Share on facebook
Share on linkedin
Share on whatsapp

רוצה לשאול משהו או להגיב?
בכיף! פה, בתגובות.
רוצה לומר רק לי משהו? יש לציין זאת בתחילת התגובה והתגובה לא תפורסם.

כתיבת תגובה