Tại sao Scrum dễ học nhưng khó thành thạo?

Trong môi trường số thay đổi nhanh chóng, khái niệm linh hoạt ngày càng trở nên phổ biến. Mọi người đều đang nói vềScrum, phát triển phần mềm linh hoạt, và các phương pháp khác như Lập trình cực đoan (XP), Scrum, Phương pháp Crystal, Phát triển phần mềm thích ứng (ASD), Phát triển theo tính năng (FDD), Phương pháp phát triển hệ thống động (DSDM), và nhẹ nhàng. RUP, Phát triển dựa trên kiểm thử (TDD), và các phương pháp khác, như minh họa trong sơ đồ bên dưới. Trong tất cả các phương pháp phát triển linh hoạt, Scrum là phương pháp được áp dụng rộng rãi nhất.
Bài viết này chủ yếu chia sẻ những hiểu biết về việc hiểu và triển khai Scrum, cũng như những thay đổi mà Scrum mang lại cho các đội nhóm.
Agile Umbrella
Mái che linh hoạt

Scrum là gì?

Scrum là một khung công tác để phát triển và duy trì các sản phẩm phức tạp, tuân theo quy trình phát triển tăng dần và lặp lại. Trong khung này, toàn bộ quá trình phát triển bao gồm nhiều chu kỳ lặp lại ngắn, một trong số đó được gọi làSprint, kéo dài từ 2 đến 4 tuần.
Trong Scrum, danh sách yêu cầu sản phẩmBacklogđược sử dụng để quản lý các yêu cầu sản phẩm. Danh sách yêu cầu sản phẩm được ưu tiên dựa trên giá trị kinh doanh. Trong một Sprint, độiScrum teamchọn các mục ưu tiên cao nhất từ danh sách yêu cầu sản phẩm và thông qua quá trìnhLên kế hoạch Sprinttạo ra mộtSprint Backlog. Các mục yêu cầu sản phẩm được chọn (PBIs) được thảo luận, phân tích và ước tính trong buổi họp lên kế hoạch Sprint để tạo thành danh sách các nhiệm vụ sẽ được bao gồm trong Sprint tiếp theo (gọi là Sprint Backlog). Khi đội Scrum hoàn thành tất cả các nhiệm vụ được chọn trên Sprint Backlog, Sprint hiện tại kết thúc và chuyển sang vòng lặp Sprint tiếp theo.
Agile Scrum Framework
Khung công tác Scrum linh hoạt

Tại sao Scrum khó thành thạo?

Scrum rất có giá trị. Tuy nhiên, ở một số tổ chức, việc triển khai Scrum là thách thức. Một số người nói rằng Scrum ít mang lại tác động rõ rệt. Tại sao nhiều người lại thấy Scrum khó thành thạo hoặc triển khai? Hãy cùng xem lại những gì Hướng dẫn Scrum nói về Scrum:
Scrum là
  • nhẹ nhàng
  • Dễ hiểu
  • Khó thành thạo
Vì Scrum đòi hỏi sự thay đổi văn hóa, nên việc triển khai là khó khăn. Nếu một tổ chức áp dụng Scrum cho phát triển linh hoạt từ cấu trúc đội nhóm truyền thống, nó phải cung cấp kỹ năng, đào tạo và hướng dẫn đáng kể cho tất cả các vai trò Scrumvai trò. Trách nhiệm của mỗi vai trò Scrum rộng hơn rất nhiều so với môi trường truyền thống kiểu waterfall. Tại sao Scrum khó nắm vững? Những lý do chính là:
  1. Các vai trò trong Scrum đòi hỏi cao hơn rất nhiều đối với tất cả các thành viên trong đội.
    Ví dụ, trong một dự án Scrum, các nhà phát triển không chỉ đơn thuần là “viết mã”—họ phải chịu trách nhiệm về lập kế hoạch, ước tính, quản lý công việc của chính mình và tích hợp nó với các thành viên khác để tạo ra một giải pháp thống nhất. Họ cũng được kỳ vọng hợp tác trực tiếp với người dùng kinh doanh để hiểu rõ yêu cầu.
  2. Scrum là một quy trình thích ứng đòi hỏi kỹ năng và khả năng phán đoán đáng kể.
    Scrum dựa trên mô hình kiểm soát quy trình thực nghiệm, có nghĩa là trong quá trình thực hiện dự án, các giải pháp và quy trình tạo ra chúng phải liên tục được điều chỉnh dựa trên quan sát. Nhiều kỹ năng và quyết định phán đoán chỉ có thể được học qua trải nghiệm thực tế có sự hướng dẫn. Nhiều người cố gắng áp dụng Scrum một cách máy móc mà không hiểu rõ các nguyên lý cốt lõi, điều này thường dẫn đến thất bại.
  3. Scrum đòi hỏi sự chuyển đổi tổ chức.
    Scrum đòi hỏi một mối quan hệ hợp tác giữa các đội phát triển và người dùng kinh doanh trong suốt vòng đời dự án. Điều này thường đòi hỏi phá vỡ các “hàng rào tổ chức” để tạo điều kiện cho hợp tác hiệu quả.

