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

Một phần của tài liệu Giáo trình kiểm thử phần mềm 1 Công nghệ thông tin (Trang 31 - 33)

CHƯƠNG 2 : KIỂM THỬ TRONG VÒNG ĐỜI PHẦN MỀM

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

2.1.1 Mơ hình V

Hình 2.1: Mơ hình V

Trong mơ hình chữ V, q trình phát triển phần mềm được thực hiện qua các bước tuần tự như sau: Lấy yêu cầu người dùng -> Chuyển thành yêu cầu hệ thống -> Thiết kế

toàn cục -> Thiết kế chi tiết phần mềm -> Tiến hành lập trình phần mềm. Trong mơ

hình V này, quá trình kiểm thử phần mềm cũng trải qua các bước để đáp ứng với các bước trong quá trình thiết kế xây dựng phần mềm: Kiểm thử thành phần (Component

22

Ta có thể thấy ở các giai đoạn của q trình kiểm thử, việc kiểm thử được thực hiện để kiểm tra xem các mục tiêu đề ra trong các giai đoạn của quá trình thiết kế xây dựng phần mềm có đạt được hay khơng, ví dụ: Kiểm thử tích hợp (Integration Tests) để kiểm tra xem phần mềm có thỏa mãn thiết kế tồn cục (Global Design) hay không; Kiểm thử hệ thống (System Tests) để kiểm tra xem hệ thống có hoạt động đúng với những yêu cầu hệ thống không (System Requirement); tương tự Kiểm thử chấp nhận (Acceptance Tests) là giai đoạn cuối của quá trình kiểm thử nhưng lại dùng để kiểm tra xem hệ thống có đáp ứng đầy đủ các yêu cầu của người dùng đề ra ban đầu hay khơng (User Requirement). Từ đó ta có thể thấy được quy trình từ việc thiết kế xây dựng phần mềm đến hết giai đoạn kiểm thử được thực hiện theo mơ hình chữ V.

2.1.2 Mơ hình phát triển lặp lại tăng thêm

Hình 2.2: Mơ hình phát triển lặp lại tăng thêm

Trong mơ hình này, dự án được chia thành các giai đoạn nhỏ (Phase 1, Phase 2, Phase 3,...) và trong mỗi giai đoạn nhỏ này đều có đầy đủ các khâu từ khâu thiết kế, lập trình đến kiểm thử phần mềm.

Việc chuyển giao được tiến hành theo từng giai đoạn, sau mỗi giai đoạn thì một vài chức năng hoặc module mới được hồn thành và có thể đưa vào sử dụng, việc này được lặp lại qua các giai đoạn và sau mỗi giai đoạn thì số lượng các chức năng được tăng thêm, việc kiểm thử qua mỗi giai đoạn cũng ngày càng nhiều hơn.

Những thuận lợi của mơ hình phát triển lặp lại tăng thêm:

- Sau mỗi giai đoạn, một vài chức năng hoặc module quan trọng được hồn thành, do đó khách hàng có thể sử dụng được phần mềm từ rất sớm thay vì phải ngồi chờ hồn thành xong hết tất cả các chức năng của phần mềm rồi mới đưa vào sử dụng.

23

- Khách hàng được sử dụng phần mềm sớm nên có thể phản hồi ngay được những lỗi gặp phải trong quá trình sử dụng để đội ngũ phát triển có thể sửa chữa và cải tiến trong những giai đoạn sau.

- Vì các chức năng của phần mềm được chuyển giao lần lượt cho khách hàng từ rất sớm sau mỗi giai đoạn nên hạn chế được rủi ro về việc hiểu sai yêu cầu khách hàng (ví dụ: nếu sau khi xài một vài chức năng đã thực hiện ở giai đoạn 1, nếu có vấn đề gì khơng đúng với u cầu của mình thì khách hàng có thể phản hồi ngay để cập nhật, sửa chữa kịp thời trong những giai đoạn tiếp theo). Điều này giúp hạn chế được rủi ro sản phẩn không đáp ứng đúng yêu cầu khách hàng và giảm thiểu được chi phí phát triển phần mềm.

Một số các mơ hình phát triển lặp lại tăng thêm hay gặp: - Mơ hình tạo bản mẫu (Prototyping Model).

- Mơ hình phát triển ứng dụng nhanh chóng (Rapid Application Development – RAD).

- Mơ hình quy trình hợp nhất (Rational Unified Process – RUP). - Mơ hình phát triển nhanh (Agile development).

2.1.3 Kiểm thử trong một mơ hình vịng đời phần mềm

Với bất kỳ mơ hình vịng đời nào đang được sử dụng thì đều có một quy trình kiểm thử tương ứng để đảm bảo sản phẩm hoạt động tốt nhất, đáp ứng đầy đủ các yêu cầu của khách hàng.

- Đối với mỗi hoạt động phát triển đều có một hoạt động kiểm thử tương ứng. - Mỗi cấp độ kiểm thử đều có mục tiêu kiểm thử cụ thể cho cấp độ đó.

- Việc phân tích và thiết kế kiểm thử cho một mức độ kiểm thử nên bắt đầu trong các hoạt động phát triển tương ứng.

- Tester nên tham gia vào việc xem xét (review) các tài liệu ngay sau khi có tài liệu trong vịng đời phát triển phần mềm (ví dụ: Tài liệu đặc tả yêu cầu phần mềm – SRS).

Một phần của tài liệu Giáo trình kiểm thử phần mềm 1 Công nghệ thông tin (Trang 31 - 33)