Luận văn: Sinh tự động ca kiểm thử từ mô hình BPMN thực thi được

Khám phá cách tự động sinh ca kiểm thử từ mô hình BPMN. Tối ưu quy trình kiểm thử, tiết kiệm thời gian và nâng cao hiệu quả. Tìm hiểu ngay!

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2017

89
0
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

TÓM TẮT

ABSTRACT

LỜI CAM ĐOAN

DANH SÁCH BẢNG BIỂU

DANH SÁCH HÌNH VẼ

BẢNG THUẬT NGỮ VIẾT TẮT

1. CHƢƠNG 1: ĐẶT VẤN ĐỀ

2. CHƢƠNG 2: TỔNG QUAN VỀ MÔ HÌNH HÓA QUY TRÌNH NGHIỆP VỤ VÀ KIỂM THỬ DỰA TRÊN MÔ HÌNH

2.1. Tổng quan về mô hình thực thi được

2.1.1. Khái niệm mô hình (Model)

2.1.2. Khái niệm siêu mô hình (Meta- model)

2.1.3. Khái niệm mô hình thực thi được (executable model)

2.2. Tổng quan về kiểm thử dựa trên mô hình

2.2.1. Phương pháp tiếp cận kiểm thử dựa trên mô hình

2.2.2. Thuận lợi và khó khăn của kiểm thử trên mô hình

2.3. Một số phương pháp kiểm thử dựa trên mô hình

2.3.1. Sinh tự động ca kiểm thử từ biểu đồ UML và OCL

2.3.2. Sinh tự động ca kiểm thử từ biểu đồ tuần tự UML

2.3.3. Khai thác đáng tin cậy các trường hợp kiểm thử tự động từ đặc tả yêu cầu phần mềm

2.4. Tổng quan về mô hình hóa quy trình nghiệp vụ BPMN

2.4.1. Tổng quan về mô hình hóa quy trình nghiệp vụ

2.4.2. Mô hình hóa quy trình nghiệp vụ với BPMN

2.4.3. Các phần tử (element) của BPMN

2.4.4. Các mô hình thành phần của BPMN

2.4.5. Các điều kiện ràng buộc thiết kế BPMN

2.4.6. Công cụ thiết kế và thực thi mô hình BPMN

2.4.6.1. Công cụ MS Visio
2.4.6.2. Công cụ Bizagi
2.4.6.3. Công cụ Activiti

2.5. Tổng kết chương

3. CHƢƠNG 3: PHƢƠNG PHÁP SINH CA KIỂM THỬ TỪ MÔ HÌNH BPMN

3.1. Phát biểu bài toán

3.2. Thuật toán sinh kịch bản ca kiểm thử từ mô hình BPMN

3.2.1. Chuyển đổi mô hình BPMN sang dạng CFG

3.2.2. Thuật toán sinh kịch bản ca kiểm thử

3.3. Tổng kết chương

4. CHƢƠNG 4: CÀI ĐẶT & THỰC NGHIỆM

4.1. Môi trường cài đặt

4.2. Kết quả thực nghiệm

4.3. Ý nghĩa thực nghiệm

5. CHƢƠNG 5: KẾT LUẬN

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Tự Động Sinh Ca Kiểm Thử Từ Mô Hình BPMN

