Quy trỡnh kiểm định phối hợp hộp trắng và hộp đen

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Kiểm định phần mềm theo tiếp cận hệ thống (Trang 42 - 51)

CHƢƠNG 2 CÁC KỸ THUẬT KIỂM ĐỊNH PHẦN MỀM

2.3.4 Quy trỡnh kiểm định phối hợp hộp trắng và hộp đen

(1) Xỏc định yờu cầu kiểm định

Kiểm định hộp trắng nhƣ đó trỡnh bày ở trờn chủ yếu dựa trờn mó nguồn để tiến hành kiểm định, tuy nhiờn việc ỏp dụng kỹ thuật kiểm định hộp trắng đối với một chƣơng trỡnh lớn là điều khú thực hiện. Vỡ vậy để kiểm định một chƣơng trỡnh lớn cần phải phối hợp nhiều chiến lƣợc, chặng hạn để đỏp ứng cho mức kiểm định tớch hợp, hay kiểm định chức năng hệ thống thỡ đũi hỏi phải cú sự phối hợp của hộp đen để kiểm định chức năng của chỳng. Vỡ vậy trong thực tế khi xỏc định yờu cầu mức độ kiểm định, ngoài việc dựa vào mó nguồn, cũn phải tham khảo thờm cỏc hồ sơ liờn quan nhằm xỏc định cỏc hƣớng "quan trọng" để khảo sỏt và kiểm định cỏc cấu trỳc dữ liệu quan trọng. Cụ thể xỏc định đƣợc đầy đủ về chức năng và cấu trỳc chƣơng trỡnh đến từng đơn vị thấp nhất và cõu lệnh quan trọng.

(2) Kiểm định cấu trỳc logic trong từng đơn vị

Sau khi xỏc định yờu cầu, mức độ kiểm định đối với hệ thống, dựa vào cỏc kỹ thuật kiểm định hộp trắng ta tiến hành kiểm định cấu trỳc logic bờn trong của từng module (thành phần hay hệ thống con) của chƣơng trỡnh. Cú thể ỏp dụng kỹ thuật kiểm định đƣờng cơ sở (2a), hoặc kỹ thuật kiểm định cấu trỳc điều khiển (2b).

(2a) Kiểm định đường cơ sở

Căn cứ mó lệnh từng module để phõn tớch cỏc yờu cầu mức độ cho kiểm định cấu trỳc của chỳng.

Bước 2: Thiết kế trường hợp kiểm định

Dựa vào mó lệnh của module cần kiểm định. Sử dụng kỹ thuật đƣờng cơ sở, ta thực hiện lần lƣợt cỏc thao tỏc trong kỹ thuật đó trỡnh bày ở trờn, cụ thể nhƣ sau:

- Dựa vào cấu trỳc mó lệnh, tạo lƣu đồ, đồ thị luồng.

- Dựa vào đồ thị luồng, xỏc định độ phức tạp cyclomatic V(G) của đồ thị luồng. - Dựa vào đồ thị luồng và độ phức tạp V(G), xỏc định tập cỏc đƣờng cơ sở độc lập tuyến tớnh.

- Thiết kế cỏc trƣờng hợp kiểm định cho từng đƣờng cơ sở độc lập tuyến tớnh, bằng cỏch ỏp dụng cỏc kỹ thuật phõn hoạch tƣơng đƣơng hoặc phõn tớch giỏ trị biờn tƣơng tự cỏc trƣờng hợp kiểm định hộp đen, ngoài ra cú thể chọn mang tớnh đặc trƣng hay ngẫu nhiờn.

Bước 3: Thiết kế, lập trỡnh kiểm định đường cơ sở

Thiết kế, lập trỡnh kiểm định thực hiện đƣợc cho từng đƣờng cơ sở độc lập tuyến tớnh trong từng module gồm cỏc vấn đề:

* Thiết kế giao diện kiểm định cần đỏp ứng: - Thể hiện đƣợc cỏc trƣờng hợp kiểm định.

