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

1 (1)

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

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

הרכיבו את הצוות הנכון

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

הגדירו את היקף הפרויקט

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

הגדירו מועדים ואבני דרך קריטיות

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

קבעו יעדים אישיים וצוותיים

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

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

קבעו את הטון של הפרויקט כבר בהתחלה

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

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

תקשרו עם הצוות לעיתים קרובות

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

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

ודאו כי כל פגישה תהיה משמעותית

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

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

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

אספו דרישות ולאחר מכן תנו לצוות לעבוד

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

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

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

לשיתוף

אולי יעניין אותך גם

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

השאירו פרטים ונשמח לשוב אליכם בהקדם האפשרי.