Trong bối cảnh phát triển phần mềm ngày càng phức tạp, việc đảm bảo chất lượng (QA) trở thành yếu tố then chốt. Kiểm thử phần mềm đóng vai trò quan trọng trong việc xác định và khắc phục lỗi, từ đó nâng cao chất lượng sản phẩm. Tuy nhiên, kiểm thử thủ công truyền thống thường tốn nhiều thời gian và chi phí. Do đó, các phương pháp tự động hóa kiểm thử ngày càng được chú trọng. Một trong những hướng đi đầy hứa hẹn là tự động sinh ca kiểm thử từ các mô hình, đặc biệt là mô hình BPMN. Bài viết này đi sâu vào chủ đề tự động sinh ca kiểm thử BPMN, khám phá các phương pháp, ứng dụng và tiềm năng của nó. BPMN (Business Process Model and Notation) là một tiêu chuẩn để mô hình hóa quy trình nghiệp vụ, cung cấp một ký hiệu đồ họa trực quan và dễ hiểu. Việc sử dụng mô hình BPMN cho phép các nhà phát triển và kiểm thử viên có cái nhìn rõ ràng về luồng nghiệp vụ của hệ thống, từ đó dễ dàng xác định các ca kiểm thử cần thiết. Tự động hóa kiểm thử BPMN giúp giảm thiểu sự phụ thuộc vào kiểm thử thủ công, tiết kiệm thời gian và chi phí, đồng thời nâng cao độ bao phủ và hiệu quả của quá trình kiểm thử. Theo luận văn của Dương Thị Thanh Huyền, hướng nghiên cứu này "dựa trên lý thuyết kiểm thử dựa trên mô hình", với mục tiêu "tự động hóa quá trình kiểm thử, nâng cao hiệu quả kiểm thử, tiết kiệm chi phí và thời gian phát triển sản phẩm phần mềm".

1.1. Tại Sao Cần Tự Động Hóa Kiểm Thử Dựa Trên BPMN

Kiểm thử phần mềm là một phần không thể thiếu trong vòng đời phát triển phần mềm. Tuy nhiên, kiểm thử thủ công thường tốn nhiều thời gian, công sức và dễ mắc lỗi chủ quan. Tự động hóa kiểm thử giúp giải quyết những vấn đề này, mang lại nhiều lợi ích như giảm chi phí, tăng tốc độ kiểm thử, và nâng cao độ chính xác. Việc sử dụng BPMN test automation đặc biệt hữu ích vì BPMN cung cấp một mô hình rõ ràng và trực quan về luồng nghiệp vụ, giúp dễ dàng xác định và tạo các ca kiểm thử. Với sinh ca kiểm thử BPMN, chúng ta có thể tận dụng các công cụ và kỹ thuật để tự động tạo ra các ca kiểm thử từ mô hình BPMN, giảm thiểu công sức thủ công và đảm bảo độ bao phủ kiểm thử toàn diện. Theo nghiên cứu, kiểm thử dựa trên mô hình giúp giảm chi phí và thời gian, độ bao phủ tốt và giảm lỗi chủ quan, khả năng sử dụng lại cao, sớm phát hiện lỗi, đảm bảo được chất lượng phần mềm.

1.2. Tổng Quan Về Quy Trình Tự Động Sinh Ca Kiểm Thử BPMN

Quy trình tự động sinh ca kiểm thử từ mô hình BPMN thường bao gồm các bước sau: 1. Xây dựng mô hình BPMN: Mô hình hóa quy trình nghiệp vụ bằng cách sử dụng ký hiệu BPMN. 2. Phân tích mô hình BPMN: Phân tích mô hình để xác định các đường dẫn, quyết định, và điểm rẽ nhánh. 3. Sinh ca kiểm thử: Sử dụng các thuật toán và công cụ để tự động tạo ra các ca kiểm thử từ mô hình. 4. Thực thi ca kiểm thử: Thực thi các ca kiểm thử trên hệ thống phần mềm. 5. Đánh giá kết quả: Đánh giá kết quả kiểm thử và báo cáo lỗi. Mỗi bước trong quy trình này đều quan trọng để đảm bảo tính hiệu quả và chính xác của quá trình kiểm thử. Việc sử dụng các công cụ kiểm thử BPMN hỗ trợ tự động hóa quy trình này giúp tiết kiệm thời gian và công sức, đồng thời nâng cao chất lượng sản phẩm.

II. Thách Thức Trong Tự Động Hóa Kiểm Thử Với Mô Hình BPMN

