תיעוד

משימות, תוכניות, ספרינטים ונתיבי עבודה

ארבע הדרכים שבהן העבודה מאורגנת ב-Coroid, ומתי כדאי להשתמש בכל אחת מהן.

Coroid מכיל ארבע יחידות עבודה. הן מתנשאות זו על גבי זו, ובחירת היחידה הנכונה תלויה בעיקר בגודל העבודה ובכמותה שצריכה להתבצע בו-זמנית.

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

משימה

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

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

תוכנית

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

השתמשו בתוכנית כאשר:

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

אישור התוכנית הוא נקודת ההתערבות הזולה ביותר במערכת. דחיית גישה כזו עולה דקה אחת; דחייה לאחר ששלוש משימות כבר רצו עולה על שלושה ריצות.

כיצד תוכנית מגיעה למאגר הקוד שלכם

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

task branch ─┐
task branch ─┼─► lane branch ─► one pull request ─► main
task branch ─┘

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

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

ספרינט

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

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

מסלול

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

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

בחירה

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

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

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

מה מגביל את היקף הריצה בו-זמנית

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