چگونه کروم به‌روزرسانی‌ها را برای میلیاردها کاربر آماده می‌کند

نورا اونیل
Nora O'Neill

هر ماه، نسخه جدیدی از Chrome را منتشر می‌کنیم تا مطمئن شویم میلیاردها کاربر و کسب‌وکار جهانی ما جدیدترین ویژگی‌ها، به‌روزرسانی‌های امنیتی و ارتقای عملکرد را دریافت می‌کنند. و اکنون، ما می‌توانیم با چرخه انتشار سریع‌تر، بهبودها و مشکلات را سریع‌تر از قبل برطرف کنیم - به این معنی که جدیدترین به‌روزرسانی‌ها را حتی بیشتر دریافت خواهید کرد.

ما با مدیران برنامه فنی بن هنری، کریشنا گوویند، هری سودرز، سرینیواس سیستا، و براندون هنان در تیم انتشار کروم گپ زدیم تا ببینیم چگونه با تیم‌های Google در سراسر جهان هماهنگ می‌شوند تا اطمینان حاصل شود که هر نسخه به خوبی انجام می‌شود.

س. تیم شما چگونه برای هر نسخه Chrome آماده می شود؟

بن: اول از همه، تیم ما متشکل از هفت نفر است که تمام وقت در دو منطقه جغرافیایی بزرگ کار می کنند. ما فکر می کنیم آماده شدن برای انتشار مانند برنامه قطار است. ما از چهار کانال انتشار -Canary، Dev، Beta و Stable- برای آماده شدن برای انتشار نقطه عطف Chrome استفاده می‌کنیم. همانطور که در این فرآیند پیش می رویم، هر کانال کاربران کروم بیشتری دارد. این به ما امکان می‌دهد تا در مورد پایداری و عملکرد Chrome با هدف کشف هرچه زودتر مشکلات کیفیت محصول، بازخورد دریافت کنیم. ما به آنچه کاربران و توسعه‌دهندگان در رسانه‌های اجتماعی، مقالات مطبوعاتی و گزارش‌های باگ می‌گویند، توجه زیادی می‌کنیم تا به هر چیزی که گم می‌کنیم کمک کنیم. تیم مهندسین و مدیران محصول ما می‌توانند از این بازخورد برای بهبود ویژگی‌ها استفاده کنند.

سپس، ما چندین دور آزمایش را برای تشخیص هر گونه مشکل کیفی انجام می دهیم، ابتدا با استفاده از سیستم های خودکار که به طور مداوم اجرا می شوند، و سپس با تیم های آزمایشی که اشکالات را به صورت دستی پیدا می کنند.

س. آیا می‌توانید نمونه‌ای از بازخورد اخیر یک توسعه‌دهنده خارجی را به اشتراک بگذارید که برای اطمینان از ارسال بهترین نسخه ممکن ارزشمند بوده است؟

Srinivas: ما همیشه برای بازخورد و پذیرش زودهنگام ویژگی‌ها، مانند APIهای جدید یا تغییرات مشخصات با Chrome در iOS، به توسعه‌دهندگان وب خود متکی هستیم. با تغییر نقطه عطف اصلی خود از دو رقمی به سه رقمی (99 تا 100)، دستورالعمل‌هایی را با توسعه‌دهندگان وب به اشتراک گذاشتیم تا موارد را قبل از تغییر واقعی آزمایش کنیم تا مطمئن شویم که بازخورد آنها را لحاظ کرده‌ایم و مهم‌تر از آن، سایت‌های آنها را خراب نکرده‌ایم. این به ما کمک کرد تا با موفقیت این تغییر را بدون هیچ مشکل اساسی برای عرضه M100 اجرا کنیم.

س. اگر در حین عرضه به‌روزرسانی Chrome با یک اشکال یا مشکل امنیتی مواجه شوید، چه اتفاقی می‌افتد؟