Mặc dù tự động sinh ca kiểm thử từ mô hình BPMN mang lại nhiều lợi ích, việc triển khai nó cũng đối mặt với một số thách thức. Một trong những thách thức lớn nhất là sự phức tạp của mô hình BPMN. Các mô hình phức tạp có thể chứa nhiều đường dẫn, quyết định, và điểm rẽ nhánh, khiến việc sinh ca kiểm thử trở nên khó khăn và tốn kém. Ngoài ra, việc đảm bảo rằng các ca kiểm thử được tạo ra bao phủ đầy đủ các khía cạnh của hệ thống cũng là một thách thức. Theo nghiên cứu của Dương Thị Thanh Huyền, "xây dựng mô hình là một công việc khó khăn đòi hỏi nhiều nỗ lực và tiềm ẩn nhiều nguy cơ lỗi". Do đó, cần có các phương pháp và công cụ hiệu quả để giải quyết những thách thức này.

2.1. Phức Tạp Của Mô Hình BPMN Ảnh Hưởng Đến Kiểm Thử

Sự phức tạp của mô hình BPMN có thể gây khó khăn trong việc tự động hóa kiểm thử. Các mô hình phức tạp thường chứa nhiều đường dẫn, quyết định, và điểm rẽ nhánh, khiến việc xác định các ca kiểm thử cần thiết trở nên khó khăn. Hơn nữa, việc đảm bảo rằng các ca kiểm thử được tạo ra bao phủ đầy đủ các khía cạnh của hệ thống cũng là một thách thức. Để giải quyết vấn đề này, cần có các phương pháp và công cụ hiệu quả để phân tích và đơn giản hóa mô hình BPMN, từ đó dễ dàng sinh ca kiểm thử. Các công cụ phân tích BPMN có thể giúp xác định các đường dẫn quan trọng và các điểm rẽ nhánh, giúp tập trung vào các ca kiểm thử có giá trị cao.

2.2. Đảm Bảo Độ Bao Phủ Kiểm Thử Toàn Diện Với BPMN Testing

Một trong những thách thức quan trọng nhất trong tự động hóa kiểm thử BPMN là đảm bảo độ bao phủ kiểm thử toàn diện. Điều này có nghĩa là các ca kiểm thử được tạo ra phải bao phủ tất cả các khía cạnh của hệ thống, bao gồm tất cả các đường dẫn, quyết định, và điểm rẽ nhánh trong mô hình BPMN. Để đạt được độ bao phủ kiểm thử toàn diện, cần có các phương pháp và công cụ hiệu quả để phân tích mô hình BPMN và xác định các ca kiểm thử cần thiết. Các phương pháp như kiểm thử dựa trên mô hìnhphân tích luồng dữ liệu có thể giúp xác định các ca kiểm thử có giá trị cao và đảm bảo rằng tất cả các khía cạnh của hệ thống đều được kiểm thử.

III. Phƣơng Pháp Chuyển Đổi BPMN Sang CFG Để Sinh Ca Kiểm Thử

Để tự động sinh ca kiểm thử từ mô hình BPMN, một phương pháp hiệu quả là chuyển đổi mô hình BPMN sang dạng đồ thị luồng điều khiển (CFG). CFG là một biểu diễn đồ họa của luồng điều khiển trong chương trình, giúp dễ dàng xác định các đường dẫn và điểm rẽ nhánh. Việc chuyển đổi BPMN testing sang CFG cho phép sử dụng các thuật toán và công cụ để tự động tạo ra các ca kiểm thử từ đồ thị. Các ca kiểm thử này có thể được sử dụng để kiểm thử hệ thống phần mềm và đảm bảo rằng nó hoạt động đúng theo thiết kế. Dương Thị Thanh Huyền mô tả chi tiết cách "chuyển đổi mô hình BPMN sang dạng CFG" trong luận văn của mình.

3.1. Các Bước Chuyển Đổi Mô Hình BPMN Sang CFG

Quá trình chuyển đổi mô hình BPMN sang CFG thường bao gồm các bước sau: 1. Phân tích mô hình BPMN: Phân tích mô hình để xác định các thành phần, kết nối, và luồng điều khiển. 2. Tạo nốt CFG: Tạo một nốt CFG cho mỗi thành phần trong mô hình BPMN, chẳng hạn như hoạt động, sự kiện, và cổng. 3. Tạo cạnh CFG: Tạo một cạnh CFG cho mỗi kết nối trong mô hình BPMN, thể hiện luồng điều khiển giữa các thành phần. 4. Xác định điểm bắt đầu và kết thúc: Xác định điểm bắt đầu và kết thúc của CFG, tương ứng với điểm bắt đầu và kết thúc của mô hình BPMN. 5. Tối ưu hóa CFG: Tối ưu hóa CFG để loại bỏ các nốt và cạnh không cần thiết, giúp đơn giản hóa quá trình sinh ca kiểm thử.

