English

Phương Pháp Kiểm Thử Phần Mềm Agile

user_linhpham.jpg

Tác giả

Phạm Thị Út Linh

28/04/2023

Chia sẻ

phuong-phap-kiem-thu-phan-mem-agile.png

Bài viết hôm nay chúng ta cùng tìm hiểu mô hình Agile và phương pháp kiểm thử phần mềm dựa theo mô hình Agile sẽ hiêu quả như thế nào 

1. Agile là gì 

  • Agile là một phương pháp phát triển phần mềm linh hoạt, tập trung vào việc phát triển sản phẩm theo từng chu kỳ thời gian ngắn gọi là "sprints". Agile hướng đến việc tối đa hóa giá trị sản phẩm và hạn chế rủi ro bằng cách tập trung vào khả năng thích ứng với sự điều chỉnh các yêu cầu nghiệp vụ và sự phản hồi thường xuyên của khách hàng
  • Agile thường được áp dụng trong các dự án phần mềm nhưng cũng có thể được áp dụng trong nhiều lĩnh vực khác nhau, từ sản xuất đến marketing và quản lý dự án.

2. Các tiêu chí agile 

  • Ưu tiên vào sự tương tác giữa người với người hơn là việc mà tập trung vào công cụ để phát triển phần mềm: Agile đặt sự tương tác, trao đổi giữa các thành viên trong nhóm lên hàng đầu. Việc trao đổi, giao tiếp thường xuyên với khách hàng, sẽ giúp việc quản lý sản phẩm tốt hơn, cũng như hỗ trợ nhóm phát triển phần mềm hiểu rõ hơn về các yêu cầu nghiệp vụ và nằm bắt kịp thời những nhu cầu mà khách hàng phản hồi. Từ đó đưa ra các quyết định phát triển phần mềm nhanh chóng và hiệu quả hơn.
  • Tập trung vào phần mềm hơn là viết tài liệu chi tiết cho phần mềm. Mặc dù việc viết tài liệu chi tiết cho phần mềm cũng là điều quan trọng không kém, nhưng mà theo Agile, việc tạo ra các phiên bản phần mềm hoạt động sớm, giúp khách hàng có thể dùng thử phần mềm để đánh giá và đưa ra phản hồi sớm. Giúp tối ưu hoá giá trị sản phẩm
  • Hợp tác với khách hàng hơn là đàm phán hợp đồng: Agile coi khách hàng là một phần của quá trình phát triển sản phẩm. Việc hợp tác với khách hàng giúp đảm bảo rằng sản phẩm được phát triển đáp ứng được yêu cầu thực tế và đáp ứng được nhu cầu thay đổi của khách hàng.
  • Khả năng thích ứng với thay đổi hơn là theo kế hoạch chi tiết: Agile cho phép các thay đổi và điều chỉnh trong quá trình phát triển sản phẩm. Sự thích ứng nhanh chóng giúp đảm bảo rằng sản phẩm có thể đáp ứng được các yêu cầu mới và giải quyết được các vấn đề phát sinh trong quá trình phát triển

3. 12 quy tắc trong agile 

  • Ưu tiên hàng đầu là tạo ra sự hài lòng của khách hàng bằng cách cung cấp các sản phẩm có giá trị.
  • Chấp nhận thay đổi, thậm chí ở giai đoạn muộn trong quá trình phát triển. Agile giúp cho quá trình phát triển phần mềm trở nên linh hoạt hơn trong việc thay đổi yêu cầu của khách hàng.
  • Cung cấp các sản phẩm phần mềm có tính hoạt động và có giá trị cho khách hàng trong một thời gian ngắn, thông qua việc chia nhỏ các sản phẩm phần mềm thành các phần nhỏ và phát triển chúng đồng thời.
  • Các thành viên trong nhóm phát triển phần mềm nên hợp tác một cách chặt chẽ để đạt được mục tiêu chung của dự án.
  • Xây dựng các dự án quanh những người đóng góp trực tiếp vào dự án.
  • Tạo ra môi trường làm việc tích cực, hỗ trợ sự sáng tạo và cải thiện liên tục.
  • Chú trọng vào việc cung cấp các sản phẩm phần mềm hoạt động đúng như yêu cầu của khách hàng.
  • Đảm bảo rằng các thành viên trong nhóm phát triển phần mềm đều đóng góp vào quá trình phát triển và có trách nhiệm đối với kết quả.
  • Điều chỉnh quá trình phát triển phần mềm liên tục, thông qua việc đánh giá và cải thiện định kỳ.
  • Sử dụng các phương pháp đơn giản và hiệu quả để phát triển phần mềm.
  • Khuyến khích sự tương tác trực tiếp giữa các thành viên trong nhóm phát triển phần mềm.
  • Tạo ra các sản phẩm phần mềm bền vững và có thể thích nghi với các thay đổi trong tương lai.

