1. Trang chủ
  2. » Luận Văn - Báo Cáo

Kiểm chứng hệ thống thời gian thực bằng công cụ kiểm chứng mô hình SAL

12 276 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 348,77 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN KHẮC CHUNG KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN KHẮC CHUNG

KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ

KIỂM CHỨNG MÔ HÌNH SAL

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI, 2015

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN KHẮC CHUNG

KIỂM CHỨNG HỆ THỐNG THỜI GIAN THỰC BẰNG CÔNG CỤ

KIỂM CHỨNG MÔ HÌNH SAL

Nghành : Công nghệ thông tin Chuyên nghành : Kỹ thuật phần mềm

Mã số : 60 48 01 03

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS ĐẶNG VĂN HƯNG

HÀ NỘI, 2015

Trang 3

LỜI CẢM ƠN

Trước tiên tôi xin bày tỏ lòng biết ơn sâu sắc tới TS Đặng Văn Hưng , giảng viên Bộ môn Công nghệ phần mềm - Khoa Công nghệ thông tin - Trường

Đa ̣i ho ̣c Công nghệ - ĐHQGHN.Trong thời gian ho ̣c và làm luận văn tốt nghiệp, thầy đã dành nhiều thời gian quý báu và t ận tình chỉ bảo , hướng dẫn tôi trong việc nghiên cứ u, thực hiện luận văn

Tôi xin được cảm ơn các GS , TS đã giảng da ̣y tôi trong quá trình ho ̣c t ập

và làm luận văn Các thầy cô đã giúp tôi hiểu thấu đáo hơn lĩnh vực mà mình nghiên cứu để có thể vận du ̣ng những kiến thức đó vào trong công tác của mình

Xin cảm ơn ba ̣n bè , đồng nghiệp trong công ty đã ta ̣o mo ̣i điều ki ện tốt nhất cho tôi trong suốt quá trình ho ̣c t ập và nghiên cứu để hoàn thành tốt bản luận văn tốt nghiệp này

Hà nội, tháng 11 năm 2015 Học viên thực hiện

Nguyễn Khắc Chung

Trang 4

LỜI CAM ĐOAN

Tôi xin cam đoan rằng , đây là kết quả nghiên cứu của tôi trong đó có sự giúp đỡ rất lớn của thầy hướng dẫn Các nội dung nghiên cứu và kết quả trong

đề tài này hoàn toàn trung thực

Trong luận văn, tôi có tham khảo đến một số tài liệu của một số tác giả đã được liệt kê ta ̣i phần tài liệu tham khảo ở cuối luận văn

Hà nội, tháng 11 năm 2015 Học viên thực hiện

Nguyễn Khắc Chung

Trang 5

MỤC LỤC

LỜI CẢM ƠN 1 Chương 1 GIỚI THIỆU 8

Chương 2 TỔNG QUAN VỀ KIỂM DUYỆT MÔ HÌNH Error! Bookmark not defined

2.1 Kiểm duyệt mô hình (model checking) Error! Bookmark not defined

2.1.1 Định nghĩa kiểm duyệt mô hình Error! Bookmark not defined

2.1.2 Quá trình chung cho việc kiểm duyệt mô hình Error! Bookmark not defined

2.1.2.1 Giai đoạn mô hình hóa Error! Bookmark not defined 2.1.2.2 Giai đoạn thực thi Error! Bookmark not defined 2.1.2.3 Giai đoạn phân tích Error! Bookmark not defined

2.1.3 Ưu điểm, nhược điểm của kiểm duyệt mô hình Error! Bookmark not defined

2.1.3.1 Ưu điểm Error! Bookmark not defined 2.1.3.2 Nhược điểm Error! Bookmark not defined

2.1.4 Các bước để kiểm duyệt mô hình Error! Bookmark not defined 2.2 Mô hình hóa hệ thống Error! Bookmark not defined

2.2.1 Hệ thống chuyển đổi Error! Bookmark not defined 2.2.1.1 Định nghĩa hệ thống chuyển đổi (transition system) Error! Bookmark not defined

2.2.1.2 Thực thi (run) Error! Bookmark not defined

2.2.2 Mô hình hóa hệ thống song song và giao tiếp Error! Bookmark not defined

2.2.2.1 Đồng thời và đan xen (Concurrency and Interleaving) Error! Bookmark not defined

2.2.2.2 Giao tiếp thông qua các biến dùng chung Error! Bookmark not defined

2.2.2.3 Bắt tay (handshaking) Error! Bookmark not defined 2.2.2.4 Hệ thống kênh truyền (Channel System) Error! Bookmark not defined

2.3 Đặc tả các tính chất hệ thống Error! Bookmark not defined

2.3.1 Tính an toàn (safety property) Error! Bookmark not defined

Trang 6

2.3.1.1 Khóa chết Error! Bookmark not defined 2.3.1.2 Bất biến (invariant) Error! Bookmark not defined