3.2. Lợi Ích Của Việc Sử Dụng CFG Trong Sinh Ca Kiểm Thử BPMN

Việc sử dụng CFG trong sinh ca kiểm thử BPMN mang lại nhiều lợi ích. CFG cung cấp một biểu diễn rõ ràng và trực quan về luồng điều khiển trong mô hình BPMN, giúp dễ dàng xác định các đường dẫn và điểm rẽ nhánh. Điều này cho phép sử dụng các thuật toán và công cụ để tự động tạo ra các ca kiểm thử từ CFG, giảm thiểu công sức thủ công và đảm bảo độ bao phủ kiểm thử toàn diện. Ngoài ra, CFG cũng giúp tối ưu hóa quá trình kiểm thử bằng cách xác định các ca kiểm thử có giá trị cao và loại bỏ các ca kiểm thử không cần thiết.

IV. Thuật Toán Sinh Kịch Bản Ca Kiểm Thử Từ Mô Hình BPMN

Sau khi chuyển đổi mô hình BPMN sang CFG, có thể sử dụng các thuật toán để sinh ca kiểm thử. Các thuật toán này thường dựa trên việc duyệt đồ thị CFG để xác định các đường dẫn từ điểm bắt đầu đến điểm kết thúc. Mỗi đường dẫn này tương ứng với một kịch bản ca kiểm thử. Các thuật toán có thể sử dụng các tiêu chí bao phủ khác nhau, chẳng hạn như bao phủ đường dẫn, bao phủ nhánh, và bao phủ điều kiện, để đảm bảo độ bao phủ kiểm thử toàn diện.

4.1. Các Loại Thuật Toán Thường Dùng Để Sinh Ca Kiểm Thử

Có nhiều loại thuật toán có thể được sử dụng để sinh ca kiểm thử từ mô hình BPMN. Một số thuật toán phổ biến bao gồm: 1. Thuật toán bao phủ đường dẫn: Thuật toán này tạo ra các ca kiểm thử bao phủ tất cả các đường dẫn từ điểm bắt đầu đến điểm kết thúc trong CFG. 2. Thuật toán bao phủ nhánh: Thuật toán này tạo ra các ca kiểm thử bao phủ tất cả các nhánh trong CFG. 3. Thuật toán bao phủ điều kiện: Thuật toán này tạo ra các ca kiểm thử bao phủ tất cả các điều kiện trong CFG. Việc lựa chọn thuật toán phù hợp phụ thuộc vào yêu cầu cụ thể của dự án và mức độ bao phủ kiểm thử mong muốn.

4.2. Tối Ưu Hóa Thuật Toán Để Đảm Bảo Hiệu Quả Kiểm Thử

Để đảm bảo hiệu quả kiểm thử, cần tối ưu hóa thuật toán sinh ca kiểm thử BPMN. Việc tối ưu hóa có thể bao gồm việc giảm số lượng ca kiểm thử được tạo ra, tăng độ bao phủ kiểm thử, và giảm thời gian thực thi kiểm thử. Các kỹ thuật tối ưu hóa có thể bao gồm việc sử dụng các tiêu chí bao phủ thông minh, loại bỏ các ca kiểm thử trùng lặp, và sử dụng các công cụ phân tích BPMN để xác định các ca kiểm thử có giá trị cao.

V. Ứng Dụng Thực Tiễn Và Kết Quả Nghiên Cứu Tự Động Sinh Ca Kiểm Thử

