TFS – כלי לניהול קוד במערכות מבוזרות; חלק ב'

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

תולדות חיי הבאג. עיבוד מחשב: BigStock

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

הפעם אסקור את נושא הבילדים.

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

ניתן לתזמן את השרת לבצע את הבילד בשעה מסוימת. אם לא מתזמנים אותו – שעת ברירת המחדל היא בכל יום ב-03:00. מומלץ להשתמש באפשרות זו ברמה יומית לצורך בקרה ובדיקות.

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

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

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

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

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

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

הכותב הינו מומחה DevOps בעולמות מיקרוסופט בחטיבת הבדיקות של נס (V-ness).

תגובות

(0)

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

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

אירועים קרובים