- Dữ liệu đầu vào, ra cho từng trƣờng hợp kiểm định. - Đỏnh giỏ kết quả cho từng trƣờng hợp kiểm định. * Lập trỡnh kiểm định:

Phải thể hiện đƣợc cho từng đƣờng cơ sở độc lập tuyến tớnh, bao gồm cỏc mó lệnh trờn đƣờng cơ sở độc lập tuyến tớnh, cỏc cõu lệnh đỏp ứng dữ liệu vào, dữ liệu ra cho từng trƣờng hợp và đỏnh giỏ kết quả.

Bước 4: Thực thi kiểm định đường cơ sở

Việc thực thi kiểm định tiến hành lần lƣợt cho tất cả cỏc trƣờng hợp kiểm định đó thiết kế, bằng cỏch nhập dữ liệu vào để thực thi kiểm định cỏc mó lệnh của cỏc đƣờng cơ sở độc lập tuyến tớnh.

Bước 5: Đỏnh giỏ kết quả kiểm định đường cơ sở

Từ cỏc kết quả thực thi so sỏnh với kết quả đũi hỏi để đỏnh giỏ cho từng trƣờng hợp kiểm định.

(2.b) Kiểm định cấu trỳc điều khiển (2.b.1) Kiểm định điều kiện

Sử dụng kỹ thuật kiểm định điều kiện, nhằm đỏp ứng để tất cả cỏc điều kiện trong từng module sẽ đƣợc kiểm tra trờn tất cả cỏc nhỏnh đỳng và sai. Áp dụng phƣơng phỏp đũi hỏi tiờu tốn về chi phớ và thời gian nhiều vỡ vậy tuỳ theo từng trƣờng hợp cụ thể thực tế để ỏp dụng. Bằng cỏch thực hiện lần lƣợt trong từng module nhƣ sau:

Xột lần lƣợt cho tất cả cỏc điều kiện C.

Bước 1: Kiểm tra điều kiện C

Xột xem C cú thoả món hay khụng? điều kiện mà tất cả cỏc biến logic và toỏn tử quan hệ trong điều kiện chỉ xuất hiện một lần và khụng cú biến chung (*).

Nếu C thoả món điều kiện (*) thỡ chuyển sang bƣớc 2, nếu khụng thỡ chuyển sang bƣớc 3.

Bước 2: Kiểm định điều kiện C theo ràng buộc D

- Xỏc định tập cỏc ràng buộc D đối với biểu thức điều kiện C. - Tạo lập bộ kiểm định điều kiện C.

- Thực thi kiểm định điều kiện C với cỏc giỏ trị đầu vào lần lƣợt cỏc Di thuộc tập D, sau đú chuyển sang bƣớc 4.

Bước 3: Kiểm định điều kiện C khụng theo ràng buộc D, theo giỏ trị logic

Bƣớc này tiến hành kiểm định điều kiện C, tƣơng tự bƣớc 2, tuy nhiờn cỏc trƣờng hợp kiểm định cú đầu vào cho điều kiện C lần lƣợt là true và false, sau đú chuyển sang bƣớc 4.

Bước 4: Đỏnh giỏ kết quả kiểm định điều kiện

Sau mỗi lần kiểm định đỏnh giỏ kết quả cho từng trƣờng hợp, cuối cựng đƣa ra kết luận về chƣơng trỡnh đó đƣợc kiểm định điều kiện.

(2.b2) Kiểm định vũng lặp

Áp dụng kỹ thuật kiểm định vũng lặp để kiểm định một số vũng lặp cú thể: - Kiểm định vũng lặp đơn.

- Kiểm định vũng lặp lồng nhau. - Kiểm định vũng lặp nối nhau. - Kiểm định vũng lặp phi cấu trỳc.

(2.b.3) Kiểm định luồng dữ liệu

