12/08/2018, 17:06

Tìm hiểu về Agile Scrum trong 10 phút

Bài viết này sẽ mô tả bản chất của AGILE và SCRUM . Chúng ta hãy bắt đầu! SCRUM là gì? Scrum là một agile framework hỗ trợ con người có thể giải quyết các vấn đề phức tạp và chúng cung cấp các sản phẩm có giá trị cao nhất theo cách hiệu quả và sáng tạo. Bao gồm các đặc điểm: Nhẹ Đơn giản ...

Bài viết này sẽ mô tả bản chất của AGILE và SCRUM . Chúng ta hãy bắt đầu!

SCRUM là gì?

Scrum là một agile framework hỗ trợ con người có thể giải quyết các vấn đề phức tạp và chúng cung cấp các sản phẩm có giá trị cao nhất theo cách hiệu quả và sáng tạo. Bao gồm các đặc điểm:

  • Nhẹ
  • Đơn giản để hiểu
  • Khó để thành Master

Scrum Framework bao gồm:

Scrum Team, Daily Scrum, Sprint, Product Backlog, Sprint Backlog, Sprint Planning Meeting, Sprint Review Meeting, Sprint Retrospective Meeting, Refinement Meeting.

Scrum Team:

Scrum Team bao gồm:

  • Scrum Master (SM)
  • Product Owner/ Chủ sản phẩm (PO)
  • Development Team/ Nhóm phát triển (Các chuyên gia về chức năng chéo)

Scrum Master (SM)

  • Khuyến khích giao tiếp mặt đối mặt, hình thành các tổ chức trong team, và trách nhiệm giải trình.
  • Giải quyết vấn đề trong team, cho dù ai đã phá vỡ hoặc ai nên khắc phục.
  • Đảm bảo đội Scrum hoạt động và hiệu quả.
  • Tiến hành đánh giá Scrum, tạo quy tắc, và thực hành trong toàn tổ chức.
  • Cung cấp hướng dẫn và hỗ trợ cho team Scrum.
  • Cung cấp phản hồi thường xuyên cho team, và giúp từng người trong team thúc đẩy sự thay đổi.

Product Owner/ Chủ sản phẩm (PO)

  • Cung cấp tầm nhìn cho team, và thông báo rõ ràng điều này cho toàn bộ team.
  • Tối ưu hóa và tăng giá trị của sản phẩm.
  • Tạo và duy trì Product Backlog.
  • Đặt tiêu chí chấp nhận cho từng user story.
  • Chọn thực thi cái gì và khi nào thì release.
  • Đại diện cho các bên liên quan và khách hàng với nhóm phát triển.

Development Team/ Nhóm phát triển

  • Thực thi hoạt động các Sprint.
  • Tự sắp xếp công việc cần thực hiện.
  • Tạo ra sự gia tăng sản phẩm.
  • Làm việc với PO và tối ưu hóa giá trị.
  • Thông thường gồm có 6 (+/- 3) thành viên.
  • Nhóm phát triển phải làm các chức năng chéo nhau (backend developer, frontend developer, architect, tester, mobile developer ...)
  • Hoàn thành việc phát triển, thử nghiệm và các nhiệm vụ kỹ thuật khác để đạt được mục tiêu của mỗi sprint.
  • Tham dự tất cả các cuộc họp.
  • Báo cáo trạng thái công việc sau mỗi ngày.

Artifacts/ Hiện vật:

Product Backlog/ Sản phẩm tồn đọng:

  • Danh sách các tính năng ưu tiên mà chủ sở hữu sản phẩm muốn được bàn giao.
  • Có thể thay đổi và đang được đánh giá.
  • Các tính năng tiềm ẩn của sản phẩm.
  • Nên được công khai và dễ dàng thực hiện.
  • PO nên duy trì Product Backlog. Đó là trách nhiệm của họ.
  • Mục Product Backlog là một đơn vị của sản phẩm có thể bàn giao, có tiêu chí chấp nhận rõ ràng, bao gồm hoặc tham chiếu đến các hiện vật khác như mock-up, model (mô hình), đặc tả. Nó phải có size (kích thước) thích hợp.

Sprint backlog

  • Danh sách nhiệm vụ được xác định và ưu tiên bởi Scrum Team sẽ được hoàn thành trong Sprint.
  • Trong Sprint Planning Meeting, team sẽ lựa chọn một số danh sách các mục Product Backlog (PBIs) để tạo thành Backlog của Sprint.
  • Các đội chủ yếu sử dụng Scrum Board để biểu diễn trạng thái Backlog của Sprint như TODO - IN PROGRESS - DONE hoặc OPEN - IN DEVELOPMENT - IN TEST - IN UAT - DONE, ...