کریشنا: ما مطمئن می شویم که به تدریج نسخه های جدید Chrome را برای کاربران عرضه می کنیم. نسخه های جدید فوراً به 100٪ کاربران منتقل نمی شوند. اگر یک باگ حیاتی پیدا کنیم، انتشار نسخه‌های آسیب‌دیده را متوقف می‌کنیم تا اثرات آن را محدود کنیم. سپس با تیم‌های Chrome در سرتاسر جهان هماهنگ می‌کنیم تا هرچه سریع‌تر و ایمن‌تر Chrome را اصلاح و وصله کنیم. پس از تأیید این اصلاح، نسخه جدیدی از Chrome می‌سازیم و فرآیند عرضه را دوباره شروع می‌کنیم. در پایان، اکثر کاربران هرگز این مشکل را تجربه نخواهند کرد زیرا قبل از اینکه نسخه برای آنها عرضه شود، رفع شده است. برای مسائل امنیتی، از خط مشی Project Zero Disclosure پیروی می کنیم. بنابراین وقتی آسیب‌پذیری‌هایی وجود دارد که به طور فعال در طبیعت مورد سوء استفاده قرار می‌گیرند، هدف ما این است که آن را در عرض هفت روز برای کاربران کانال پایدار خود منتشر کنیم.

س. آیا کار دیگری برای اطمینان از آماده بودن نسخه های Chrome برای کسب و کارها انجام می شود؟

براندون: یکی از اهداف اصلی ما این است که اطمینان حاصل کنیم که Chrome یک پلت فرم پایدار و قابل اعتماد برای بسیاری از مشاغلی است که به ما وابسته هستند. این بدان معناست که کسب‌وکارها به بهترین و جدیدترین عملکردی که می‌خواهند افرادشان از آن استفاده کنند دسترسی داشته باشند، در حالی که به آنها کمک می‌کند از هرگونه اختلال احتمالی در کارشان جلوگیری کنند. از آنجایی که نیازهای کسب و کار منحصر به فرد است و هرگونه خرابی می تواند به یک شرکت آسیب برساند، Chrome برای تیم های مهندسی و محصول ما راهنمایی خاصی دارد و ما هر یک از ویژگی های راه اندازی شده را بررسی می کنیم تا اطمینان حاصل کنیم که هر نسخه Chrome «سازمان پسند» است. این شامل اطلاع رسانی به شرکت‌ها برای تغییرات مهم در یادداشت‌های انتشار Chrome Enterprise ما می‌شود. و برای آرامش بیشتر، مدیران فناوری اطلاعات می توانند بسیاری از تغییرات را با یک خط مشی سازمانی کنترل کنند. بنابراین، اگر آنها ترجیح می دهند آزمایش داخلی انجام دهند یا از یک ویژگی جدید انصراف دهند، می توانند این کار را انجام دهند. برای جلوگیری از مشکلات غیرمنتظره، ما یک زیرساخت آزمایشی اختصاصی داریم که برای شبیه‌سازی محیط‌های سازمانی (مثلاً اجرای Chrome در دستگاه‌های متصل به دامنه Active Directory) طراحی شده است که برای آزمایش همه نسخه‌های Chrome استفاده می‌کنیم.

Chrome همچنین طیف وسیعی از کنترل‌های به‌روزرسانی را برای مدارس و مشاغل فراهم می‌کند. سرپرست‌ها می‌توانند نسخه خاص Chrome را کنترل کنند، به نسخه‌های قدیمی‌تر برگردند، و از کانال انتشار پایدار توسعه‌یافته ما که کاملاً پشتیبانی می‌شود، استفاده کنند. شما می توانید در مورد جزئیات در این سند فنی بخوانید. سرپرست‌هایی که می‌خواهند وضعیت به‌روزرسانی ناوگان خود را کاملاً مشاهده کنند، می‌توانند از گزارش نسخه موجود در مدیریت ابر مرورگر Chrome استفاده کنند.

س. آیا تیم شما به دنبال ایجاد تغییراتی در آینده است؟

هری: ما همیشه به دنبال راه‌هایی برای بهبود Chrome برای کاربران و توسعه‌دهندگان خود هستیم، به‌ویژه وقتی نوبت به کوتاه کردن چرخه انتشار می‌رسد. با انجام این کار، کاربران کروم پایدارتری را با رفع سریعتر اشکالات و ویژگی های جدید مشاهده خواهند کرد. ما همچنین می دانیم که مهندسان و مدیران محصول ما از افزایش سرعت توسعه به دلیل توسعه سریعتر ویژگی ها، چرخه های تکرار سریعتر و افزایش سلامت کد سود می برند. فرض کنید یک مدیر محصول می خواهد یک ویژگی را برای همه کاربران کروم راه اندازی کند. از زمانی که این ویژگی "انجام شد" تا زمانی که به طور کلی در دسترس است، ممکن است تا 16 هفته طول بکشد. با کوتاه کردن چرخه انتشار تنها به مدت چند هفته، می‌توانیم زمان ارائه یک ویژگی جدید را به میزان قابل توجهی کاهش دهیم.