Áp dụng kỹ thuật kiểm định luồng dữ liệu :

- Xỏc định nhận dạng tất cả cỏc cặp định nghĩa-sử dụng và cỏc trƣờng hợp kiểm định cấu trỳc bao phủ cỏc cặp này.

- Xỏc định luồng dữ liệu và kiểm định theo cỏc tiờu chuẩn.

(3) Kiểm định chức năng của từng đơn vị

Cụng đoạn này cú tỏc dụng kiểm định chức năng của từng module (thành phần hay hệ thống con), kiểm định sẽ đỏnh giỏ sự thực thi so với đặc tả.

Kiểm định chức năng cỏc module cú thể đƣợc thực hiện từ bản thõn nú tỏc động đến cỏc module khỏc của chƣơng trỡnh hoặc từ chƣơng trỡnh chớnh hoặc cỏc module khỏc tỏc động đến nú. Để kiểm định chức năng cỏc module ta ỏp dụng kỹ thuật hộp đen và phải xõy dựng bộ chƣơng trỡnh kiểm định, chỳng bao gồm khiển trỡnh và cuống [5].

- Khiển trỡnh sẽ thực hiện nhận dữ liệu đầu vào sau đú gọi đến module cần kiểm định.

- Cuống cú vai trũ làm thay thế cỏc module cấp dƣới để cho module đang xột kết nối tỏc động đến.

Trỡnh tự thực hiện nhƣ sau:

Bước 1: Xỏc định yờu cầu cần kiểm định chức năng đơn vị

Bƣớc này nhằm chỉ ra cỏc chức năng chủ yếu của module cần thiết cho việc kiểm định, là cơ sở cho việc thiết kế kiểm định ở bƣớc sau.

Gồm một số vấn đề:

* Thiết kế và lập trỡnh giao diện bộ chƣơng trỡnh kiểm định: Giao diện phải đỏp ứng thể hiện đƣợc cỏc trƣờng hợp kiểm định với dữ liệu vào, ra và đỏnh giỏ kết quả.

* Thiết kế và lập trỡnh cấu trỳc bờn trong bộ chƣơng trỡnh kiểm định, cụ thể là khiển trỡnh và cuống.

Bước 3: Thực thi kiểm định chức năng đơn vị

- Kiểm định theo khiển trỡnh. - Kiểm định theo cuống.

Bước 4. Đỏnh giỏ kết quả kiểm định chức năng đơn vị

Dựa trờn kết quả thực thi kiểm định chức năng module để đƣa ra đỏnh giỏ kết quả cho kiểm định.

(4) Kiểm định tớch hợp cỏc đơn vị

Kiểm định tớch hợp cỏc đơn vị đƣợc xỏc định bao gồm sự tớch hợp giữa cỏc thành phần, cỏc module hay cỏc hệ thống con.

Sau khi đó kiểm định cấu trỳc và chức năng của cỏc đơn vị ta tiến hành kiểm định tớch hợp cỏc đơn vị. Việc kiểm định tớch hợp cỏc đơn vị cú nhiều phƣơng phỏp. Tuỳ theo từng trƣờng hợp cụ thể để thực hiện, về cơ bản dựa trờn hồ sơ thiết kế của hệ thống, ỏp dụng kỹ thuật hộp đen với cỏc chiến lƣợc kiểm định từ trờn xuống, dƣới lờn hay sự phối hợp của chỳng để thực hiện kiểm định.

Bước 1: Phõn tớch xỏc định yờu cầu, giải phỏp kỹ thuật kiểm định tớch hợp

Trong bƣớc này dựa vào hồ sơ thiết kế hệ thống, cấu trỳc chƣơng trỡnh để lựa chọn giải phỏp kỹ thuật, hƣớng kiểm định thớch hợp. Cụ thể xỏc định đƣợc tất cả cỏc module cần kiểm định tớch hợp và xỏc định kỹ thuật kiểm định cú thể ỏp dụng, chặng hạn kỹ thuật kiểm định trờn xuống, dƣới lờn hay sự phối hợp của chỳng.

