DevOps là gì?

Đã hoàn thành

Sự rút gọn của "Dev" và "Ops" đề cập đến việc thay thế các nhóm Phát triển và Vận hành bị tách biệt. Ý tưởng là tạo ra các nhóm đa ngành làm việc cùng nhau với các phương pháp, công cụ và trách nhiệm giải trình được chia sẻ về kết quả. Các phương pháp DevOps thiết yếu bao gồm lập kế hoạch linh hoạt, tích hợp liên tục, phân phối liên tục và giám sát toàn diện các ứng dụng. DevOps là một hành trình cải tiến liên tục, không phải là đích đến.

Giá trị kinh doanh của DevOps

Các tổ chức triển khai các phương pháp DevOps thường thấy những cải tiến có thể đo lường được trên các chỉ số hoạt động chính:

  • Tần suất triển khai: Tăng từ phát hành không thường xuyên lên triển khai thường xuyên, có thể dự đoán được
  • Thời gian giao hàng: Giảm từ chu kỳ phát triển kéo dài sang khung thời gian giao hàng ngắn hơn
  • Thời gian khôi phục trung bình (MTTR): Giải quyết sự cố và khôi phục hệ thống nhanh hơn
  • Tỷ lệ thất bại thay đổi: Ít vấn đề sản xuất hơn do kiểm tra và tự động hóa được cải thiện

Lợi ích mong đợi bao gồm:

  • Giảm thời gian đưa ra thị trường cho các tính năng mới
  • Giảm sự cố liên quan đến triển khai
  • Cải thiện năng suất và sự hài lòng của nhà phát triển
  • Giảm chi phí vận hành thông qua tự động hóa

Sơ đồ hiển thị chu trình DevOps với các giai đoạn lập kế hoạch, xây dựng, tích hợp, triển khai, vận hành và phản hồi trong một vòng lặp liên tục.

Hiểu và tính toán thời gian chu kỳ của bạn

Hãy bắt đầu với một khái niệm cơ bản về phát triển phần mềm bằng cách sử dụng vòng lặp OODA (Quan sát, Định hướng, Quyết định, Hành động). Ban đầu được thiết kế để giữ cho các phi công chiến đấu không bị bắn ra khỏi bầu trời, vòng lặp OODA là một khuôn khổ tuyệt vời để đi trước các đối thủ cạnh tranh của bạn trong thế giới kinh doanh.

Vòng lặp OODA trong thực tế:

  • Quan sát: Theo dõi các chỉ số kinh doanh, xu hướng thị trường, hành vi người dùng và dữ liệu đo từ xa
  • Định hướng: Phân tích các tùy chọn cho những gì bạn có thể cung cấp, có thể thông qua các thử nghiệm
  • Quyết định: Xác định những gì cần theo đuổi dựa trên dữ liệu và các ưu tiên kinh doanh
  • Hành động: Cung cấp phần mềm hoạt động cho người dùng thực và thu thập phản hồi

Bài tập tính toán thời gian chu kỳ: Hãy nghĩ về quá trình phát triển hiện tại của bạn. Mất bao lâu để từ:

  • Cam kết mã → triển khai Production?
  • Yêu cầu tính năng → phản hồi của khách hàng?
  • Báo cáo lỗi → Sửa lỗi trong sản xuất?

Ví dụ: Nếu mất 2 tuần để triển khai thay đổi cấu hình một dòng, thì thời gian chu kỳ của bạn là 2 tuần. Điều này trở thành hạn chế vận tốc của bạn.

Sơ đồ hiển thị chu kỳ vòng lặp OODA với các giai đoạn Quan sát, Định hướng, Quyết định và Hành động được kết nối theo mô hình tròn, nhấn mạnh sự lặp lại liên tục.

Trở thành thông tin dữ liệu, không dựa trên dữ liệu

Chúng tôi khuyên bạn nên sử dụng dữ liệu để đưa ra quyết định trong chu kỳ tiếp theo của bạn, nhưng tránh bị tê liệt bởi phân tích. Kinh nghiệm từ nhiều tổ chức cho thấy việc triển khai thường có kết quả khác nhau:

  • Một số triển khai sẽ có kết quả kinh doanh tiêu cực
  • Một số triển khai sẽ có kết quả khả quan
  • Một số triển khai sẽ không tạo ra sự khác biệt có thể đo lường được

Nguyên tắc then chốt: Thất bại nhanh chóng trong các sáng kiến không thúc đẩy doanh nghiệp và tăng gấp đôi kết quả hỗ trợ các mục tiêu kinh doanh. Cách tiếp cận này thường được gọi là "xoay trục hoặc kiên trì".

Ứng dụng thực tế:

  • Thiết lập thử nghiệm A/B cho các tính năng mới
  • Xác định chỉ số thành công trước khi triển khai
  • Thiết lập quy trình khôi phục cho các thử nghiệm không thành công
  • Tạo vòng phản hồi để đo lường tác động nhanh chóng

Phấn đấu để học tập được xác thực

Tốc độ bạn có thể thất bại nhanh hoặc gấp đôi tùy thuộc vào thời gian chu kỳ của bạn - vòng phản hồi đó mất bao lâu để hoàn thành. Phản hồi bạn thu thập với mỗi chu kỳ phải là:

  • Thực tế: Dựa trên hành vi người dùng thực tế và chỉ số hệ thống
  • Có thể hành động: Dẫn đến các bước và quyết định tiếp theo rõ ràng
  • Kịp thời: Có sẵn đủ nhanh để ảnh hưởng đến lần lặp tiếp theo

Cách tiếp cận dựa trên bằng chứng này được gọi là học tập đã được xác nhận - đưa ra quyết định dựa trên bằng chứng thực nghiệm hơn là giả định hoặc ý kiến.

Các chỉ số ví dụ cho việc học đã được xác thực:

  • Tỷ lệ tương tác của người dùng và áp dụng tính năng
  • Hiệu suất hệ thống và tỷ lệ lỗi
  • Điểm hài lòng của khách hàng và phiếu hỗ trợ
  • KPI kinh doanh (doanh thu, tỷ lệ chuyển đổi, tỷ lệ giữ chân)

Sơ đồ minh họa chu trình học tập đã được xác thực cho thấy kết quả tốt, thờ ơ và xấu với các vòng phản hồi để cải tiến liên tục.

Rút ngắn thời gian chu kỳ của bạn

Khi bạn áp dụng các biện pháp DevOps:

  • Bạn rút ngắn thời gian chu kỳ của bạn bằng cách làm việc trong các lô nhỏ hơn.
  • Sử dụng tự động hóa hơn.
  • Làm cứng quy trình phát hành của bạn.
  • Cải thiện phép đo từ xa của bạn.
  • Triển khai thường xuyên hơn.

sơ đồ tìm hiểu đã Xác thực so với tần suất triển khai. Tốt, thờ ơ, và chu kỳ xấu.

Tối ưu hóa học tập được xác thực

Bạn càng triển khai thường xuyên thì bạn càng có thể thử nghiệm nhiều. Bạn càng có nhiều cơ hội để xoay vòng hoặc kiên trì và nhận được sự học hỏi được xác thực trong mỗi chu kỳ. Sự tăng tốc trong học tập được xác thực này là giá trị của cải tiến. Hãy coi đó là tổng tiến bộ mà bạn đạt được và những thất bại mà bạn tránh được.

sơ đồ tìm hiểu đã Xác thực so với tần suất triển khai. Tốt, thờ ơ, và chu kỳ xấu. Giá trị của số liệu cải tiến.