Agile - Primer

Agile là một phương pháp luận phát triển phần mềm để xây dựng một phần mềm dần dần bằng cách sử dụng các lần lặp ngắn từ 1 đến 4 tuần để quá trình phát triển phù hợp với nhu cầu kinh doanh đang thay đổi. Thay vì một quá trình phát triển kéo dài từ 6 đến 18 tháng trong đó tất cả các yêu cầu và rủi ro đều được dự đoán trước, Agile áp dụng quy trình phản hồi thường xuyên trong đó sản phẩm khả thi được phân phối sau 1 đến 4 tuần lặp lại.

Vai trò trong Agile

Đội sản xuất

Scrum Master là người lãnh đạo nhóm và hỗ trợ viên, người giúp các thành viên trong nhóm tuân theo các thực hành nhanh để họ có thể đáp ứng các cam kết của mình. Trách nhiệm của một scrum master như sau:

  • Để cho phép hợp tác chặt chẽ giữa tất cả các vai trò và chức năng.

  • Để loại bỏ bất kỳ khối nào.

  • Để bảo vệ đội khỏi bất kỳ sự xáo trộn nào.

  • Để làm việc với tổ chức để theo dõi tiến trình và quy trình của công ty.

  • Để đảm bảo rằng các quy trình Kiểm tra & Thích ứng Agile được tận dụng đúng cách, bao gồm

    • Đứng lên hàng ngày,
    • Các cuộc họp đã lên kế hoạch,
    • Demo,
    • Review,
    • Các cuộc họp hồi tưởng, và
    • Để tạo điều kiện cho các cuộc họp nhóm và quá trình ra quyết định.

Chủ sở hữu sản phẩm

Chủ sở hữu sản phẩm là người định hướng sản phẩm từ góc độ kinh doanh. Các trách nhiệm hoặc Chủ sở hữu sản phẩm như sau:

  • Để xác định các yêu cầu và ưu tiên các giá trị của chúng.
  • Để xác định ngày phát hành và nội dung.
  • Giữ vai trò tích cực trong việc lập kế hoạch lặp lại và các cuộc họp lập kế hoạch phát hành.
  • Để đảm bảo rằng nhóm đang làm việc theo yêu cầu có giá trị nhất.
  • Để đại diện cho tiếng nói của khách hàng.
  • Để chấp nhận các câu chuyện của người dùng đáp ứng định nghĩa của các tiêu chí chấp nhận được thực hiện và xác định.

Nhóm đa chức năng

Mỗi nhóm nhanh nhẹn nên là một nhóm tự túc với 5 đến 9 thành viên trong nhóm và kinh nghiệm trung bình từ 6 đến 10 năm. Thông thường, một nhóm nhanh nhẹn bao gồm 3 đến 4 nhà phát triển, 1 người thử nghiệm, 1 trưởng nhóm kỹ thuật, 1 chủ sở hữu sản phẩm và 1 chuyên gia thiết kế.

Product Owner và Scrum master được coi là một phần của Giao diện Nhóm, trong khi các thành viên khác là một phần của Giao diện Kỹ thuật.

Làm thế nào một nhóm Agile lập kế hoạch công việc của mình?

Một nhóm Agile làm việc theo nhiều lần để cung cấp các câu chuyện của người dùng trong đó mỗi lần lặp là 10 đến 15 ngày. Mỗi câu chuyện của người dùng được lập kế hoạch dựa trên mức độ ưu tiên và quy mô tồn đọng của nó. Nhóm sử dụng năng lực của mình - bao nhiêu giờ có sẵn cùng nhóm để thực hiện các nhiệm vụ - để quyết định phạm vi họ phải lập kế hoạch.

Điểm

Một Điểm xác định mức độ mà một nhóm có thể cam kết. Một điểm thường đề cập đến 8 giờ. Mỗi câu chuyện được ước tính bằng điểm.

Sức chứa

Năng lực xác định mức độ mà một cá nhân có thể cam kết. Công suất được ước tính bằng giờ.

Câu chuyện người dùng là gì?

Câu chuyện người dùng là một yêu cầu xác định những gì được người dùng yêu cầu dưới dạng chức năng. Câu chuyện người dùng có thể ở hai dạng:

  • Với tư cách là <Vai trò người dùng>, tôi muốn <Chức năng> để <Giá trị doanh nghiệp>
  • Để <Giá trị doanh nghiệp> với tư cách là <Vai trò người dùng>, tôi muốn <Chức năng>

Trong quá trình lập kế hoạch phát hành, một ước tính sơ bộ được đưa ra cho câu chuyện của người dùng bằng cách sử dụng thang điểm tương đối làm điểm. Trong quá trình lập kế hoạch lặp lại, câu chuyện được chia thành các nhiệm vụ.

Mối quan hệ của Câu chuyện người dùng và Nhiệm vụ

  • Câu chuyện của người dùng nói về những gì sẽ được thực hiện. Nó xác định những gì người dùng cần.
  • Nhiệm vụ nói về cách nó được thực hiện. Nó xác định cách một chức năng được triển khai.
  • Các câu chuyện được triển khai bởi các nhiệm vụ. Mỗi câu chuyện là một tập hợp các nhiệm vụ.
  • Câu chuyện của người dùng được chia thành các nhiệm vụ khi nó được lập kế hoạch trong sự lặp lại hiện tại.
  • Các nhiệm vụ được ước tính bằng giờ, thường từ 2 đến 12 giờ.
  • Các câu chuyện được xác nhận bằng cách sử dụng các bài kiểm tra chấp nhận.

Khi một câu chuyện hoàn thành

Nhóm quyết định những gì donecó nghĩa. Các tiêu chí có thể là -

  • Tất cả các nhiệm vụ (phát triển, thử nghiệm) được hoàn thành.
  • Tất cả các bài kiểm tra chấp nhận đang chạy và được thông qua.
  • Không có khiếm khuyết nào được mở.
  • Chủ sở hữu sản phẩm đã chấp nhận câu chuyện.
  • Cung cấp cho người dùng cuối.

Tiêu chí chấp nhận là gì?

Tiêu chí xác định chức năng, hành vi và hiệu suất mà một tính năng yêu cầu để chủ sở hữu sản phẩm có thể chấp nhận nó. Nó xác định những gì phải làm để nhà phát triển biết khi nào một câu chuyện của người dùng hoàn tất.

Yêu cầu được xác định như thế nào?

Các yêu cầu được định nghĩa là

  • Một câu chuyện người dùng,
  • Với Tiêu chí Chấp nhận, và
  • Nhiệm vụ triển khai câu chuyện.