4. Quy trình kiểm thử phần mềm trong mô hình Agile 

a. Các giai đoạn kiểm thử phần mềm tương ứng với các giai đoạn phát triển phần mềm trong trong mô hình Agile.

  • Giai đoạn lên kế hoạch (Planning phase): Các kế hoạch kiểm thử được lập trình để đảm bảo rằng các yêu cầu của khách hàng được đáp ứng đầy đủ. Các kế hoạch kiểm thử bao gồm các kế hoạch kiểm thử chức năng, kiểm thử hiệu năng và kiểm thử tích hợp. 
  • Giai đoạn thiết kế (Design phase): Các kịch bản kiểm thử được tạo ra và các ca kiểm thử được thiết kế. Những kịch bản này được sử dụng để đảm bảo rằng các yêu cầu của khách hàng được đáp ứng đầy đủ và các chức năng của phần mềm được thử nghiệm. 
  • Giai đoạn phát triển (Development phase): Các ca kiểm thử được thực hiện song song với các bước phát triển khác của phần mềm. Các ca kiểm thử được sử dụng để đảm bảo rằng phần mềm hoạt động đúng và đầy đủ.
  • Giai đoạn kiểm thử tích hợp (Integration testing phase): Các ca kiểm thử được thực hiện để đảm bảo rằng phần mềm hoạt động đúng khi được tích hợp với các thành phần khác của hệ thống.
  • Giai đoạn kiểm thử chấp nhận (Acceptance testing phase): Khách hàng hoặc người dùng cuối được yêu cầu kiểm tra sản phẩm để đảm bảo rằng nó đáp ứng các yêu cầu của họ. Các ca kiểm thử chấp nhận được thực hiện để đảm bảo rằng phần mềm được chấp nhận bởi khách hàng.

b. Các họat động đảm bảo chất lượng trong các phân đoạn

  • Phân đoạn xác định yêu cầu: Các yêu cầu của khách hàng được xác định và đảm bảo rằng chúng có thể được đo lường và đạt được. QA cần liên tục tương tác với khách hàng để hiểu rõ yêu cầu của họ và đảm bảo rằng phần mềm được phát triển đáp ứng đầy đủ các yêu cầu này.
  • Phân đoạn thiết kế: QA tham gia vào thiết kế kiến trúc của phần mềm. QA sẽ kiểm tra xem thiết kế có đáp ứng được các yêu cầu chất lượng và các tiêu chuẩn của công ty hay không. Nếu cần, QA sẽ đưa ra các đề xuất để cải thiện thiết kế.
  • Phân đoạn phát triển: QA tham gia vào quá trình phát triển phần mềm. QA đảm bảo rằng phần mềm được phát triển đáp ứng được các yêu cầu và các tiêu chuẩn chất lượng được đặt ra. QA sẽ tiến hành kiểm thử sản phẩm để đảm bảo rằng phần mềm được phát triển đáp ứng được các yêu cầu chất lượng.
  • Phân đoạn kiểm thử: QA thực hiện kiểm thử phần mềm. Các loại kiểm thử bao gồm kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, và kiểm thử chấp nhận. Kết quả của các hoạt động kiểm thử sẽ được sử dụng để cải thiện phần mềm.
  • Phân đoạn triển khai: QA đảm bảo rằng phần mềm được triển khai đúng cách và đáp ứng được các tiêu chuẩn chất lượng. QA sẽ kiểm tra xem hệ thống triển khai đã đáp ứng được các yêu cầu chất lượng và sẽ đưa ra các đề xuất để cải thiện sản phẩm trong tương lai.

Chia sẻ

Liên hệ