2.3.2 Tính sống (liveness property) Error! Bookmark not defined

2.4 Kiểm duyệt mô hình hệ thống thời gian thực (model checking real-time

system) Error! Bookmark not defined

2.4.1 Hệ thống thời gian rời rạc (Discrete-time System) Error! Bookmark not defined

2.4.2 Hệ thống thời gian dày đặc (Dense-time system) Error! Bookmark not defined

2.5 Logic Thời gian tuyến tính (Linear Temporal Logic) Error! Bookmark not defined

2.5.1 Logic thời gian tuyến tính Error! Bookmark not defined 2.5.1.1 Cú pháp (Syntax) Error! Bookmark not defined 2.5.1.2 Ngữ nghĩa (Semantic) Error! Bookmark not defined

2.5.2 Kiểm duyệt mô hình logic thời gian tuyến tính dựa trên otomat

Error! Bookmark not defined

Chương 3 TỔNG QUAN VỀ CÔNG CỤ KIỂM CHỨNG MÔ HÌNH SAL

(Symbolic Analysis Laboratory) Error! Bookmark not defined 3.1 Giới thiệu Error! Bookmark not defined

3.1.1 Môi trường SAL Error! Bookmark not defined

3.1.2 Bộ mô phỏng (Simulator) Error! Bookmark not defined

3.1.3 Bộ tìm kiếm đường (path finder) Error! Bookmark not defined

3.1.4 Ngôn ngữ đặc tả tính chất (Property Specification Language) của SAL

Error! Bookmark not defined

3.1.4.1 Bộ kiểm tra mô hình biểu tượng (symbolic model checker) Error! Bookmark not defined

3.1.4.2 Bộ kiểm tra mô hình chặn (bounded model checker) Error! Bookmark not defined

3.2 Ngôn ngữ diễn đạt (Expression Language) Error! Bookmark not defined

3.2.1 Kiểu (Type) Error! Bookmark not defined 3.2.1.1 Kiểu dữ liệu cơ bản Error! Bookmark not defined 3.2.1.2 Dữ liệu kiểu cấu trúc Error! Bookmark not defined

Trang 7

3.2.2 Biểu thức (Expression) Error! Bookmark not defined 3.3 Ngôn ngữ chuyển đổi (The Transition Language) Error! Bookmark not defined

3.3.1 Định nghĩa (Definition) Error! Bookmark not defined

3.3.2 Câu lệnh bảo vệ (Guarded Command) Error! Bookmark not defined

3.3.3 Ngôn ngữ mô đun (The Module Language) Error! Bookmark not defined

3.3.3.1 Mô đun cơ sở (Base Module) Error! Bookmark not defined 3.3.3.2 Thao tác biến biến trạng thái Error! Bookmark not defined 3.3.3.3 Thành phần mô đun Error! Bookmark not defined 3.3.3.4 Khai báo mô đun Error! Bookmark not defined 3.4 Đặc trưng chính của SAL Error! Bookmark not defined Chương 4 ỨNG DỤNG Error! Bookmark not defined 4.1 Bài toán hệ thống công tắc đèn Error! Bookmark not defined

4.1.1 Mô tả bài toán Error! Bookmark not defined

4.1.2 Mô hình và kiểm duyệt hệ thống công tác đèn trong SAL Error! Bookmark not defined

4.1.2.1 Mô hình hóa Error! Bookmark not defined 4.1.2.2 Kiểm duyệt các tính chất Error! Bookmark not defined 4.2 Bài toán hệ thống thang máy đơn giản Error! Bookmark not defined

4.2.1 Mô tả bài toán Error! Bookmark not defined

4.2.2 Mô hình và kiểm duyệt hệ thống thang máy trong SAL Error! Bookmark not defined

4.2.2.1 Mô hình hóa Error! Bookmark not defined 4.2.2.2 Kiểm duyệt các tính chất Error! Bookmark not defined Chương 5 KẾT LUẬN Error! Bookmark not defined

TÀI LIỆU THAM KHẢO 9

PHỤ LỤC Error! Bookmark not defined

Trang 9

DANH MỤC HÌNH VẼ

Hình 2-1: Tổng quan về kiểm duyệt mô hình Error! Bookmark not defined Hình 2-2: Máy bán đồ uống tự động Error! Bookmark not defined Hình 2-3: Ví dụ mô tả interleaving của 2 đèn giao thông Error! Bookmark not defined

Hình 2-4: Ví dụ mô tả biến dùng chung Error! Bookmark not defined Hình 2-5: Ngữ nghĩa của phương thức thời gian Error! Bookmark not defined Hình 2-6: Ví dụ về logic thời gian tuyến tính Error! Bookmark not defined Hình 2-7: Tổng quan về kiểm duyệt mô hình logic thời gian tuyến tính Error! Bookmark not defined

