Cách Chrome chuẩn bị bản cập nhật cho hàng tỷ người dùng

Nora O'Neill sản xuất
Nora O'Neill

Mỗi tháng, chúng tôi phát hành một phiên bản Chrome mới để đảm bảo hàng tỷ người dùng và doanh nghiệp trên toàn cầu nhận được các tính năng, bản cập nhật bảo mật và nâng cấp hiệu suất mới nhất. Giờ đây, chúng tôi có thể cải thiện và khắc phục vấn đề nhanh hơn bao giờ hết nhờ chu kỳ phát hành nhanh hơn. Điều này có nghĩa là bạn sẽ nhận được các bản cập nhật mới nhất thường xuyên hơn.

Chúng tôi đã trò chuyện với các Giám đốc chương trình kỹ thuật Ben Henry, Krishna Govind, Harry Souders, Srinivas Sista và Brandon Heenan trong nhóm phát hành Chrome để tìm hiểu chi tiết về cách họ phối hợp với các nhóm Google trên khắp thế giới nhằm đảm bảo từng bản phát hành diễn ra suôn sẻ.

Câu hỏi: Nhóm của bạn chuẩn bị như thế nào cho mỗi bản phát hành Chrome?

Ben: Trước tiên, nhóm chúng tôi gồm bảy người làm việc toàn thời gian ở hai khu vực địa lý chính. Chúng tôi nghĩ rằng việc chuẩn bị cho bản phát hành giống như lịch trình lên một chuyến tàu. Chúng tôi sử dụng 4 kênh phát hành là Canary, Dev, Beta và Stable, để chuẩn bị cho một bản phát hành quan trọng của Chrome. Khi chúng ta chuyển qua quá trình này, mỗi kênh có thêm người dùng Chrome. Việc này cho phép chúng tôi có được ý kiến phản hồi về độ ổn định và hiệu suất của Chrome với mục tiêu phát hiện các vấn đề về chất lượng trong sản phẩm càng sớm càng tốt. Chúng tôi cũng chú ý đến những ý kiến phản hồi của người dùng và nhà phát triển trên mạng xã hội, các bài báo và báo cáo lỗi để giúp tìm ra những điều chúng tôi còn thiếu. Sau đó, nhóm kỹ sư và nhà quản lý sản phẩm của chúng tôi có thể sử dụng phản hồi này để cải thiện tính năng.

Sau đó, chúng tôi thực hiện nhiều vòng kiểm thử để phát hiện các vấn đề về chất lượng. Trước tiên, chúng tôi sử dụng các hệ thống tự động chạy liên tục, sau đó là các nhóm kiểm thử tìm lỗi theo cách thủ công.

Câu hỏi: Bạn có thể chia sẻ ví dụ gần đây về ý kiến phản hồi hữu ích của một nhà phát triển bên ngoài trong việc đảm bảo bạn đã cung cấp phiên bản tốt nhất có thể không?

Srinivas: Chúng tôi luôn dựa vào các nhà phát triển web để thu thập ý kiến phản hồi và sớm sử dụng các tính năng, chẳng hạn như API mới hoặc các thay đổi về thông số kỹ thuật của Chrome trên iOS. Với việc thay đổi cột mốc lớn từ hai chữ số thành ba chữ số (99 thành 100), chúng tôi đã chia sẻ hướng dẫn với các nhà phát triển web để thử nghiệm mọi thứ trước khi thay đổi thực tế để đảm bảo chúng tôi kết hợp phản hồi của họ và quan trọng hơn là không phá vỡ trang web của họ. Việc này đã giúp chúng tôi triển khai thay đổi thành công mà không gặp vấn đề lớn nào đối với M100.

Câu hỏi: Điều gì xảy ra nếu bạn gặp lỗi hoặc vấn đề bảo mật trong quá trình ra mắt bản cập nhật Chrome?