Mười chiến lược cho thành công trong phát triển linh hoạt

Các chiến lược thành công trong quá trình chuyển đổi từ phương pháp truyền thống sang phát triển linh hoạt được lấy từ các cuộc phỏng vấn với các quản lý dự án linh hoạt và chuyên gia thực tế đang triển khai phần mềm cho nhiều dự án trên toàn cầu, bao gồm: phỏng vấn các chuyên gia linh hoạt (kinh doanh, CNTT và quản lý), các tổ chức tiêu chuẩn (PMI, Scrum.org, Liên minh Linh hoạt, Scrum.org, DSDM, IEEE, v.v.), các nghiên cứu điển hình ngành, sách và các viện nghiên cứu (Gartner, Standish, Forrester, v.v.).
  1. Đảm bảo cam kết từ ban lãnh đạo – Cam kết từ ban lãnh đạo phải được đảm bảo trước khi bắt đầu bất kỳ kế hoạch triển khai nào.
  2. Hỗ trợ đội nhóm của bạn – Agile cung cấp mức độ minh bạch cao và giảm nhu cầu kiểm tra điểm mốc chi tiết.
  3. Hiểu văn hóa hợp tác – Đại diện từ phía kinh doanh phải dẫn dắt sáng kiến linh hoạt; sự tham gia của họ là nền tảng cốt lõi của phương pháp luận linh hoạt.
  4. Chấp nhận Agile một cách toàn diện – Giá trị thực sự của Agile được thể hiện tốt nhất thông qua cam kết toàn diện.
  5. Tạo bản đồ hành trình và kế hoạch ban đầu – Agile là một phần của quá trình lập kế hoạch tổng thể.
  6. Tham gia một huấn luyện viên Agile và đào tạo đội nhóm của bạn – Ít nhất một huấn luyện viên Agile có kinh nghiệm, Scrum Master, và ít nhất 20% đội nhóm có kinh nghiệm với Agile sẽ làm tăng đáng kể khả năng thành công.
  7. Bắt đầu nhỏ và đạt được những thành công sớm – Không có gì thúc đẩy động lực cho một sáng kiến Agile nhiều hơn việc thể hiện thành công rõ ràng và sớm.
  8. Xây dựng các chỉ số hiệu suất Agile – Agile tập trung vào giải quyết các ưu tiên kinh doanh hiện tại, chứ không phải tuân theo một bộ yêu cầu cơ sở có thể đã không còn phản ánh đúng hướng đi kinh doanh hiện tại.
  9. Tạo hợp đồng Agile – Thay vì tập trung vào “điều gì” sẽ được giao, hãy xác định rõ và thực hiện “cách thức” định nghĩa và giao giải pháp.
  10. Áp dụng công cụ ALM để tăng cường tương tác – Các công cụ ALM Agile tích hợp các quy trình và cấu trúc quản trị Agile trên nền tảng tích hợp công cụ ALM truyền thống.
Dựa trên nghiên cứu và kinh nghiệm, các tổ chức được khuyến nghị mạnh mẽ nên áp dụng các chiến lược này, cùng với các thực hành quản lý kinh doanh và CNTT mạnh mẽ, để đảm bảo quá trình chuyển đổi suôn sẻ từ các phương pháp phát triển truyền thống sang Agile.

Leave a Reply