Bước 2: Thiết kế, lập trỡnh bộ kiểm định tớch hợp

Bƣớc này tiến hành thiết kế và lập trỡnh bộ kiểm định bao gồm cuống và khiển trỡnh, cụ thể bao gồm cỏc cụng việc sau:

- Thực thi đƣợc lần lƣợt cho từng đơn vị và tớch hợp dần.

- Kết quả đỏnh giỏ sau mỗi lần thực thi kiểm định tớch hợp dần thờm từng thành phần, module hay chƣơng trỡnh con.

* Lập trỡnh bộ kiểm định:

Lập trỡnh bộ chƣơng trỡnh kiểm định bao gồm khiển trỡnh và cuống nhằm thực hiện tốt chức năng kiểm định tớch hợp cỏc đơn vị. Cụng việc này phụ thuộc vào giải phỏp kỹ thuật kiểm định đƣợc chọn lựa. Cụ thể khiển trỡnh đƣợc lập trỡnh để múc nối gọi đến mó của cỏc đơn vị cần kiểm định, nhằm thực hiện chức năng nào đú. Cuống đƣợc lập trỡnh theo một số chức năng nào đú và đƣợc sử dụng khi cú lời gọi đến từ mó lệnh của đơn vị cần kiểm định.

Bước 3: Thực thi kiểm định tớch hợp

Căn cứ vào cấu trỳc chƣơng trỡnh cần kiểm định ta tiến hành kiểm định tớch hợp dần từng thành phần, module hay chƣơng trỡnh con theo cuống hay khiển trỡnh. Sau mỗi lần kiểm định nhƣ vậy ta tớch hợp thờm một thành phần, module hay chƣơng trỡnh con khỏc vào cấu trỳc của chỳng rồi thực hiện kiểm định tiếp.

Theo kỹ thuật kiểm định tớch hợp thỡ trong mỗi phộp kiểm định về cơ bản đƣợc thực hiện bằng kiểm định hộp đen. Kiểm định bằng khiển trỡnh đƣợc thực hiện bằng cỏch chạy khiển trỡnh, nhập liệu vào để kiểm tra xem module đƣợc gọi đến (tớch hợp) cú thực hiện đỳng với đặc tả hay khụng. Kiểm định cuống đƣợc thực hiện bằng cỏch chạy module cần kiểm định gọi đến cuống, thực hiện dữ liệu vào xem chỳng thực hiện cú đỳng so với đặc tả hay khụng.

Bước 4: Đỏnh giỏ kết quả kiểm định tớch hợp

Sau mỗi lần kiểm định đƣa ra kết quả thực thi, tiến hành so sỏnh với kết quả đƣợc đũi hỏi (đặc tả) và cuối cựng đƣa ra kết quả đỏnh giỏ.

(5) Kiểm định chức năng hệ thống

- Thực hiện kỹ thuật kiểm định hộp đen ( phần 2.1).

Nhƣ đó trỡnh bày ở phần trờn, trong thực tế kiểm định hộp trắng khụng thể thực hiện đƣợc một cỏch kỹ lƣỡng cỏc chƣơng trỡnh trong tất cả cỏc hƣớng, bởi vỡ kiểm định hết mọi khớa cạnh của hệ thống là khụng cú giới hạn, với một số lƣợng rất lớn cỏc

phộp kiểm định. Vỡ vậy kỹ thuật kiểm định hộp trắng chủ yếu ỏp dụng ở mức đơn vị. Nhƣ vậy ở mức hệ thống, đặc biệt là cỏc hệ thống lớn thụng thƣờng đƣợc ỏp dụng kỹ thuật kiểm định hộp đen để kiểm định chức năng của chỳng.

(6) Đỏnh giỏ và kết luận