Hình 3-1: Ví dụ SAL simulator Error! Bookmark not defined Hình 3-2: Ví dụ về sal path finder Error! Bookmark not defined Hình 3-3: Ví dụ về kiểm chứng các tính chất sử dụng sal-smc Error! Bookmark not defined

Hình 3-4: Ví dụ sử dụng bounded model checker Error! Bookmark not defined

Hình 3-5: Cấu trúc mô đun Error! Bookmark not defined Hình 4-1: Mô hình hệ thống công tác đèn Error! Bookmark not defined Hình 4-2: Mô hình cửa thang máy Error! Bookmark not defined Hình 4-3: Mô hình thang máy Error! Bookmark not defined

Trang 10

BẢNG CÁC CHỮ VIẾT TẮT

Automaton

Trang 11

Chương 1 GIỚI THIỆU

Ngày nay, sự phát triển của các hệ thống kỹ thuật thông tin và truyền thông ngày càng nhiều và đa dạng Các hệ thống này ngày càng trở nên phức tạp

và đi sâu vào cuộc sống hàng ngày của chúng ta chẳng hạn như máy tính xách tay, điện thoại di động, các loại tivi cao cấp và các đồ dùng hằng ngày như máy giặt, lò vi sóng Vì thế, sự phụ thuộc của chúng ta ngày càng tăng và chặt chẽ hơn vào các hệ thống thông tin làm cho độ tin cậy của các hệ thống ngày càng yêu cầu cao

Để xây dựng phần mềm có chất lượng cao cần tuân thủ việc đảm bảo chất lượng phần mềm Trong đó việc đảm bảo tính đúng đắn của thiết kế ở giai đoạn sớm đóng vai trò mấu chốt cho việc đảm bảo chất lượng trong quá trình phát triển phần mềm Kĩ thuật kiểm duyệt hệ thống đang được áp dụng để kiểm duyệt thiết kế hệ thống nhằm tăng độ tin cậy của hệ thống

Trong nhiều năm qua việc nghiên cứu các phương pháp hình thức đã dẫn đến sự phát triển của một số kỹ thuật kiểm duyệt và tạo thuận lợi cho việc phát hiện lỗi sớm Các kĩ thuật kiểm duyệt này được cài đặt thành các công cụ có thể được sử dụng một cách tự động ở các giai đoạn khác nhau của việc phát triển phần mềm

Hiện nay có rất nhiều công cụ kiểm duyệt mô hình phần mềm như SAL, SPIN, NuSMV, PAT, UPPAAL SAL có thể kiểm duyệt hệ thống thời gian thực bằng cách thêm biến đếm đồng hồ vào tiến trình thời gian để đặc tả các ràng buộc thời gian với các quá trình chuyển đổi Nội dung của đề tài là nghiên cứu các lý thuyết cơ bản về kiểm duyệt mô hình, các kinh nghiệm sử dụng công

cụ kiểm duyệt mô hình SAL và sử dụng SAL để kiểm duyệt mô hình hệ thống trong thực tế

Trang 12

TÀI LIỆU THAM KHẢO TIẾNG ANH

[1] Christel Baier Joost-Pieter Katoen (2008), Principles of Model Checking,

MIT Press, Printed and bound in the United States of America, pp.19-26, 35-55,

89 -99, 151-152, 159-167, 170 -180, 188-193, 229-233

[2] Liu Yang (2009), “MODEL CHECKING CONCURRENT AND

REAL-TIME SYSTEMS: THE PAT APPROACH”, A thesis submitted for the degree

of doctor of philosophy department of computer science national university of Singapore, pp.20-22

[3] Saddek Bensalem, Vijay Ganesh, Yassine Lakhnech, Cesar Munoz, Sam Owre, Harald Rueß, John Rushby, Vlad Rusu, Hassen Saidi, N Shankar, Eli

Singerman, Ashish Tiwari (2000), “An Overview of SAL”, LFM 2000: Fifth

[4] Lee Pike (2007), ”Model Checking for the Practical Verificationist”,

Automated Formal Methods(AFM07), pp.1-2, 4-5

[5] Leonardo de Moura, Sam Owre, N Shankar (2003), The SAL Language Manual (Rev.2), SRI International, Computer Science Laboratory, 333

Ravenswood Avenue, Menlo Park, pp.5-23

[6] Leonardo de Moura (2004), SAL: Tutorial Computer Science Laboratory,

SRI International, Computer Science Laboratory, 333 Ravenswood Avenue, Menlo Park, pp.3-4, 6-10

[7] S Owre, N Shankar, J M Rushby, D W J Stringer - Calvert (November

2001), PVS Language Reference, Version 2.4, SRI International, Computer

Science Laboratory, 333 Ravenswood Avenue, Menlo Park, pp.11-17, 37-42

Ngày đăng: 27/08/2016, 22:33

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w