Tự động sinh ca kiểm thử từ mô hình BPMN đã được áp dụng trong nhiều dự án phần mềm và mang lại kết quả tích cực. Các dự án này đã chứng minh rằng việc sử dụng mô hình BPMN và các thuật toán sinh ca kiểm thử có thể giúp giảm chi phí, tăng tốc độ kiểm thử, và nâng cao chất lượng sản phẩm. Dương Thị Thanh Huyền cũng đã cài đặt và thử nghiệm một công cụ hỗ trợ sinh ca kiểm thử với một số ví dụ đơn giản để chứng minh tính đúng đắn và hiệu quả của phương pháp.

5.1. Các Dự Án Thực Tế Ứng Dụng Tự Động Hóa Kiểm Thử BPMN

Nhiều dự án phần mềm đã ứng dụng tự động hóa kiểm thử BPMN để cải thiện quá trình kiểm thử và nâng cao chất lượng sản phẩm. Các dự án này thường sử dụng các công cụ và kỹ thuật để sinh ca kiểm thử từ mô hình BPMN, sau đó thực thi các ca kiểm thử trên hệ thống phần mềm. Kết quả cho thấy rằng việc sử dụng BPMN validationBPMN verification có thể giúp giảm chi phí, tăng tốc độ kiểm thử, và nâng cao độ chính xác.

5.2. Đánh Giá Hiệu Quả Của Phương Pháp Thông Qua Nghiên Cứu

Nghiên cứu đã chứng minh rằng tự động sinh ca kiểm thử từ mô hình BPMN là một phương pháp hiệu quả để cải thiện quá trình kiểm thử phần mềm. Các nghiên cứu này thường so sánh hiệu quả của việc sử dụng BPMN simulation for testing và các thuật toán sinh ca kiểm thử với việc kiểm thử thủ công truyền thống. Kết quả cho thấy rằng việc sử dụng kiểm thử dựa trên mô hình có thể giúp giảm chi phí, tăng tốc độ kiểm thử, và nâng cao độ bao phủ kiểm thử.

VI. Kết Luận Về Tương Lai Của Tự Động Hóa Kiểm Thử BPMN

Tự động sinh ca kiểm thử từ mô hình BPMN là một lĩnh vực đầy tiềm năng và có thể đóng vai trò quan trọng trong tương lai của kiểm thử phần mềm. Với sự phát triển của các công cụ và kỹ thuật mới, việc tự động hóa kiểm thử sẽ trở nên dễ dàng và hiệu quả hơn, giúp các nhà phát triển và kiểm thử viên tạo ra các sản phẩm phần mềm chất lượng cao với chi phí thấp.

6.1. Triển Vọng Phát Triển Của Sinh Ca Kiểm Thử BPMN

Triển vọng phát triển của sinh ca kiểm thử BPMN là rất lớn. Với sự phát triển của các công cụ và kỹ thuật mới, việc tự động hóa kiểm thử sẽ trở nên dễ dàng và hiệu quả hơn. Điều này sẽ giúp các nhà phát triển và kiểm thử viên tạo ra các sản phẩm phần mềm chất lượng cao với chi phí thấp. Ngoài ra, việc tích hợp tự động sinh ca kiểm thử với các công cụ quản lý quy trình nghiệp vụ sẽ giúp cải thiện quá trình phát triển phần mềm tổng thể.

6.2. Hướng Nghiên Cứu Tiếp Theo Về Tối Ưu Hóa Kiểm Thử BPMN

Các hướng nghiên cứu tiếp theo về tối ưu hóa kiểm thử BPMN có thể bao gồm việc phát triển các thuật toán sinh ca kiểm thử thông minh hơn, các công cụ phân tích BPMN hiệu quả hơn, và các phương pháp kiểm thử dựa trên mô hình tiên tiến hơn. Ngoài ra, việc nghiên cứu về việc tích hợp tự động sinh ca kiểm thử với các công cụ quản lý quy trình nghiệp vụ và các quy trình phát triển phần mềm Agile cũng là một hướng đi đầy hứa hẹn.

24/09/2025

Trích đoạn nội dung tài liệu

