1. Trang chủ
  2. » Giáo án - Bài giảng

Chương 6 đặc tả hình thức

31 581 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 31
Dung lượng 1,29 MB

Nội dung

Chương Đặc tả hình thức Bùi Th H ng Ch ng c t hình th c Trang Mục tiêu ● ● ● Giải thích lý kỹ thuật đặc tả hình thức lại giúp hoàn thiện vấn đề yêu cầu hệ thống Mô tả cách sử dụng kỹ thuật đại số để đặc tả â giao diện Mô tả cách sử dụng kỹ thuật dựa vào mô hình để đặc tả hành vi Bùi Th H ng Ch ng c t hình th c Trang Các chủ đề ● ● ● Đặc tả hình thức qui trình phần mềm Đặc tả giao diện hệ thống Đặc tả hành vi Bùi Th H ng Ch ng c t hình th c Trang Các phương pháp hình thức ● ● ● Đặc tả hình thức phần tập hợp chung kỹ thuật “các phương pháp hình thức” Nhwngx kỹ thuật dựa vào biểu diễn toán học phân tích phần mềm Các phương pháp hình thức gồm • • • • Bùi Th H ng Đặc tả hình thức; Phân tích chứng minh hình thức; Phát triển phép biến đổi; Kiểm chứng chương trình Ch ng c t hình th c Trang Sự thừa nhận phương pháp hình thức ● Các phương pháp hình thức chưa trở thành kỹ thuật phát triển phần mềm chủ đạo dự đoán ban đầu • • • • Bùi Th H ng Các kỹ thuật công nghệ phần mềm khác thành công việc nâng cao chất lượng hệ thống Do nhu cầu phương pháp hình thức bị giảm sút; Những thay đổi thị trường làm cho yếu tố đáp ứng nhanh thị trường trở nên quan trọng yếu tố phần mềm lỗi Các phương pháp hình thức không giúp giảm bớt thời gian tung sản phẩm thị trường; Phạm vi phương pháp hình thức bị hạn chế Chúng không thiết kế tốt để đặc tả phân tích giao diện người sử dụng tương tác; Các phương pháp hình thức khó làm cho thích nghi với hệ thống lớn Ch ng c t hình th c Trang Sử dụng phương pháp hình thức ● ● ● Bùi Th H ng Lợi ích phương pháp hình thức giảm bớt sai sót hệ thống Vì vậy, lĩnh vực ứng dụng phương pháp công nghệ hệ thống quan trọng Trong lĩnh vực này, việc sử dụng phương pháp hình thức giúp giảm bớt đáng kể chi phí tránh việc xây dựng hệ thống không sử dụng Ch ng c t hình th c Trang Đặc tả qui trình phần mềm ● ● ● Đặc tả thiết kế hai qui trình tách rời Thiết kế kiến trúc khâu cần thiết để cấu trúc đặc tả qui trình Đặc tả hình thức diễn tả ký hiệu toán học với từ vựng, cú pháp ngữ nghĩa định nghĩa cách chặt chẽ xác Bùi Th H ng Ch ng c t hình th c Trang Đặc tả thiết kế In creasi n g tract or i n volvem en t Decreasi n g cl ien t in volvem en t U ser requ i rem en t s defi n it ion Syst em requ i rem en t s specifi cat ion Arch i tect u ral design Form al specifi cat ion H i gh -level design Specifi cat ion Desi gn Bùi Th H ng Ch ng c t hình th c Trang Đặc tả qui trình phần mềm Syst em requ irem en t s specifi cat ion U ser requ i rem en t s defi n it i on Form al speci fi cat ion ê Syst em m odell in g Bùi Th H ng Ch ng c t hình th c H igh -l evel design Arch it ect u ral design Trang Sử dụng đặc tả hình thức ● ● ● Bùi Th H ng Đặc tả hình thức việc cố gắng đầu tư mô tả hệ thống từ pha ban đầu qui trình phát triển phần mềm Việc làm giảm bớt sai sót xác định yêu cầu buộc người phát triển phải phân tích chi tiết yêu cầu Tính không đầy đủ không thống phát giải Ch ng c t hình th c Trang 10 Cấu trúc đặc tả đại số < SPECIFICATION NAME > sort < name > impor ts < LIST OF SPECIFICATION NAMES > Informal descr iption of the sor t and its oper ations Operation signatures setting out the names and the types of the parameters to the operations defined over the sort Axioms defining the ations oper over the sort Bùi Th H ng Ch ng c t hình th c Trang 17 Các thành phần đặc tả ● Giới thiệu • ● Mô tả • ● Định nghĩa cú pháp hoạt động giao diện tham số chúng Các tiên đề • Bùi Th H ng Mô tả hình thức hoạt động kiểu Ký hiệu • ● Định nghĩa kiểu (tên kiểu) khai báo đặc tả cần dùng khác Định nghĩa ngữ nghĩa hoạt động cách đưa tiên đề đặc trưng cho hành vi Ch ng c t hình th c Trang 18 Đặc tả đại số cho hệ thống ● Các đặc tả đại số hệ thống phát triển theo cách có hệ thống sau • Cấu trúc đặc tả; • Đặt tên đặc tả; • Lựa chọn hoạt động; • Đặc tả hình thức hoạt động; • Định nghĩa cú pháp; • Định nghĩa tiên đề Bùi Th H ng Ch ng c t hình th c Trang 19 Đặc tả hoạt động ● ● ● Các hoạt động xây dựng Các hoạt động tạo thực thể thuộc kiểu dặc tả Các hoạt động đánh giá Các hoạt động đánh giá thực thể thuộc kiểu đặc tả Để đặc tả hành vi cần phải định nghĩa hoạt động đánh giá cho hoạt động xây dựng Bùi Th H ng Ch ng c t hình th c Trang 20 Đặc tả LIST LIST ( Elem ) sort List imports INTEGER Defines a list where elements are added at the end and removed from the front The oper ations are Create , which br ings an empty list into existence , Cons, which creates a new list with an added member, Length, whichvaluates e the liste,siz Head, which evaluates the front element of the list, and Tail, which creates a list y remo b ving the head from its input list Undefined represents an undefined value of type Elem Create→ List Cons (List, Elem) → List Head (List)→ Elem Length (List)→ Integer Tail (List)→ List Head (Create) = Undefined exception (empty list) Head (Cons (L, v)) if =L = Createthen v elseHead (L) Length (Create) = Length (Cons (L, v)) = Leng th (L) + Tail (Create ) = Create Tail (Cons (L, v)) = if L = Create then Createelse Cons (Tail (L), v) Bùi Th H ng Ch ng c t hình th c Trang 21 Đệ qui đặc tả ● ● Các hoạt động thường đặc tả đệ qui Tail (Cons (L, v)) = if L = Create then Create else Cons (Tail (L), v) • • • • • • Bùi Th H ng Cons ([5, 7], 9) = [5, 7, 9] Tail ([5, 7, 9]) = Tail (Cons ( [5, 7], 9)) = Cons (Tail ([5, 7]), 9) = Cons (Tail (Cons ([5], 7)), 9) = Cons (Cons (Tail ([5]), 7), 9) = Cons (Cons (Tail (Cons ([], 5)), 7), 9) = Cons (Cons ([Create], 7), 9) = Cons ([7], 9) = [7, 9] Ch ng c t hình th c Trang 22 Đặc tả giao diện hệ thống quan trọng ● ● ● ● Bùi Th H ng Chúng ta xem xét hệ thống kiểm soát không lưu không phận (sector) có quản lý Trong vùng trời có số máy bay bay lý an toàn chúng phải bay cách xa Trong ví dụ người ta đưa khoảng cách theo chiều thẳng đứng 300 m Hệ thống cảnh báo người kiểm soát máy bay hướng dẫn vào vùng trời kiểm soát mà lại vi phạm khoảng cách an toàn nói Ch ng c t hình th c Trang 23 Đối tượng sector ● Bùi Th H ng Các hoạt động quan trọng đối tượng sector • Enter Thêm máy bay vào vùng kiểm soát; • Leave Rút máy bay khỏi vùng kiểm soát; • Move Chuyển máy bay từ độ cao sang độ cao khác; • Lookup Với định danh cho máy bay, cho độ cao nó; Ch ng c t hình th c Trang 24 Các hoạt động sơ đẳng ● ● ● Đôi cần phải đưa số hoạt động phụ trợ để đơn giản cho việc đặc tả Các hoạt động định nghĩa từ hoạt động sơ đẳng Các hoạt động sơ đẳng gồm • • • • Bùi Th H ng Create Tạo trường hợp đối tượng sector; Put Thêm máy bay mà không kiểm tra an toàn; In-space Xác định xem máy bay cho có vùng trời không; Occupied Với độ cao cho, xác định xem có máy bay nằm vùng 300m so với độ cao không Ch ng c t hình th c Trang 25 Đặc tả Sector(1) SECTOR sort Sector impor ts INTEGER, BOOLEAN Enter - adds an aircraft to the sector if safety conditions are satisfed Leave - removes an aircraft from the sector Move - moves an aircraft from one height to another if safe to so Lookup - Finds the height of an aircraft in the sector Create - creates an empty sector Put - adds an aircraft to a sector with no constraint checks In-space - checks if an aircraft is already in a sector Occupied - checks if a specified height is available Enter (Sector , Call-sign, Height)→ Sector Leave (Sector , Call-sign)→ Sector Move (Sector , Call-sign, Height)→ Sector Lookup (Sector , Call-sign)→ Height Create → Sector Put (Sector, Call-sign, Height)→ Sector In-space (Sector , Call-sign) → Boolean Occupied (Sector , Height) → Boolean Bùi Th H ng Ch ng c t hình th c Trang 26 Occu pi ed - ch ecks if a speci fi ed h ei gh t is available En t er ( Sect or , Call-sign , H eigh→t )Sect or Leave ( Sect or, Cal l-sign→ ) Sect or M ove ( Sect or, Call-sign , H eigh→t )Sect or Looku p ( Sect or, Cal l-sign→ ) H ei gh t Đặc tả Sector(2) Creat e → Sect or Pu t ( Sect or , Call-si gn , H eigh→ t ) Sect or In -space ( Sect or , Call-si gn )→ Boolean Occu pied ( Sect or , H eigh t )→ Boolean En t er ( S, CS, H ) = if In -space ( S, CSt )h en Sexcept ion ( Aircraft already i n sect or) elsi f Occu pied ( S, Ht )h en S except ion ( H eigh t fl ict ) else Pu t ( S, CS, H ) Leave ( Creat e, CS) = Creat except e ion ( Aircraft n ot i n sect or) Leave ( Pu t ( S, CS1, H 1) , CS) = if CS = CS1t h en S else Pu t ( Leave ( S, CS) , CS1, H 1) M ove ( S, CS, H ) = if S = Creat et h en Creat e except ion ( N o aircraft in sect or) elsif n ot In -space ( S, CS) t h en S except ion ( Aircraft n ot i n sect or) elsif Occu pied ( S, Ht )h en S except ion ( H eigh t fl i ct ) else Pu t ( Leave ( S, CS) , CS, H ) N O-HEIGH T is a st an t in dicat in g t h at a vali d h eigh t can n ot be ret u rn ed Looku p ( Creat e, CS) = N-HEIGH O T except ion ( Aircraft n ot in sect or) Looku p ( Pu t ( S, CS1, H 1) , CS) = if CS = CS1 t h en H 1else Looku p ( S, CS) Occu pi ed ( Creat e, H ) = false Occu pi ed ( Pu t ( S, CS1, H 1) , H ) = if ( H > Han d H - H Š 00) or ( H > H an d H - H Š00) t h en t ru e else Occu pi ed ( S, H ) In -space ( Creat e, CS) = false In -space ( Pu t ( S, CS1, H 1) , CS ) = if CS = CS1t h en t ru eelse In -space ( S, CS) Bùi Th H ng Ch ng c t hình th c Trang 27 Hướng dẫn đặc tả ● ● ● Bùi Th H ng Sử dụng phép xây dựng Create and Put để đặc tả hoạt động khác Định nghĩa Occupied In-space Create Put sử dụng chúng để tiến hành kiểm tra định nghĩa hoạt động khác Tất hoạt động dẫn đến thay đổi không phận phải kiểm tra để đảm bảo tiêu chuẩn an toàn Ch ng c t hình th c Trang 28 Đặc tả hành vi ● ● Bùi Th H ng Đặc tả đại số cồng kềnh hoạt động đối tượng độc lập với trạng thái đối tượng Các đặc tả dựa mô hình diễn tả trạng thái hệ thống định nghĩa hoạt động dạng thay đổi đối để chuyển tới trạng thái Ch ng c t hình th c Trang 29 Các điểm chìa khoá ● ● ● ● Đặc tả hệ thống hình thức bổ sung thêm vào kỹ thuật đặc tả hình thức Đặc tả hình thức xác rõ ràng Chúng loại bỏ băn khoăn, nghi đặc tả Đặc tả hình thức buộc người ta phải phân tích yêu cầu hệ thống từ giai đoạn đầu Sửa chữa sai sót giai đoạn đỡ tốn sửa chữa hệ thống sau chuyển giao Các kỹ thuật đặc tả hình thức thích hợp phát triển hệ thống quan trọng phát triển tiêu chuẩn Bùi Th H ng Ch ng c t hình th c Trang 30 Các điểm chìa khoá ● ● Các kỹ thuật đại số phù hợp để đặc tả giao diện giao diện định nghĩa tập hợp lớp đối tượng Các kỹ thuật dựa mô hình dùng để mô hình hoá hệ thống cách sử dụng tập hợp hàm Kỹ thuật làm đơn giản hoá số kiểu đặc tả hành vi Bùi Th H ng Ch ng c t hình th c Trang 31 [...]... Chi phí phát triển bằng đặc tả hình thức Cost Validation Design an d im plem en t at ion Validation Design an d im plem en tat ion Specifi cation Specifi cat ion Bùi Th H ng Ch ng 6 c t hình th c Trang 12 Các kỹ thuật đặc tả ● ● Bùi Th H ng Đặc tả đại số • Hệ thống được đặc tả bằng các hoạt động và các quan hệ của chúng Đặc tả dựa trên mô hình • Hệ thống được đặc tả bằng một mô hình trạng thái được xây... 18 Đặc tả đại số cho hệ thống ● Các đặc tả đại số của một hệ thống được phát triển theo cách có hệ thống như sau • Cấu trúc đặc tả; • Đặt tên đặc tả; • Lựa chọn hoạt động; • Đặc tả hình thức hoạt động; • Định nghĩa cú pháp; • Định nghĩa tiên đề Bùi Th H ng Ch ng 6 c t hình th c Trang 19 Đặc tả các hoạt động ● ● ● Các hoạt động xây dựng Các hoạt động tạo ra các thực thể thuộc kiểu đang được dặc tả Các... Đặc tả hành vi ● ● Bùi Th H ng Đặc tả đại số có vẻ khá cồng kềnh khi các hoạt động của đối tượng độc lập với trạng thái của đối tượng Các đặc tả dựa trên mô hình diễn tả trạng thái của hệ thống và định nghĩa các hoạt động dưới dạng những thay đổi đối để chuyển tới trạng thái đó Ch ng 6 c t hình th c Trang 29 Các điểm chìa khoá ● ● ● ● Đặc tả hệ thống hình thức bổ sung thêm vào các kỹ thuật đặc tả hình. .. thức bổ sung thêm vào các kỹ thuật đặc tả hình thức Đặc tả hình thức chính xác và rõ ràng Chúng loại bỏ những băn khoăn, nghi hoặc trong một đặc tả Đặc tả hình thức buộc người ta phải phân tích các yêu cầu hệ thống ngay từ giai đoạn đầu Sửa chữa các sai sót ở giai đoạn này sẽ đỡ tốn kém hơn sửa chữa hệ thống sau khi đã chuyển giao Các kỹ thuật đặc tả hình thức rất thích hợp khi phát triển các hệ thống... phương pháp đặc tả hình thức ● Bùi Th H ng Các chi phí của dự án khi sử dụng phương pháp đặc tả hình thức sẽ thay đổi so với phương pháp thông thường • Thời gian dành cho phát triển đặc tả sẽ nhiều hơn và do đó phải chi phí nhiều hơn trong thời gian đầu; • Tuy vậy, chi phí cho thực hiện và phê duyệt sẽ giảm vì qui trình đặc tả đã giảm bớt lỗi và sự không roc ràng trong các yêu cầu Ch ng 6 c t hình th c... 6 c t hình th c Trang 17 Các thành phần của đặc tả ● Giới thiệu • ● Mô tả • ● Định nghĩa cú pháp của các hoạt động trong giao diện và các tham số của chúng Các tiên đề • Bùi Th H ng Mô tả hình thức các hoạt động trên kiểu này Ký hiệu • ● Định nghĩa kiểu (tên kiểu) và khai báo các đặc tả cần dùng khác Định nghĩa ngữ nghĩa của hoạt động bằng cách đưa ra các tiên đề đặc trưng cho hành vi Ch ng 6 c t hình. .. hoặc các lớp đối tượng Cách tiếp cận đại số để đặc tả hình thức rất thích hợp cho việc đặc tả giao diện khi cần tập trung vào các hoạt động đã được định nghĩa trong một đối tượng Ch ng 6 c t hình th c Trang 15 Các giao diện hệ thống con In t er face obj ect s Su b-syst em A Bùi Th H ng Ch Su b-syst em B ng 6 c t hình th c Trang 16 Cấu trúc của một đặc tả đại số < SPECIFICATION NAME > sort < name >... động được định nghĩa bằng cách thay đổi trạng thái của hệ thống Ch ng 6 c t hình th c Trang 13 Ngôn ngữ đặc tả hình thức Bùi Th H ng Ch ng 6 c t hình th c Trang 14 Đặc tả giao diện ● ● ● ● Bùi Th H ng Các hệ thống lớn được phân tích thành các hệ thống con với các giao diện giữa các hệ thống con này được xác định một cách rõ ràng Đặc tả các giao diện hệ thống con cho phép phát triển độc lập các hệ thống... chuẩn Bùi Th H ng Ch ng 6 c t hình th c Trang 30 Các điểm chìa khoá ● ● Các kỹ thuật đại số rất phù hợp để đặc tả các giao diện khi các giao diện này được định nghĩa như một tập hợp các lớp đối tượng Các kỹ thuật dựa trên mô hình dùng để mô hình hoá hệ thống bằng cách sử dụng các tập hợp và các hàm Kỹ thuật này làm đơn giản hoá một số kiểu đặc tả hành vi Bùi Th H ng Ch ng 6 c t hình th c Trang 31 ... ng Ch ng 6 c t hình th c Trang 27 Hướng dẫn đặc tả ● ● ● Bùi Th H ng Sử dụng các phép xây dựng Create and Put để đặc tả các hoạt động khác Định nghĩa Occupied và In-space bằng Create và Put và sử dụng chúng để tiến hành các kiểm tra trong những định nghĩa của các hoạt động khác Tất cả các hoạt động dẫn đến sự thay đổi của không phận phải được kiểm tra để đảm bảo tiêu chuẩn an toàn Ch ng 6 c t hình th

Ngày đăng: 25/08/2016, 17:40

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w