- vừa được xem lúc

Agile Scrum là gì? Và nó mang lại lợi ích như thế nào với dự án phần mềm? (P1)

0 0 103

Người đăng: Nguyen Thi Tu Quyen

Theo Viblo Asia

A. AGILE LÀ GÌ?

  • Phương pháp Agile là một phương pháp thực hành giúp lặp đi lặp lại liên tục quá trình phát triển và thử nghiệm trong quy trình SDLC. Agile chia sản phẩm thành các bản xây dựng nhỏ hơn.

  • Trong phương pháp luận này, các hoạt động Develop và Test diễn ra đồng thời, không giống như các phương pháp luận phát triển phần mềm khác. Nó cũng khuyến khích làm việc theo nhóm (team) và giao tiếp mặt đối mặt (face -to-face). Doanh nghiệp, các bên liên quan, Developer và khách hàng phải làm việc cùng nhau để phát triển một sản phẩm.

B. SCRUM LÀ GÌ?

  • Scrum trong Agile là một quy trình cho phép các đội dự án phát triển phần mềm tập trung vào việc cung cấp các giá trị kinh doanh trong thời gian ngắn nhất ( theo sprint) bằng cách test nhanh chóng và liên tục phần mềm hoạt động thực tế.
  • Nó tập trung vào trách nhiệm giải trình, làm việc theo teamwork và tiến trình lặp đi lặp lại hướng tới các mục tiêu được xác định rõ. Scrum Framework thường đề cập đến thực tế là các yêu cầu có khả năng thay đổi hoặc hầu như không được biết đến khi bắt đầu dự án.
  • Quy trình Scrum cho phép các tổ chức điều chỉnh một cách thuận lợi theo các yêu cầu thay đổi nhanh chóng và sản xuất một sản phẩm đáp ứng các mục tiêu kinh doanh đang phát triển. Một quy trình Scrum nhanh mang lại lợi ích cho tổ chức bằng cách giúp tổ chức:
    + Tăng chất lượng của sản phẩm
    + Đối phó tốt hơn với sự thay đổi (và mong đợi những thay đổi)
    + Cung cấp ước tính tốt hơn trong khi tốn ít thời gian hơn để tạo chúng
    + Kiểm soát tốt hơn tiến độ và trạng thái của dự án

C. LỢI ÍCH CỦA AGILE LÀ GÌ?

1. Lợi ích cho khách hàng

  • Khách hàng nhận thấy rằng nhà cung cấp phản hồi nhanh hơn với các yêu cầu phát triển. Các tính năng có giá trị cao được phát triển và phân phối nhanh hơn với chu kỳ ngắn, so với chu kỳ dài hơn được các quy trình “thác nước” cổ điển ưa chuộng.

2. Lợi ích cho nhà cung cấp

  • Các nhà cung cấp giảm lãng phí bằng cách tập trung nỗ lực phát triển vào các tính năng có giá trị cao và giảm thời gian đưa ra thị trường so với quy trình thác nước do giảm chi phí và tăng hiệu quả. Sự hài lòng của khách hàng được cải thiện đồng nghĩa với việc giữ chân khách hàng tốt hơn và nhiều lượt giới thiệu tích cực hơn về khách hàng.

3. Lợi ích đối với Nhóm phát triển

  • Các thành viên trong nhóm thích công việc phát triển và thích thấy công việc của họ được sử dụng và đánh giá cao. Scrum mang lại lợi ích cho các thành viên trong Nhóm bằng cách giảm bớt công việc phi năng suất (ví dụ: viết thông số kỹ thuật hoặc các hiện vật khác mà không ai sử dụng) và cho họ nhiều thời gian hơn để làm công việc mà họ yêu thích. Các thành viên trong nhóm cũng biết công việc của họ được coi trọng, bởi vì các yêu cầu được lựa chọn để tối đa hóa giá trị cho khách hàng.

4. Lợi ích cho người quản lý sản phẩm

  • Giám đốc sản phẩm, những người thường đảm nhiệm vai trò Chủ sở hữu sản phẩm, chịu trách nhiệm làm cho khách hàng hài lòng bằng cách đảm bảo rằng công việc phát triển phù hợp với nhu cầu của khách hàng. Scrum làm cho việc liên kết này trở nên dễ dàng hơn bằng cách cung cấp các cơ hội thường xuyên để sắp xếp lại thứ tự ưu tiên công việc, nhằm đảm bảo mang lại giá trị tối đa.

5. Lợi ích cho người quản lý dự án

  • Người quản lý dự án (và những người khác) đảm nhiệm vai trò ScrumMaster nhận thấy rằng việc lập kế hoạch và theo dõi dễ dàng hơn và cụ thể hơn, so với các quy trình thác nước. Việc tập trung vào theo dõi cấp độ nhiệm vụ, sử dụng Biểu đồ Burndown để hiển thị tiến độ hàng ngày và các cuộc họp Scrum Hàng ngày, tất cả đều mang lại cho Người quản lý dự án nhận thức sâu sắc về trạng thái của dự án mọi lúc. Nhận thức này là chìa khóa để giám sát dự án, đồng thời nắm bắt và giải quyết các vấn đề một cách nhanh chóng.

6. Lợi ích đối với PMO và Giám đốc điều hành

  • Scrum cung cấp khả năng hiển thị cao về trạng thái của một dự án phát triển, hàng ngày. Các bên liên quan bên ngoài, chẳng hạn như giám đốc điều hành và nhân sự trong Văn phòng quản lý dự án, có thể sử dụng khả năng hiển thị này để lập kế hoạch hiệu quả hơn và điều chỉnh chiến lược của họ dựa trên nhiều thông tin khó hơn và ít suy đoán hơn.

