Kết quả kiểm chứng cho thấy mô hình được thiết kế hoàn toàn thỏa mãn các thuộc tính đặt ra:
Hình 5.8. Kết quả kiểm chứng mô hình tổng thể hệ thống.
Hình 5.9. Kết quả kiểm chứng mô hình phiên làm việc của hệ thống.
Chương 6 Kết luận
Trong khóa luận này chúng tôi đã trình bày những lý thuyết cơ bản về kiểm chứng mô hình phần mềm, nghiên cứu và áp dụng kỹ thuật kiểm chứng mô hình sử dụng NuSMV như là một công cụ kiểm chứng.
Chúng tôi đã đề xuất quy trình kiểm chứng mô hình phần mềm ở giai đoạn thiết kế hệ thống sử dụng NuSMV. Quy trình này được áp dụng vào kiểm chứng mô hình phần mềm giả lập máy rút tiền tự động ATM và đã chứng minh được bản thiết kế hoàn toàn thỏa mãn các thuộc tính đặt ra.
Khóa luận đã áp dụng thành công kỹ thuật kiểm chứng mô hình vào kiểm chứng ở giai đoạn thiết kế phần mềm. Tuy nhiên, chúng tôi chưa xét đến việc thẩm định lại bản thiết kế hệ thống nếu công cụ kiểm chứng trả về kết quả mô hình hệ thống không thỏa mãn các thuộc tính. Khi đó có thể do bản thiết kế hệ thống sai hoặc bị mô hình hóa sai.
Hướng phát triển tiếp theo của đề tài này có thể là áp dụng NuSMV để kiểm chứng mã nguồn phần mềm. Một hướng khác là xây dựng công cụ mô hình hóa tự động bản thiết kế phần mềm.
Tài liệu tham khảo
[1] B. Berard, M. Bidoit, A. Finkel, F. Laroussinie, A Petit, L. Petrucci, P. Schnoebelen. Systems and Software Verification: model-checking techniques and tools, 2001.
[2] R. C. Bjork. An Example of Object-Oriented Design: An ATM Simulation. http://www.math-cs.gordon.edu/courses/cs211/ATMExample.
[3] M. Bozga, C. Daws, O. Maler, A. Olivero, S. Tripakis, and S. Yovine. Kronos: A Model-Checking Tool for Real-Time Systems. Proceedings of the 10th international Conference on Computer Aided Verification (June 28 - July 02, 1998). A. J. Hu and M. Y. Vardi, Eds. Lecture Notes In Computer Science, vol. 1427. Springer-Verlag, London, 546-550.
[4] A. Cimatti, E. Clarke, F. Giunchiglia, M. Roveri. NuSMV: a new symbolic model checker.
[5] A. Cimatti, E. Clarke, E. Giunchiglia, F. Giunchiglia, M. Pistore, M. Roveri, R. Sebastiani, A. Tacchella. NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In Proceedings of the 14th international Conference on Computer Aided Verification (July 27 - 31, 2002).
[6] E. M. Clarke, Orna Grumberg and Doron A. Peled. Model Checking. MIT Press, 1999, ISBN 0-262-03270-8.
[7] H. Giese, Safety – Critical computer systems, AG Softwaretechnik, SCCS- VI-6x, 2003.
[8] G. J. Holzmann. The Model Checker SPIN. IEEE Trans. Softw. Eng. 23, 5 (May. 1997), 279-295.
[9] Kröger, Fred, Merz, Stephan, Temporal logic and state systems, Springer, 2008. ISBN: 978-3-540-67401-6.
[10] M. Mansouri-Samani, S. Pasareanu, J. Penix, C. Mehlitz, O. Malley, C. Visser, P. Brat, Z. Markosian and T. Pressburger. Program model checking: A practitioner’s guide, Intelligent Systems Division NASA Ames Research Center. April 27, 2007, pages. 31 – 45.