Đặt vấn đề - Chương 2: Giới thiệu tổng quan vềmô hình thực thi được, tổng quan về kiểm thử dựa trên mô hình, một số phương pháp kiểm thử dựa trên mô hình. Tập trung nghiên cứu tìm hiểu về mô hình hóa quy trình nghiệp vụ và nghiên cứu cách thức sử dụng ký pháp của BPMN 2. Giới thiệu một số công cụ thiết kế và thực thi mô hình BPMN. - Chương 3: Phát biểu bài toán, đề xuất phương pháp sinh tự động ca kiểm thử từ mô hình BPMN.

- Chương 4: Mô tả cài đặt và kết quả thực nghiệm triển khai phương pháp đã đề xuất. - Chương 5: Trình bày tóm tắt kết quả đã đạt được, kết luận, những hạn chế và hướng nghiên cứu phát triển trong tương lai. 2 TIEU LUAN MOI download : skknchat@gmail.com CHƢƠNG2: TỔNG QUAN VỀ MÔ HÌNH HÓA QUY TRÌNH NGHIỆP VỤ VÀ KIỂM THỬ DỰA TRÊN MÔ HÌNH Chương 2 giới thiệu cơ sở lý thuyết cho luận văn bao gồm: tổng quan về mô hình thực thi được, kiểm thử dựa trên mô hình, giới thiệu một số phương pháp kiểm thử dựa trên mô hình. Tập trung tìm hiểu một mô hình thực thi được – mô hình hóa quy trình nghiệp vụ BPMN, các ràng buộc thiết kế và công cụ quản lý quy trình nghiệp vụ nhằm vận dụng, xây dựng ứng dụng thực nghiệm phục vụ cho kết quả chính của luận văn.1 Giới thiệu Phương pháp tiếp cận hướng mô hình hóa trong công nghiệp phần mềm có vai trò vô cùng quan trọng không chỉ cho quá trình phát triển phần mềm mà cho cả quá trình kiểm thử phần mềm nhằm tăng tính hiệu quả, đảm bảo chất lượng sản phẩm và tối ưu chi phí.

Do đó, các phương pháp sinh ca kiểm thử từ mô hình đã được đề cập trong nhiều nghiên cứu. Tuy nhiên, nghiên cứu sinh ca kiểm thử từ mô hình luồng quy trình nghiệp vụ BPMN chưa được đề cập nhiều. Trong khi BPMN là một mô hình cần thiết trong quá trình phát triển phần mềm để cung cấp cái nhìn tổng quan các nghiệp vụ hệ thống không chỉ cho nhà phát triển sản phẩm mà còn trực quan, dễ hiểu cho khách hàng và các bên liên quan. Nội dung các phần tiếp theo trong chương sẽ nêu kiến thức tổng quan về kiểm thử dựa trên mô hình, giới thiệu một số phương pháp kiểm thử mô hình, tổng quan về mô hình hóa quy trình nghiệp vụ (BPMN).2 Tổng quan về mô hình thực thi đƣợc 2.1 Khái niệm mô hình (Model) Mô hình là một biểu diễn trừu tượng của cấu trúc, tính năng và hành vi của hệ thống.

Mô hình có thể được biểu diễn bằng các ký hiệu đồ họa và diễn tả bằng ngôn ngữ đặc tả miền cụ thể dưới dạng ngôn ngữ hình thức. Dưới đây là hai định nghĩa về “mô hình” cơ bản của từ điển American Heritage: - Mô hình là một đối tượng nhỏđược xây dựng để quy mô, mô phỏng chi tiết một đối tượng khác thường là đối tượng lớn hơn [3]. - Mô hình là một sự biểu đồ hóa mô tả chi tiết hệ thống, đồng thời mô tả chi tiết các khía cạnh, các đặc tính của hệ thống [3]. Định nghĩa này thể hiện hai đặc điểm quan trọng của mô hình: Các mô hình phải nhỏ so với kích thước của hệ thống, rằng chúng ta có thể kiểm thử nó mà không mất quá nhiều chi phí, nhưng chúng phải đủ chi tiết để mô tả thực tế và các đặc điểm cần kiểm thử.

