איך Chrome מכין עדכונים למיליארדי משתמשים

Nora O'Neill
Nora O'Neill

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

שוחחנו עם מנהלי התוכניות הטכניות בן הנרי (Ben Henry), קרישנה גופווינד (Krishna Govind), הארי סאודרס (Harry Souders), סרינאווה סיסטה (Srinivas Sista) וברנדון הינן (Brandon Heenan) מצוות ההשקות של Chrome, כדי לקבל הצצה פנימית לאופן שבו הם מתואמים עם צוותי Google ברחבי העולם כדי להבטיח שכל השקה תתבצע בצורה חלקה.

שאלה: איך הצוות שלך מתכונן לכל גרסה של Chrome?

בן: קודם כול, הצוות שלנו מורכב משבעה אנשים שעובדים במשרה מלאה בשתי אזורים גיאוגרפיים מרכזיים. אנחנו רואים בהכנה להשקה כמו לוח זמנים של רכבת. אנחנו משתמשים בארבעה ערוצי הפצה – Canary,‏ Dev,‏ Beta ו-Stable – כדי להתכונן להשקה של Chrome. ככל שנתקדם בתהליך, כך יהיו יותר משתמשים ב-Chrome בכל ערוץ. כך אנחנו יכולים לקבל משוב על היציבות והביצועים של Chrome, במטרה לזהות בעיות איכות במוצר מוקדם ככל האפשר. אנחנו מקשיבים בקפידה למה שמשתמשים ומפתחים אומרים ברשתות החברתיות, בכתבות בעיתונות ובדיווחים על באגים, כדי לזהות בעיות שפספסנו. לאחר מכן, צוות מהנדסי התוכנה ומנהלי המוצרים שלנו יוכל להשתמש במשוב הזה כדי לשפר את התכונות.

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

שאלה: יש לך דוגמה למשוב שהתקבל לאחרונה ממפתח חיצוני, שסייע לך לוודא שהגרסה ששוחררה היא הטובה ביותר?

Srinivas: אנחנו תמיד מסתמכים על מפתחי האינטרנט שלנו כדי לקבל משוב ולהתחיל להשתמש בתכונות חדשות, כמו ממשקי API חדשים או שינויים במפרט של Chrome ב-iOS. כשביצענו את השינוי המשמעותי של ציון הדרך מ-2 ספרות ל-3 ספרות (מ-99 ל-100), שיתפנו הנחיות עם מפתחי אתרים כדי לבדוק את הדברים לפני השינוי בפועל, כדי לוודא ששילבנו את המשוב שלהם, וחשוב יותר, שלא פגמנו באתרים שלהם. כך הצלחנו להשיק את השינוי ללא בעיות משמעותיות בהשקה של M100.

שאלה: מה קורה אם מזהים באג או בעיית אבטחה במהלך ההשקה של עדכון ל-Chrome?

קרישנה: אנחנו מקפידים להשיק גרסאות חדשות של Chrome למשתמשים בהדרגה. הגרסאות החדשות לא מועברות באופן מיידי ל-100% מהמשתמשים. אם נמצא באג קריטי, נפסיק את ההשקה של הגרסאות המושפעות כדי להגביל את ההשפעות שלו. לאחר מכן אנחנו מתאמים פעולות עם צוותי Chrome ברחבי העולם כדי לפתח תיקון ולתקן את Chrome במהירות ובבטחה האפשריות. אחרי שנאמת את התיקון, נבנה גרסה חדשה של Chrome ונתחיל שוב את תהליך ההשקה. בסופו של דבר, רוב המשתמשים אף פעם לא ייתקלו בבעיה כי היא תטופל לפני שהגרסה תושק להם. לגבי בעיות אבטחה, אנחנו פועלים בהתאם למדיניות של Project Zero Disclosure. לכן, כשיש נקודות חולשה שמנוצלות באופן פעיל בעולם האמיתי, המטרה שלנו היא להשיק את התיקון למשתמשים בערוץ היציב תוך שבעה ימים.

שאלה: האם יש עבודה נוספת שנדרשת כדי לוודא שהגרסאות של Chrome מוכנות לעסקים?

ברנדון: אחד מהיעדים העיקריים שלנו הוא להבטיח ש-Chrome יישאר פלטפורמה יציבה ואמינה לעסקים הרבים שתלויים בנו. כלומר, אנחנו מעניקים לעסקים גישה לפונקציונליות הטובה והעדכנית ביותר שהם רוצים שהעובדים שלהם ייהנו ממנה, תוך עזרה להם להימנע מהפרעות פוטנציאליות בעבודה. הצרכים העסקיים ייחודיים וכל זמן השבתה יכול לפגוע בארגון, לכן יש ל-Chrome הנחיות ספציפיות לצוותים שלנו של מהנדסים ומוצרים, ואנחנו בודקים כל השקה של תכונה כדי לוודא שכל גרסה של Chrome 'תואמת לארגונים'. אנחנו גם מספקים ללקוחות שלנו התראה על שינויים חשובים בנתוני הגרסה של Chrome Enterprise. כדי להוסיף ביטחון, אדמינים ב-IT יכולים לשלוט בשינויים רבים באמצעות מדיניות ארגונית. כך, אם הם מעדיפים לבצע בדיקות פנימיות או לבטל את ההשתתפות בתכונה חדשה, הם יכולים לעשות זאת. כדי למנוע בעיות בלתי צפויות, יש לנו תשתית בדיקה ייעודית שמיועדת לסימולציה של סביבות ארגוניות (לדוגמה, הפעלת Chrome במכשירים שמצורפים לדומיין Active Directory), שבה אנחנו משתמשים כדי לבדוק את כל הגרסאות של Chrome.

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

שאלה: האם הצוות שלך מתכנן לבצע שינויים כלשהם בעתיד?

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