Increment/ Tăng

  • Phần mềm được sử dụng và làm việc được tạo ra trong Sprint.
  • Có kKhả năng chuyển đổi.
  • Phải hoàn thành!.

Scrum Events/ sự kiện Scrum:

Sprint Planning

Sprint Planning là một cuộc họp mà nhóm phát triển quyết định những gì sẽ được thực hiện và nó sẽ được thực hiện như thế nào trong mỗi sprint. Đây là một nỗ lực hợp tác dưới sự tham gia của Scrum Master, người tạo điều kiện cho cuộc họp và chủ sở hữu sản phẩm mô tả các chi tiết của PBIs và các tiêu chí chấp nhận của họ, giúp cả team xác định công việc và nỗ lực để hoàn thành các cam kết trong mỗi sprint.

Inputs/ đầu vào:

  • PBIs
  • Latest Increment
  • Năng lực nhóm phát triển
  • Hoạt động của nhóm phát triển trong quá khứ (tốc độ của nhóm)

Outputs/ đầu ra:

  • Mục tiêu chung hoặc mục tiêu của Sprint
  • Sprint backlog

Daily Scrum

  • Cuộc họp hàng ngày của nhóm phát triển.
  • Các cuộc họp thường được thiết lập tại cùng một địa điểm và cùng thời điểm ở phía trước Scrum Board mỗi ngày vào buổi sáng.
  • Nhóm đánh giá tiến độ cho sprint, lập kế hoạch cho 24 giờ tiếp theo, đồng bộ hóa các hoạt động, xác định những trở ngại và hành động.
  • Diễn ra trong khoảng thời gian 15 phút.

Sprint Review

  • Scrum Team trình bày và chứng minh sự gia tăng sản phẩm.
  • Scrum Team và các bên liên quan tham gia cuộc họp.
  • Scrum Team nhận được phản hồi từ các bên liên quan.
  • Các phản hồi được lưu ý và chúng sẽ sử dụng làm hướng dẫn cho bước tiếp theo.

Sprint Retrospective

  • Inspect (thanh tra) và adapt (thích nghi) là một trong những điều quan trọng nhất trong Agile Scrum và cuộc họp này là để thanh tra và đưa ra cơ hội thích nghi cho đội Scrum.
  • Inspect (thanh tra) xem sprint đã thông qua như thế nào.
  • Quyết định cái gì và làm thế nào về các thích nghi với tiến trình cải tiến.
  • Thiết lập các hành động cho lần tiếp theo.

Refinement Meetings/ Hội nghị sàng lọc

5 đến 10 phần trăm của mỗi Sprint phải được dành riêng cho các cuộc họp Product Backlog Refinement (PBR) Meetings. Cuộc họp này bao gồm:

  • Phân tích yêu cầu chuyên sâu.
  • Phân tích user stories thành những thành phần nhỏ hơn.
  • Ước tính các PBI mới.
  • Đánh giá lại các PBI hiện có. PBR không dành cho sprint hiện tại, nó thiết lập cho PBIs trong sprints tiếp theo. Điều này sẽ tốt cho việc sàng lọc trong hai sprint tiếp theo. Do đó, sprint planning meetings sẽ hiệu quả hơn và nhanh chóng bởi vì PO và SM bắt đầu lên kế hoạch với một danh sách rõ ràng về các user stories. Nếu nó không được hoàn thành, sprint planning sẽ trở nên hoàn toàn sai lầm. Scrum Team đưa ra quá nhiều câu hỏi và chúng sẽ khiến họ dễ bị nhầm lẫn.

Các giá trị quan trọng của scrum như sau:

Courage (sự can đảm), Focus (tập trung), Commitment (cam kết), Respect (tôn trọng), Openness (sự cởi mở)

10 nguyên tắc của một Agile Tester được liệt kê dưới đây:

  • Cung cấp phản hồi liên tục.
  • Bàn giao được nhiều giá trị cho khách hàng.
  • Giữ giao tiếp trực tiếp.
  • Có can đảm.
  • Giữ nó đơn giản.
  • Thực hành cải tiến liên tục.
  • Phản hồi với sự thay đổi.
  • Tự tổ chức.
  • Tập trung vào con người.

Bài dịch từ: https://www.swtestacademy.com/agile-scrum/

0