3 TIEU LUAN MOI download : skknchat@gmail.com Theo AnnneKe, mô hình được định nghĩa:"Một mô hình là một mô tả (hoặc một phần) của một hệ thống được viết bởi một ngôn ngữ hình thức" [4]. "Ngôn ngữ hình thức là ngôn ngữ với mẫu được xác định rõ ràng và ngữ nghĩa phù hợp với việc biên dịch tự động bởi máy tính" [4].1: Hình mô tả sự biểu diễn của mô hình.2 Khái niệm siêu mô hình (Meta- model) Meta-model là một mô hình ở mức trừu tượng hơn và sử dụng để biểu diễn mô hình.Meta-model được viết bởi ngôn ngữ gọi là meta-language. Meta- model được biểu diễn như hình sau [4]: Hình 2.2: Siêu mô hình (Meta-model) 4 TIEU LUAN MOI download : skknchat@gmail.3 Khái niệm mô hình thực thi đƣợc (executable model) Với xu thế áp dụng kỹ thuật ứng dụng hướng mô hình(MDE), phát triển phần mềm tập trung vào mô hình hóa các thành phần của hệ thống phần mềm dựa trên ngôn ngữ mô hình hóa. Ngôn ngữ mô hình hóa cho phép xác định cấu trúc và hành vi của hệ thống phần mềm một cách chính thức và ở mức trừu tượng cao gần với không gian vấn đề hơn là mức ngôn ngữ lập trình.

Ngôn ngữ mô hình thực thi không chỉ cho phép đặc tả các khía cạnh tĩnh của hệ thống mà còn đặc tả các khía cạnh động, tức là hành vi của hệ thống phần mềm thông qua các mô hình thực thi được. Do đó, “một mô hình có thể thực thi được nếu từ đó có thể viết được một chương trình thực thi hoặc chạy mô hình” [13,14]. Theo quan điểm trên Jordi Cabot cũng đã xác định: “một mô hình thực thi được là một một mô hình đủ để thực thi”[3]. Theo đó, một mô hình thực thi được khi ngữ nghĩa, hoạt động được xác định định nghĩa đầy đủ.

Trong thực tế, khả năng thực thi của mô hình phụ thuộc nhiều vào công cụ thực hiện hơn là bản thân của mô hình (ví dụ một công cụ có thể yêu cầu tính đầy đủ và chi tiết của mô hình hơn trong khi một số công cụ khác có khả năng “lấp đầy khoảng trống” – nghĩa là tự bổ sung những thành phần còn thiếu của mô hình dựa trên các định nghĩa có sẵn của công cụ để thực thi mô hình không đầy đủ đó). Một trong những mô hình thực thi được nổi tiếng nhất là UML được mô tả cụ tả cụ thể trong cuốn sách “Executable UML: A Foundation for Model-Driven Architecture” xuất bản lần đầu tiên vào năm 2002. Dựa trên các định nghĩa được xác định ở đây, bản thân tổ chức OMG đang trong quá trình chuẩn hóa các khái niệm dựa trên mô hình thực thi UML. Tuy nhiên, phiên bản hiện tại của tiêu chuẩn này cũng chưa nêu định nghĩamô hình thực thi được.

Cũng theo Jordi Cabot, việc sinh mã code từ mô hình và giải thích mô hình là hai chiến lược thay thế khác nhau để “implement”- thực hiện những công cụ thực thi: Hình 2.3: Mối quan hệ giữa mô hình thực thi với sinh mã code và giải thích mô hình [12]. 5 TIEU LUAN MOI download : skknchat@gmail.com Chiến lược sinh mã code liên quan đến việc sử dụng trình biên dịch mô hình (M2T- Model to Text) để tạo ra mô hình đại diện cấp thấp hơn của mô hình sử dụng các ngôn ngữ và nền tảng lập trình .Thay vào đó, chiến lược diễn giải mô hình dựa trên sự dễ dàng đọc và chạy mô hình. Trong luận văn này tôi đề cập đến mô hình thực thi được BPMN xuyên suốt tài liệu và từ đó đề xuất phương pháp sinh ca kiểm thử từ BPMN. Đây là mô hình quy trình luồng nghiệp vụ hệ thống với tập các ký pháp hỗ trợ mô tả hành vi của hệ thống.