Krishna: Chúng tôi đảm bảo sẽ từng bước ra mắt bản phát hành Chrome mới cho người dùng. Các bản phát hành mới không được cung cấp ngay lập tức cho 100% người dùng. Nếu phát hiện lỗi nghiêm trọng, chúng tôi sẽ tạm dừng ra mắt phiên bản bị ảnh hưởng để hạn chế ảnh hưởng của lỗi đó. Sau đó, chúng tôi phối hợp với các nhóm Chrome trên khắp thế giới để phát triển bản sửa lỗi và bản vá Chrome nhanh nhất có thể và an toàn nhất có thể. Sau khi bản sửa lỗi này được xác minh, chúng tôi sẽ tạo một phiên bản Chrome mới và bắt đầu lại quy trình triển khai. Rốt cuộc, hầu hết người dùng sẽ không bao giờ gặp phải vấn đề này vì vấn đề này đã được khắc phục trước khi bản phát hành được ra mắt cho họ. Đối với các vấn đề bảo mật, chúng tôi tuân thủ chính sách về việc Tiết lộ thông tin về Project Zero. Vì vậy, khi các lỗ hổng bảo mật đang bị lợi dụng ngoài tự nhiên, chúng tôi đặt ra mục tiêu phát hành bản sửa lỗi đó cho người dùng trên các kênh chính thức của mình trong vòng 7 ngày.

Câu hỏi: Có cần thực hiện thêm bước nào khác để đảm bảo các bản phát hành của Chrome phù hợp với doanh nghiệp không?

Brandon: Một trong những mục tiêu hàng đầu của chúng tôi là đảm bảo rằng Chrome vẫn là một nền tảng ổn định, đáng tin cậy cho nhiều doanh nghiệp tin tưởng vào chúng tôi. Điều đó có nghĩa là doanh nghiệp có thể tiếp cận chức năng tốt nhất và mới nhất mà họ muốn nhân viên của mình khai thác, đồng thời giúp họ tránh mọi sự gián đoạn có thể xảy ra đối với công việc của họ. Do nhu cầu của doanh nghiệp là duy nhất và bất kỳ thời gian ngừng hoạt động nào đều có thể ảnh hưởng đến doanh nghiệp nên Chrome có hướng dẫn cụ thể cho các nhóm kỹ thuật và sản phẩm của chúng tôi. Chúng tôi cũng xem xét từng lần ra mắt tính năng để đảm bảo rằng mọi bản phát hành của Chrome đều "thân thiện với doanh nghiệp". Điều này bao gồm việc thông báo cho các công ty về những thay đổi quan trọng trong Ghi chú phát hành Chrome Enterprise của chúng tôi. Ngoài ra, để yên tâm hơn, quản trị viên CNTT có thể kiểm soát nhiều thay đổi bằng một chính sách dành cho doanh nghiệp. Vì vậy, nếu muốn thử nghiệm nội bộ hoặc chọn không sử dụng một tính năng mới, họ có thể làm như vậy. Để ngăn chặn các vấn đề không mong muốn, chúng tôi có cơ sở hạ tầng thử nghiệm chuyên biệt được thiết kế để mô phỏng môi trường doanh nghiệp (ví dụ: chạy Chrome trên các thiết bị tham gia miền Active Directory) mà chúng tôi dùng để thử nghiệm tất cả bản phát hành Chrome.

Chrome cũng cung cấp nhiều biện pháp kiểm soát việc cập nhật cho trường học và doanh nghiệp. Quản trị viên có thể kiểm soát phiên bản cụ thể của Chrome, khôi phục về các phiên bản cũ hơn và tận dụng kênh phát hành ổn định mở rộng được hỗ trợ đầy đủ của chúng tôi. Bạn có thể đọc thông tin chi tiết trong tài liệu kỹ thuật này. Nếu muốn nắm được đầy đủ trạng thái cập nhật của nhóm thiết bị, quản trị viên có thể dùng Báo cáo phiên bản trong phần Quản lý trình duyệt Chrome qua đám mây.

Câu hỏi: Nhóm của bạn có muốn thực hiện thay đổi nào trong tương lai không?

Harry: Chúng tôi luôn tìm cách cải thiện Chrome cho người dùng và nhà phát triển, đặc biệt là đối với việc rút ngắn chu kỳ phát hành. Qua đó, người dùng sẽ thấy Chrome ổn định hơn với các tính năng mới và bản sửa lỗi nhanh hơn. Chúng tôi cũng biết rằng các kỹ sư và nhà quản lý sản phẩm của mình được hưởng lợi từ việc đẩy nhanh tốc độ phát triển nhờ việc phát triển tính năng nhanh hơn, chu kỳ lặp lại nhanh hơn và độ ổn định của mã tăng lên. Giả sử một người quản lý sản phẩm muốn ra mắt một tính năng cho tất cả người dùng Chrome. Có thể mất tới 16 tuần kể từ khi tính năng "hoàn tất" cho đến khi tính năng này được phát hành rộng rãi. Bằng cách rút ngắn chu kỳ phát hành chỉ vài tuần, chúng ta có thể giảm đáng kể thời gian chuẩn bị ra mắt một tính năng mới.