Sau khi thực hiện kiểm định tất cả cỏc đơn vị nhỏ nhất của chƣơng trỡnh (thành phần, module hay chƣơng trỡnh con), kiểm định tất cả cỏc sự tớch hợp của chỳng cũng nhƣ kiểm định chức năng hệ thống. Sử dụng cỏc kết quả này, tiến hành đỏnh giỏ cỏc kết quả thực thi so với đặc tả để đƣa ra cỏc kết luận cuối cựng về chất lƣợng của chƣơng trỡnh đó đƣợc kiểm định.

(1) Xỏc định yờu cầu kiểm định

Bước 2. Kiểm tra mó nguồn và cỏc hồ sơ đặc tả liờn quan

Bước 3. Xỏc định cỏc chức năng và cấu trỳc chương trỡnh đến từng đơn vị Bước 1. Xỏc định yờu cầu mức độ kiểm định

(2b) Kiểm định cấu trỳc điều khiển

(3) Kiểm định chức năng từng đơn vị

(2b3) Kiểm định luồng dữ liệu (2b1) Kiểm định điều kiện

Bước 3: Kiểm định điều kiện C khụng theo ràng buộc D Bước 1: Kiểm tra điều kiện C

Bước 2: Kiểm định điều kiện C theo ràng buộc D

Bước 4: Đỏnh giỏ kết quả kiểm định điều kiện

(2b2) Kiểm định vũng lặp

Bước 5: Đỏnh giỏ kết quả kiểm định đường cơ sở

(2) Kiểm định cấu trỳc logic trong từng đơn vị

(2a) Kiểm định đường cơ sở

Bước 3: Thiết kế, lập trỡnh kiểm định đường cơ sở

Thiết kế chương trỡnh kiểm định Lập trỡnh chương trỡnh kiểm định Bước 4: Thực thi kiểm

định đường cơ sở

Nhập dữ liệu đầu vào

Thực thi cỏc mó lệnh của cỏc đường cơ sở độc lập tuyến tớnh Tạo lưu đồ, đồ thị luồng

Xỏc định độ phức tạp cyclomatic V(G). Bước 2:

Thiết kế trường hợp kiểm

định Xỏc định tập cỏc đường cơ sở độc lập tuyến tớnh Thiết kế cỏc trường hợp kiểm định cho từng đường cơ sở Bước 1: Phõn tớch, xỏc định yờu cầu mức độ kiểm định đường cơ sơ

Hỡnh 2.13 Cỏc bƣớc của quy trỡnh kiểm định phần mềm. phối hợp hộp đen và hộp trắng.

(4) Kiểm định tớch hợp cỏc đơn vị (thành phần, module, chƣơng trỡnh con)

Bước 1: Phõn tớch xỏc định yờu cầu, giải phỏp kỹ thuật kiểm định tớch hợp Bước 2: Thiết kế, lập trỡnh bộ

kiểm định tớch hợp đơn vị

Thiết kế, lập trỡnh cuống

Thiết kế, lập trỡnh khiển trỡnh

Bước 3: Thực thi kiểm định tớch hợp

Thực thi theo cuống

Thực thi theo khiển trỡnh

Bước 4: Đỏnh giỏ kết quả kiểm định tớch hợp

(3) Kiểm định chức năng từng đơn vị

Bước 1 Xỏc định yờu cầu cần kiểm định chức năng đơn vị

Bước 4: Đỏnh giỏ kết quả kiểm định chức năng đơn vị Bước3: Thực thi kiểm định

chức năng đơn vị

Kiểm định chức năng theo cuống Kiểm định chức năng theo khiển trỡnh Bước 2: Thiết kế, lập trỡnh bộ kiểm định chức năng đơn vị Thiết kế, lập trỡnh cuống Thiết kế, lập trỡnh khiển trỡnh (6) Đỏnh giỏ và kết luận (5) Kiểm định chức năng hệ thống

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Kiểm định phần mềm theo tiếp cận hệ thống (Trang 42 - 51)