Theo Maccello La Rosa & Marlon Dumas vòng đời quản lý quy trình nghiệp vụ (BPM- Business process model) mô tả như hình sau: Hình 2.4: Hình mô tả vòng đời quản lý quy trình nghiệp vụ [13]. BPMN là một mô hình mô tả cụ thể hành vi của người dùng và hệ thống đủ chi tiết để có thể thực thi được. Từ BPMN có thể sinh mã chương trình (M2T) thông qua sự hỗ trợ của ngôn ngữ thực thi được BPEL – Business process execution language và sinh các ca kiểm thử cũng như kịch bản kiểm thử tích hợp chức năng, kiểm thử hệ thống. Một thể hiện cụ thể hơn cho việc BPMN là mô hình đủ chi tiết để thực thi được là BPMN có thể thực thi trực tiếp trên công cụ quản lý quy trình nghiệp vụ (BPM).

Điều này có nghĩa là, khi có một mô hình BPMN được import vào công cụ BPM, ta có thể thực hiện được luồng nghiệp vụ trên công cụ. Trực quan hóa việc thực thi BPMN trên công cụ Activiti sẽ được trình bày chi tiết trong chương III và chương IV. 6 TIEU LUAN MOI download : skknchat@gmail.3 Tổng quan về kiểm thử dựa trên mô hình 2.1 Phƣơng pháp tiếp cận kiểm thử dựa trên mô hình Có bốn phương pháp chính tiếp cận với kiểm thử dựa trên mô hình như sau: - Sinh ra dữ liệu đầu vào kiểm thử từ một mô hình chính: đầu vào cơ bản của kiểm thử dựa trên mô hình là các mô hình, từ đó tạo ra các ca kiểm thử bằng cách chọn lựa thông minh một tập hợp con của tập giá trị các trường hợp có khả năng để đưa ra dữ liệu đầu vào kiểm thử. - Sinh ra các ca kiểm thử từ một mô hình môi trường: phương pháp này sử dụng một loại mô hình khác, mô hình này sẽ miêu tả môi trường mong muốn của SUT- Software under test.

Từ mô hình mô phỏng giả lập này đưa ra các tham số gọi tới SUT. Tuy nhiên, mô hình môi trường không mô hình hóa được toàn bộ hành vi của SUT. Vì vậy nó rất khó để xác định chính xác một kiểm thử là thành công hay thất bại. - Sinh ra các ca kiểm thử với các dự đoán từ một mô hình hành vi: đưa ra các ca kiểm thử có khả năng thực thi bao gồm các thông tin dự đoán các giá trị đầu ra mong muốn của SUT.

Hoặc một vài khâu kiểm tra tự động các giá trị đầu ra thực tế để có thể nhìn thấy nếu chúng là đúng đắn. Điều này khó hơn việc sinh ra dữ liệu kiểm thử đầu vào hoặc kiểm thử dựa trên trình tự gọi tới SUT mà không kiểm tra tới kết quả đầu ra. Để đưa ra kiểm thử với các dự đoán thì người đưa ra các ca kiểm thử phải có đầy đủ thông tin về các hành vi mong đợi của SUT để có thể tiên đoán hoặc kiểm tra các dữ liệu đầu ra của SUT. Một cách khác, với định nghĩa kiểm thử dựa trên mô hình này, mô hình phải mô tả các hành vi mong đợi của SUT, cũng như mối quan hệ giữa chúng, đồng thời mô tả đầu vào và đầu ra cho từng hành vi.

Thuận lợi của cách tiếp cận này là nó là phương pháp tiếp cận duy nhất giải quyết được vấn đề kiểm thử dựa trên mô hình bằng việc chọn lựa các giá trị đầu vào và việc đưa ra các trình tự của sự vận hành, việc đưa ra các ca kiểm thử có khả năng thực thi bao gồm thông tin quyết định sau mỗi ca kiểm thử.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