D.CÁC VAI TRÒ SCRUM LÀ GÌ?

Ba vai trò được xác định trong Scrum là ScrumMaster, Product Owner và Nhóm (bao gồm các thành viên trong Nhóm). Những người hoàn thành các vai trò này làm việc cùng nhau chặt chẽ hàng ngày để đảm bảo luồng thông tin thông suốt và giải quyết vấn đề nhanh chóng.

  • Product Owner (chủ sản phẩm): Là người chịu trách nhiệm về sự thành công của dự án, người định nghĩa các yêu cầu và đánh giá cuối cùng đầu ra của các nhà phát triển phần mềm.

  • Scrum Master: Là người có hiểu biết sâu sắc về Scrum và đảm bảo nhóm có thể làm việc hiệu quả với Scrum.

  • Development Team (Đội sản xuất, hay Nhóm phát triển): Một nhóm liên chức năng (cross-functional) tự quản lý để tiến hành chuyển đổi các yêu cầu được tổ chức trong Product Backlog thành chức năng của hệ thống.

  • Bốn Cuộc họp: Scrum định nghĩa quy tắc cho bốn sự kiện chủ chốt (các cuộc họp) nhằm tạo môi trường và quy cách hoạt động và cộng tác cho các thành viên trong dự án.Sprint là một phân đoạn lặp đi lặp lại trong quy trình phát triển phần mềm, thường có khung thời gian ngắn (từ 1 – 4 tuần).

  • Sprint Planning (Họp Kế hoạch Sprint):
    + Nhóm phát triển gặp gỡ với Product Owner để lên kế hoạch làm việc cho một Sprint. Công việc lập kế hoạch bao gồm việc chọn lựa các yêu cầu cần phải phát triển, phân tích và nhận biết các công việc phải làm kèm theo các ước lượng thời gian cần thiết để hoàn tất các tác vụ.
    + Scrum sử dụng cách thức lập kế hoạch từng phần và tăng dần theo thời gian, theo đó, việc lập kế hoạch không diễn ra duy nhất một lần trong vòng đời của dự án mà được lặp đi lặp lại, có sự thích nghi với các tình hình thực tiễn trong tiến trình đi đến sản phẩm.

  • Daily Scrum (Họp Scrum hằng ngày): Scrum Master tổ chức cho Đội sản xuất họp hằng ngày trong khoảng 15 phút để Nhóm Phát triển chia sẻ tiến độ công việc cũng như chia sẻ các khó khăn gặp phải trong quá trình phát triển phần mềm suốt một Sprint.

  • Sprint Review (Họp Sơ kết Sprint): Cuối Sprint, nhóm phát triển cùng với Product Owner sẽ rà soát lại các công việc đã hoàn tất (DONE) trong Sprint vừa qua và đề xuất các chỉnh sửa hoặc thay đổi cần thiết cho sản phẩm.

  • Sprint Retrospective (Họp Cải tiến Sprint): Dưới sự trợ giúp của Scrum Master, nhóm phát triển sẽ rà soát lại toàn diện Sprint vừa kết thúc và tìm cách cải tiến quy trình làm việc cũng như bản thân sản phẩm.

Trên đây là phần cơ bản về Agile Scrum. Hy vọng rằng nó sẽ giúp ích cho bạn khi làm dự án nhé.

Nguồn: https://www.cprime.com/resources/what-is-agile-what-is-scrum/ https://www.guru99.com/agile-vs-scrum.html

Bình luận

Bài viết tương tự

- vừa được xem lúc

Các mô hình phát triển phần mềm

1. Định nghĩa. Mô hình phát triển phần mềm hay quy trình phát triển phần mềm xác định các pha/ giai đoạn trong xây dựng phần mềm. Có nhiều loại mô hình phát triển phần mềm khác nhau ví dụ như:.

0 0 112

- vừa được xem lúc

Tìm hiểu về kỹ thuật phân tích giá trị biên và phân vùng tương đương trong kiểm thử hộp đen

Để đảm bảo được chất lượng của một hoặc nhiều dự án phần mềm QA cần phải tạo được bộ testcase phù hợp.Để thực hiện việc kiểm tra phần mềm với thời gian ngắn nhất mà vẫn đạt chất lượng cao nhất cần phải hiểu sâu về nghiệp vụ của phần mềm và linh hoạt trong việc thiết kế testcase.

0 0 237

- vừa được xem lúc

Single Page Application Concept

Bạn đã từng nghe về một trang wed Single page hay chưa? Dạo gần đây Single page application là một cái tên đang nổi trong xu hướng phát triển web. Mặc dù concept này đã ra đời hơn chục năm nay.

0 0 52

- vừa được xem lúc

Top 15 xu thế kiểm thử phần mềm trong năm 2021

. Năm 2021 dự kiến những công nghệ sau sẽ lên ngôi:. . AI (Artificial intelligence) và ML (Machine Learning). Robotics.

0 1 194

- vừa được xem lúc

Xử lý Table, Frame và Dynamic Element của Web trong Selenium Script – Selenium Tutorial #18

Table, Frame và Dynamic Element là các phần thiết yếu không thể thiếu của bất kỳ web project nào. Chúng ta hãy cùng nhau tìm hiểu cách xử lý chúng trong tập lệnh selenium nhé.

0 0 101

- vừa được xem lúc

Exploratory testing - Kiểm thử thăm dò

I. Định nghĩa. 1. Exploratory testing là gì.

0 0 142