Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 27 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
27
Dung lượng
1,39 MB
Nội dung
Chương Giới thiệu 1.1 Đặt vấn đề Phát triển phần mềm thờigianthực dựa thànhphần đóng vai trò quan trọng lĩnh vực cơng nghệ phần mềm Tuy nhiên, phương pháp đề xuất hạn chế thiếu mơ hìnhthànhphần cho thànhphầnphần mềm thờigian thực, làm để đặc tả, phân tích đánh giá, kiểmchứng tương tác thànhphầnphần mềm với với môi trường chúng khía cạnh chức phi chức Luận án nghiên cứu đề xuất kỹthuật để giải toán Thứ nhất, luận án đề xuất mơ hình cho thànhphầnphần mềm thờigianthực với thể thức tương tác tương tranh thờigian (timed concurrent interaction protocol), bổ sung đặc tả tài nguyên vào thể thức tương tác tương tranh nhằm lập luận cho tính sử dụng hiệu nguồn tài nguyên hệthống Thứ hai, luận án đề xuất mở rộng lý thuyết giao diện thànhphần trở thành lý thuyết giao diện thờigianthực nhằm mô hình hóa đặc tả hoạt động hệthốngthờigianthực dựa thànhphần Thứ ba, luận án áp dụng lý thuyết "tính đắn cách xây dựng" lý thuyết "thiết kế hợp đồng" để đề xuất kỹthuật đặc tả mơ hình hóa hệthốngthờigianthực hợp đồng thờigian hợp đồng thờigian ràng buộc tài nguyên nhằm phân tích, đánh giá hệthốngthờigianthực dựa hợp đồng hai khía cạnh chức phi chức Bên cạnh đó, luận án đề xuất ngôn ngữ đặc tả thờigianthực gia tăng tính khả thi lý thuyết đề xuất 1.2 Các kết luận án Luận án có ba kết trình bày sau Luận án mở rộng mơ hình PECOS (PErvasive COmponent Systems) cho thànhphầnphần mềm thờigianthực với mục đích tạo mơ hình áp dụng cho nhiều hệthống có tảng phần cứng khác Luận án đề xuất mơ hình cho thànhphầnphần mềm thờigianthực với thể thức tương tác tương tranh thờigian (timed concurrent interaction protocol), bổ sung đặc tả tài nguyên vào thể thức tương tác tương tranh nhằm lập luận cho tính sử dụng hiệu nguồn tài nguyên hệthống Luận án mở rộng lý thuyết giao diện thànhphần với ràng buộc thờigian để đặc tả mơ hình hóa thànhphầnphần mềm thờigianthực Luận án sử dụng ôtômát thời khoảng để biểu diễn hữu hạn dãy hành vi giao diện thànhphần môi trường thờigianthực nhằm mục đích phân tích, đánh giá khía cạnh tính chất làm mịn, phép ghép phép cắm môi trường vào thànhphầnphần mềm Luận án đề xuất kỹthuật cải tiến đặc tả thànhphầnphần mềm hợp đồng thờigian hợp đồng thờigian với ràng buộc tài nguyên nhằm phân tích đánh giá đầy đủ tính chất thànhphầnphần mềm hai khía cạnh chức phi chức Do đó, thànhphầnphần mềm thờigianthực thiết kế xem xét cách đầy đủ Luận án đề xuất ngôn ngữ đặc tả thờigianthực mẫu nhằm hợp ngôn ngữ đặc tả thờigianthực với đầy đủ tính đặc tả phần chức phi chức cho thànhphầnphần mềm Bằng cách này, thànhphầnphần mềm thờigianthực đặc tả đầy đủ làm sở cho cho việc nâng cao chất lượng phần mềm Tất đóng góp luận án hướng đến việc tìm kỹthuậtphân tích, đánh giá kiểmchứnghệthốngthờigianthực dựa thànhphầnCác kết nghiên cứu luận án có mối liên hệ chặt chẽ với việc tích hợp tạo thành giải pháp hoàn chỉnh từ việc đề xuất mơ hìnhphần mềm thờigianthực đến thể thức tương tác tương tranh mơ hìnhkỹthuật đặc tả mơ hình hóa hệthốngthờigianthực lý thuyết giao diện hợp đồng thờigianthực đề xuất ngôn ngữ đặc tả thờigianthực mẫu Như vậy, kết luận án hướng đến giải pháp đầy đủ cho việc đặc tả, mơ hình hóa kiểmchứng tính đắn hệthốngthờigianthực dựa thànhphần 1.3 Bố cục luận án Các nội dung lại luận án tổ chức sau: Chương trình bày kiến thức khái niệm phát triển hệthống dựa thànhphần Chương trình bày mơ hìnhthànhphầnphần mềm thể thức tương tác tương tranh thànhphầnphần mềm thờigian thực, với thuật toán kiểmchứng tuân thủ dãy hành vi môi trường hệthống với thể thức tương tác thànhphầnphần mềm hai khía cạnh chức phi chức Chương trình bày kỹthuật đặc tả giao diện thànhphầnphần mềm thờigianthực quan hệ đầu vào đầu thànhphầnphần mềm Chương trình bày đặc tả dịch vụ thànhphầnphần mềm thờigianthực với thiết kế thờigian Chương trình bày kỹthuật đặc tả yếu tố chức phi chức nhằm phân tích đánh giá chất lượng dịch vụ dựa ràng buộc phi chức năng, đồng thời ước lượng tài nguyên hệthống tiêu thụ sử dụng trình hoạt động từ giai đoạn đầu phát triển hệthốngphần mềm Chương 7, luận án tổng kết kết nghiên cứu hướng phát triển Chương Các kiến thức 2.1 Phần mềm hướngthànhphần 2.1.1 Kỹ nghệ phần mềm dựa thànhphần Phát triển phần mềm dựa thànhphần có số dặc điểm sau: (i) Là đơn vị phần mềm độc lập, thực thi chức đầy đủ (ii) Có tính ẩn hệthống bên Một thànhphầnphần mềm quan sát thông qua giao diện chúng Khi tương tác với thànhphần khác thông qua thỏa thuận gọi hợp đồng (iii) Là chủ thể cho nhiều mục đích sử dụng khác Một thànhphầnphần mềm thiết kế cài đặt cho chức thànhphần tái sử dụng phục vụ nhiều hệthống khác (iv) Thànhphầnphần mềm tái sử dụng thay thànhphầnphần mềm khác 2.1.2 Tính đắn cách xây dựng Là kỹthuật phát triển phần mềm dựa việc đặc tả thànhphầnphần mềm cho thànhphầnphần mềm ghép với hệthống khơng lỗi, phương pháp tiếp cận biến thànhphầnphần mềm dạng mơ hình tốn học để chứng minh 2.1.3 Kiến trúc hệthốngphần mềm dựa thànhphần 2.2 Hệthốngthờigianthực Theo tổng kết tác giả M Timmerman L Perneel cho thấy có nhiều cách định nghĩa hệthốngthờigianthực theo tác giả hệthốngthờigianthựchệ thống:" phản ứng theo cách đốn trước (kịp thời) kích thích khơng dự đốn đến từ bên ngồi." 2.2.1 Ơtơmát thờigian Mọi hoạt động giới phụ thuộc vào thời gian, mức hoạt động yếu tố thờigian có xem xét ẩn tùy thuộc vào toán cần giải Định nghĩa 2.1 (Ơtơmát thời gian) Ơtơmát thờigian M = L, Σ, , , T, Γ , L tập vị trí, Σ bảng chữ cái, vị trí khởi tạo, tập đồng hồ, T : L × Σ × Φ( ) × × L bảng chuyển, Γ tập vị trí chấp nhận Sự dịch chuyển ôtômát thờigian có hai hìnhthức d (i) Thờigian trôi: , ν → − , ν + d với d ∈ R≥0 (ii) Dịch chuyển rời rạc: , ν → −e , ν tồn dịch chuyển e = , a, φ, , ∈ T cho ν |= φ, φ ∈ Φ( ), ν = [ → 0]ν 2.2.2 Ơtơmát trọng số Ơtơmát trọng số mở rộng ôtômát thờigian cho phép tính tốn chi phí cho hoạt động hệthốngthờigianthực 2.3 Kiểmchứnghệthốngthờigianthực 2.3.1 Đặc tả mô hình hóa hệthống Đặc tả mơ hình hóa bước quan trọng kiểmchứngphần mềm Hiện nay, kỹthuật có nhiều ưu điểm đặc tả thànhphầnphần mềm sử dụng lý thuyết giao diện lý thuyết hợp đồng Để mơ hình hóa hệthốngthờigian thực, người ta sử dụng ôtômát thờigiankỹthuật tương đương để làm mơ hìnhhệthống 2.3.2 Đặc tả tính chất hệthống Khi kiểm chứng, tính chất hệthốngthờigianthực đặc tả hệ logic thờigian Phương pháp dùng hệ toán mệnh đề Hệ toán mệnh đề mệnh đề hóa phát biểu ký hiệu từ kết hợp với phép tốn logic hìnhthành nên cơng thức logic mệnh đề Bài tốn chứng minh cơng thức logic đồng đúng, đồng sai có ứng dụng lớn việc chứng minh chương trình máy tính chạy hay sai 2.3.3 Bài tốn kiểm tra tính rỗng Kỹthuậtkiểm tra tính rỗng ngơn ngữ kỹthuật cơng cụ kiểmchứngphần mềm Tư tưởng kỹthuật xây dựng ngôn ngữ phần bù tính chất cần kiểm tra sau lấy tích đồng với ngơn ngữ mơ hình cần kiểm tra Nếu tích đồng rỗng khẳng định mơ hìnhhệthống thỏa tính chất cần kiểm tra Phổ biến, người ta dùng ôtômát thờigian mô hìnhhệthống sử dụng loại logic để đặc tả tính chất hệthống 2.4 Cơng cụ kiểmchứnghệthốngthờigianthực Hiện có nhiều cơng cụ cho kiểmchứnghệthốngthờigianthực UPPAAL, Kronos, HyTech, v.v Các công cụ áp dụng ô tô mát thờigian ôtômát lai (Hybrid automata) 2.5 Tổng kết chương Chương trình bày kiến thức bản, xếp cách hệthống làm sở cho nghiên cứu phần luận án Chương Mơ hìnhthànhphầnphần mềm thờigianthực thể thức tương tác tương tranh 3.1 Giới thiệu Luận án mở rộng mơ hình PECOS cách bổ sung thể thức tương tác tương tranh thờigianthực với khả đặc tả thànhphần chức phi chức Dựa cách tiếp cận Tính đắn dựa cách xây dựng Thiết kế hợp đồng sử dụng để đặc tả thànhphầnphần mềm thờigianthực hợp đồng thờigian 3.2 Mơ hìnhthànhphầnphần mềm thờigianthựcCác kiện Trong phần này, luận án trình bày kiến trúc thànhphần mơ hình mà luận án muốn phát triển minh họa hình 3.1 Các chuỗi hành vi Phần chủ động Giao diện hệthốngCác tiến trình Phần thụ động Giao diện thànhphầnHình 3.1: Minh họa mơ hìnhphần mềm 3.3 Thể thức tương tác tương tranh ràng buộc thờigian 3.3.1 Thể thức tương tác tương tranh Thể thức tương tác tập quy tắc quy định cách thức dịch vụ (phương thức) thànhphầnphần mềm thực thi gồm thứ tự lời gọi ràng buộc kèm theo ràng buộc thời gian, tài nguyên hệthống Và cách thức dịch vụ thực thi song song, hay nối tiếp Do đó, thể thức tương tác định nghĩa sau: Định nghĩa 3.1 (Thể thức tương tác) Một thể thức tương tác π (Σ1 , E1 ), , (Σk , Ek ), δ Trong δ : Ω → R≥0 , với i = 1, k, Ei biểu thức quy bảng chữ Σi Định nghĩa 3.2 (Sự tuân thủ thể thức) Một từ thờigian ω = (a1 , τ1 )(a2 , τ2 ) (an , τn ) tuân thủ thể thức π, ký hiệu ω |= π với i ≤ k (i) untimed(ω)|Σi ∈ L(Ei ), (ii) đặt untimed(ω) = aj1 aj2 ajmi , τjl+1 − τjl ≥ δ(ajl ) với l < mi 3.3.2 Phép chiếu Giả sử cho chuỗi ζ = abcdeabd tập hợp phần tử Σ = {a, b, c, d}, ζ|Σ xâu nhận từ xâu ζ cách loại phần tử khơng thuộc Σ Ta có ζ|Σ = abcdabd 3.3.3 Thuật tốn kiểmchứng tính cắm Môi trường muốn sử dụng dịch vụ từ thànhphầnphần mềm mơi trường phải tn thủ thể thứcthànhphầnphần mềm Cho ôtômát thờigian M = L, , Σ, , T, Γ Đặt L(M ) ngôn ngữ môi trường, L(P(M )) ngôn ngữ ôtômát vùng M Ta có kết sau: Định lý 3.1 (i) Đối với ôtômát thờigian M , untimed(L(M )) = L(P(M )) Do đó, tốn định ôtômát M định (ii) Nếu s0 , ν0 −→eτ11 s1 , ν1 −→eτ22 −→eτmm sm , νm dãy thực thi từ trạng thái ban đầu M s0 , [ν0 ] −→e1 s1 , [ν1 ] −→e2 −→em sm , [νm ] dãy thực thi P(M ), trái lại, s0 , [ν0 ] −→e1 s1 , [ν1 ] −→e2 −→em sm , [νm ] dãy thực thi P(M ) tồn τ1 , , τm cho s0 , ν0 −→eτ11 s1 , ν1 −→eτ22 −→eτmm sm , νm dãy thực thi từ trạng thái ban đầu M Đối với ơtơmát M , kích thước M (số dịch chuyển vị trí) ký hiệu |M | Bây quay trở lại toán định được, untimed(L(A))|Σi ⊆ L(Ei ) ôtômát thờigian A cho Điều toán định giải được, hệ Định lý 3.1 Định lý 3.2 Cho biểu thức quy Ei ơtơmát thờigian A, toán untimed(L(A))|Σi ⊆ L(Ei ) định thờigian O(|P(A)|.|L(Ei )|) Định lý 3.3 Bài toán “liệu ôtômát thờigian A cho tuân thủ thể thức tương tác tương tranh thờigianthực π” định thờigian O(|P(A )|2 ) 3.4 Thể thức tương tác thờigianthực ràng buộc tài nguyên 3.4.1 Thể thứcthờigian tài nguyên Mỗi dịch vụ Ω cần khoảng thờigian để thực thi, tiêu thụ sử dụng lượng tài nguyên Đặt R≥0 tập số thực không âm biểu diễn miền thờigian Đặt RES tập véc tơ, RES = {res1 , res2 , , resh }, véc tơ resi , i = 1, h, có n phần tử, phần tử số nguyên đại diện cho đại lượng tài nguyên mà biểu diễn Mỗi véc tơ resi liên quan đến dịch vụ thứ i thànhphầnphần mềm Các yếu tố thờigian yếu tố tài nguyên đặc tả cặp ánh xạ ð=(ðt , ðR ), ðt : Ω → R≥0 , ðR : Ω → RES Do đó, thể thức định nghĩa sau: Định nghĩa 3.3 (Thể thức tương tác thờigian tài nguyên) Một thể thức tương tác ℘ (Σ1 , E1 ), , (Σk , Ek ), ð Trong ð=(ðt , ðR ), ðt : Ω → R≥0 , ðR : Ω → RES, với i = 1, k, Ei biểu thức quy bảng chữ Σi Các ràng buộc tài nguyên bị tăng giảm trình hệthống hoạt động Luận án cần bổ sung phép toán việc tính tốn tùy thuộc vào loại tài ngun Tiêu thụ Chiếm dụng phép ghép song song nối tiếp thànhphầnphần mềm Phép toán ⊕ minh họa bảng sau Bảng 3.1: Liệt kê toán tử tăng giảm ước lượng thànhphần tài nguyên Toán tử ⊕ Loại tài nguyên Chiếm dụng Tiêu thụ Chiếm dụng Tiêu thụ Tiêu chuẩn R1|u + R2|u R1|c + R2|c R1|u − R2|u R1|c − R2|c Ghép song song +R1|u + R2|u +R1|c + R2|c −R1|u − R2|u −R1|c − R2|c Ghép nối tiếp +M ax(R1|u , R2|u ) +R1|c + R2|c −M ax(R1|u , R2|u ) −R1|c − R2|c Định nghĩa 3.4 (Sự tuân thủ thể thứcthờigian tài nguyên) Một từ trọng số ω = (a1 , t1 , r1 )(a2 , t2 , r2 ) (an , tn , rn ) tuân thủ thể thức ℘, ký hiệu ω |= ℘ với i ≤ k (i) unpricedtimed(ω)|Σi ∈ L(Ei ), (ii) đặt unpricedtimed(ω)|Σi = aj1 aj2 ajmi , tjl+1 −tjl ≥ ðt (ajl ), rjl+1 rjl ≥ ðR (ajl ), với l < mi 3.4.2 Mơ hình hóa tn thủ thể thứcthờigian tài ngun 3.4.2.1 Ơtơ mát trọng số ràng buộc tài nguyên Phần luận án trình bày ơtơmát trọng số ràng buộc tài ngun, sử dụng để mơ hình hóa chuỗi hành vi môi trường với ràng buộc tài nguyên Định nghĩa ôtômát trọng số ràng buộc tài nguyên khái qt sau: Định nghĩa 3.5 (Ơtơmát trọng số ràng buộc tài nguyên) Một ôtômát trọng số tập hữu hạn đồng hồ tập hữu hạn thànhphần tài nguyên R M = (L, , Σ, , T, λ, Γ), L tập vị trí, vị trí khởi tạo, T ⊆ L × Σ × Φ( ) × × L tập dịch chuyển, Γ tập vị trí chấp nhận được, λ : L ∪ T → R ∪ RES gán cạnh giá trị thànhphần tài nguyên RES tương ứng với hành động bảng chữ Σ, gán vị trí giá trị R Một trạng thái ôtômát trọng số ràng buộc tài nguyên , ν , ∈ L, ν ∈ R≥0 Ánh xạ λ gán nhãn giá trị tài nguyên ðR (ai ) = resi sử dụng cho hành động lên cạnh ôtômát gán giá trị tài nguyên lại ri ∈ R hệthống cho vị trí i ơtơmát d Thờigian trôi: , ν → − , ν + d với d ∈ R≥0 , d λ( , ν ) = λ( , ν → − , ν + d ) Ánh xạ λ gán r |c (d ⊗ ðR ) lên vị trí , phép toán ⊗, d nhân với thànhphần tiêu thụ res, giá trị thànhphần chiếm dụng giữ nguyên Dịch chuyển rời rạc: , v → −e , , ν tồn dịch chuyển e = , a, φ, , ∈ T cho ν |= φ, ν = [ → 0]ν, λ( , ν ) = λ( , ν → −e , ν ), r = r ðR (a) 3.4.2.2 Ơtơ mát trọng số vùng tài ngun Cho ôtômát trọng số ràng buộc tài nguyên M Một trạng thái đến ôtômát vùng trọng số tài nguyên cặp , Z , Z vùng vị trí Trạng thái , Z biểu diễn tập tất trạng thái , ν ν ∈ Z Khi Z vùng tập đồng hồ, ⊆ Ký hiệu Z d tập phép gán giá trị đồng hồ trường hợp thờigian trôi Z tập phép gán đồng hồ thiết lập lại giá trị Đó là, Z d = {ν + d | ν ∈ Z, d ∈ R≥0 } Z = {[ → 0]ν | ν ∈ Z} Cho trạng thái , Z , đặt ∆Z phép định giá đồng hồ vùng Z thỏa ∀ν ∈ Z.∀x ∈ ∆Z (x) ≤ ν(x) Định nghĩa 3.6 Một vùng trọng số ràng buộc tài nguyên Z (Z, µ, η), Z vùng, µ ∈ N miêu tả độ lệch tương đối ∆Z vùng Z, η : → R tính giá trị tài nguyên η(x) cho đồng hồ x Đặt ν ∈ Z ν ∈ Z Với ν ∈ Z chi phí phép gán ν Z, ký hiệu Cost(ν, Z), tính µ ⊗ ðR ⊕ x∈ η(x) ⊗ (ν(x) − ∆Z (x)) 3.4.2.3 Sự tuân thủ thể thứcthờigian tài nguyên Định lý 3.4 Cho môi trường E mơ hình hóa ơtơmát trọng số rang buộc tài nguyên A thànhphầnphần mềm C với thể thức ℘ E cắm vào C L(A) |= ℘ Độ phức tạp thuật toán thờigian tính sau O(|P Z(A )|.|L(E)i |) 3.5 Tổng kết chương Chương đề xuất mô hìnhphần mềm thờigianthực dựa thànhphần áp dụng cho nhiều hệthốngthờigianthực có tảng phần cứng khác đề xuất thể thức tương tác tương tranh sử dụng để biểu diễn tương tác thànhphầnphần mềm thànhphầnphần mềm với mơi trường khía cạnh chức phi chức I1 Y1 X2 I2 X1 X2 I1 Delay X1 I2 Y Y Y2 Hình 4.2: Minh họa phép song song (a) phép nối tiếp (b) Định lý 4.3 Đặt I, I I giao diện, θ θ phép ghép tương ứng I với I I với I Suy điều sau đúng: (i) I||I ≡ I ||I, (ii) (I||I )||I ≡ I||(I ||I ), (iii) (I.θ I ).θ I ≡ I.θ (I θ I ) 4.3 Sự làm mịn giao diện thànhphần Sự làm mịn giao diện có nghĩa giao diện thay giao diện có chất lượng tốt Dựa logic Hoare, định nghĩa làm mịn giao diện sau: Định nghĩa 4.8 Đặt I = X, Y, ξ I = X , Y , ξ hai giao diện I làm mịn I (hoặc I làm mịn I), ký hiệu I I , X = X , Y = Y với s ∈ S(I) ∩ S(I ) điều sau đúng: in(ξf (s)) ⇒ in(ξf (s)), in(ξf (s)) ∧ ξf (s) ⇒ ξf (s), ξτ (s) ⊆ ξτ (s) Do vậy, I cung cấp dịch vụ tốt theo nghĩa cung cấp dịch vụ cho môi trường với điều kiện lỏng môi trường hợp đồng giao diện Định lý sau kiểmchứng định nghĩa làm mịn giao diện Định lý 4.4 Đặt I I , môi trường E cắm vào I Thì mơi trường E cắm vào I S(E, I ) ⊆ S(E, I) Các phép ghép giao diện định nghĩa Phần 4.2 bảo toàn làm mịn phát biểu Định lý 4.5 (Bảo toàn làm mịn) Đặt I, I I giao diện cho I I , phép ghép || θ phép ghép nối tiếp I I Giả sử điều kiện cho phép ghép thỏa (I||I ) (I ||I ) (I.θ I ) (I θ I ) 4.4 Mơ hình hóa hành vi giao diện Do hành vi giao diện thànhphầnthờigianthực vô hạn, cần mơ hình hóa hành vi để kiểm sốt chất lượng dịch vụ thànhphầnphần mềm môi trường sử dụng 11 Định nghĩa 4.9 (Ơtơmát khoảng) Một ơtơmát khoảng tập đầu vào X, đầu Y MI = Q, Σ, X, Y, q0 , T, Λ, Γ , X ∩ Y = ∅, gồm Q tập hữu hạn trạng thái, Σ tập hữu hạn hành động, q0 ∈ Q trạng thái khởi tạo M, T ⊆ S × Σ × S tập quan hệ dịch chuyển thời gian, Λ = (Λf , Λτ ), Λf : S → F(X ∪ Y ) hàm gán nhãn trạng thái M với biểu thức logic tân từ cấp mối quan hệ đầu vào X với đầu Y , Λτ : S → Intv gán nhãn thờigian lên trạng thái M Γ ⊆ Q tập trạng thái kết thúc Để ôtômát khoảng giao diện biểu diễn hành vi giao diện thành phần, luận án định nghĩa giao diện cho ôtômát khoảng sau: Định nghĩa 4.10 (Ơtơmát khoảng giao diện) Một ơtơmát khoảng giao din I(MI ) l b ba X {ă x}, Y {ă y }, ú X Y tập hữu hạn tương ứng với đầu vo v õu xă l bin mi trờn hnh ng , v yă l bin mi trờn trạng thái Q Quan hệ ξ(σ.(a, τ )) = (Λf (s) (s,c,s )T (ă x = c) y = s ), Λτ (s)), τ ∈ Λτ (s), ú a(ă y ) = s v l dóy tớnh toỏn dn n (ă s nh ngha 4.11 Mt dãy thực thi ôtômát khoảng giao diện x}, Y {ă y }, l mt dóy cỏc trạng thái s1 s2 sn cho I(M ) = X {ă |= f (si ) τi ∈ Λτ (si ), si = (ai , τi ) ξ(s1 si−1 ) = Λi , i = 1, n Tập tất trạng thái I(M ) ký hiệu S(I(M )) Định nghĩa 4.12 (Ơtơmát khoảng cho mơi trường) Một ôtômát khoảng hữu hạn môi trường ME định nghĩa giống định nghĩa 4.9 ngoại trừ hàm gán nhãn Λf : S → F(X) × F(X ∪ Y ) Λτ : S → Intv S F1(X,Y) S1 F1 (X,Y) I1 hX F (X,Y) S F2(X,Y) S2 F (X,Y) F2 (X,Y) I2 S hY F (X,Y) S Hình 4.3: Minh họa ơtơmát khoảng giao diện mơi trường Tương tự trường hợp ôtômát khoảng giao diện, ôtômát khoảng môi trường định nghĩa đây: Định nghĩa 4.13 Ơtơmát khoảng mơi trường E(ME ) = X ∪ x}, Y ∪ {ă y }, hX in yăin , hY hX (σ.(a, τ )) = ΛX (s) ∧ i s+ v {ă hY (.(a, )) = (Y (s) (s, xă, yă) T, 12Y ) Định lý 4.6 Cho ôtômát khoảng MI ôtômát khoảng cho môi trường ME Giao diện môi trường E(ME ) cắm vào giao diện I(MI ) ME đồ thị MI , với s ∈ S(E), ΛX (s) ⇒ in(Λf (s)), ΛX (s) ∧ Λf (s) ⇒ ΛY (s) ΛYτ (s) ⊆ Λτ (s) 4.5 Tổng kết chương Chương đạt số kết quả: Đặc tả thànhphầnphần mềm thờigianthực giao diện thànhphầnthờigian thực, mơ hình hóa hành vi giao diện thànhphần môi trường, kiểmchứng cắm môi trường vào giao diện thànhphần Chương Phương pháp đặc tả kiểmchứng hợp đồng thờigianthực 5.1 Giới thiệu Trong chương này, luận án đề xuất cải tiến kỹthuật đặc tả thànhphầnphần mềm thờigianthực hợp đồng thờigianKỹthuậthìnhhướng đến mục tiêu giảm thiểu lỗi trình phát triển hệthốngthờigianthực dựa thànhphần 5.2 Thiết kế thờigian Theo lý thuyết phát triển hệthốngthờigianthực dựa thành phần, luận án đặc tả phương thứcthànhphầnphần mềm thiết kế thời gian, định nghĩa sau: Định nghĩa 5.1 (Thiết kế thời gian) Một thiết kế thờigian tập biến đầu vào, đầu X, Y thànhphần D = V, R, d , V = X ∪ Y , R công thức logic tân từ cấp có dạng α β biểu diễn quan hệ biến đầu vào biến đầu ra, α tiền điều kiện tập biến A ⊆ X, β hậu điều kiện tập biến đầu B ⊆ Y , d số nguyên dương biểu diễn khoảng thờigian tối thiểu thực thi dịch vụ Giao diện thànhphần định nghĩa sau: Định nghĩa 5.2 (Giao diện thành phần) Giao diện thànhphần cặp I = (Ip , Ir ), Ip = Fdp , M dp gọi giao diện cung cấp I, Ir = Fdr , M dr gọi giao diện yêu cầu I 13 5.3 Hợp đồng thờigian Tiếp theo, luận án định nghĩa hợp đồng cho thànhphầnphần mềm, hợp đồng cho biết cách thứcthànhphầnphần mềm sử dụng Định nghĩa 5.3 (Hợp đồng) Một hợp đồng C = I, I, MSpec , Inv, π , I = (Ip , Ir ) giao diện Đặt M d = M dp ∪ M dr , Fd = Fdp ∪ Fdr I khởi tạo giá trị ban đầu cho thuộc tính tập Fd MSpec đặc tả phương thức, chúng liên quan đến phương thức op(X, Y ) tập M d = M dp ∪ M dr tương ứng với thiết kế D = V, R, d Inv tập ràng buộc bất biến hợp đồng biểu diễn cặp (Invp , Invr ), Invp Invr cơng thức logic LTL tương ứng ràng buộc tập thuộc tính cung cấp thuộc tính yêu cầu π thể thức tương tác tương tranh thờigianthực 5.4 Ghép hợp đồng thờigian Để phát triển hệthống phức tạp, ghép thànhphầnphần mềm với thỏa yêu cầu hệthống cách ghép hợp đồng theo cách ghép song song, nối tiếp phép cắm Sau luận án định nghĩa phép ghép song song hai hợp đồng Định nghĩa 5.4 (Ghép song song hai hợp đồng thời gian) Cho hai hợp đồng có khả ghép C1 = I1 , I1 , MSpec1 , Inv1 , π1 hợp đồng C2 = I2 , I2 , MSpec2 , Inv2 , π2 Phép ghép song song hai hợp đồng C1 C2 ký hiệu C = C1 ||C2 hợp đồng C = I, I, MSpec , Inv, π , thànhphần hợp đồng tính sau: I = (Ip1 ∪ Ip2 , Ir1 ∪ Ir2 ) I = I1 ∪ I2 MSpec = MSpec1 ∪ MSpec2 , thànhphần M d tính sau: M dr = M dr1 ∪ M dr2 \ Shared(C1 , C2 ), M dp = M dp1 ∪ M dp2 \ Shared(C1 , C2 ) Inv tính sau: Inv = Inv1 ∪ Inv2 π = π1 ||π2 thể thức tương tác tương tranh thờigianthực Ngoài cách ghép song song, cách ghép khác phép cắm hai hợp đồng định nghĩa sau: Định nghĩa 5.5 (Cắm hoàn toàn) C1 C2 = (Ip1 ∪ Ip2 , Ir2 ), MSpec1 |M dp1 ∪ MSpec2 , I1 |Fdr1 I2 , Inv, π , Inv = (Invp1 ∧ Invp2 ), Invr2 )) (I1 I2 )(x) định nghĩa là: I (x) = I2 (x) I (x) I2 (x) if x ∈ dom(I1 ) ∩ dom(I2 ) if x ∈ dom(I1 ) \ dom(I2 ) if x ∈ dom(I2 ) \ dom(I1 ) 14 Đối với thể thức π tính theo trường hợp sau: Đầu tiên, hợp đồng C1 C2 cho phép phương thứcthànhphầnphần mềm độc lập sử dụng theo cách thức nguyên gốc chúng Bởi vậy, π = π1 ∪ π2 Các phương thức op C2 mà không bị gọi C1 , π hoạt động theo chế song song với phương thức C1 , Do π = π1 ||(π2 ∩ {op ∈ M dp2 \ M dr1 }∗ ), Trong trường hợp lại, phương thức op M dp2 ∩ M dr1 sử dụng với phương thức M dp1 Điều phụ thuộc vào mức độ tương tranh phương thức op Do đó, π định nghĩa sau: π = π1 ∪ π2 ∪ (π1 ||(π2 ∩ {op ∈ M dp2 \ M dr1 }∗ ) Khi C1 C2 xác định, nói C1 nối với C2 Chú ý nối hợp đồng theo cách này, C1 C2 khơng phép thay C1 yêu cầu số yếu tố từ mơi trường C1 khơng 5.5 HệthốngHệthống có hai phần, phần thụ động phần chủ động Định nghĩa 5.6 (Thành phầnphần mềm thụ động) Thànhphầnphần mềm thụ động PComp = C, M code , đó: Hợp đồng C = I, I, M dSpec , Inv, π M code gán với phương thức op M dp thiết kế xây dựng từ toán tử sở phương thức Ir cho với dãy thực thi w|M dr |= π Điều kiện sau thỏa M code : (MSpec (op) M code(op)), Invp bảo toàn hoạt động sử dụng M code Sự thực thi tất phương thức m tương thích với cấp độ tương tranh mơ tả π, tức phương thức m không loại trừ lẫn có nhiều m Hợp đồng C nói thực thi PComp Định lý 5.1 Cho hai hợp đồng C1 C2 , ta có C1 M code2 |M d2 \M d1 thànhphầnphần mềm C2 , M code1 ∪ Định nghĩa 5.7 (Giao diện hệ thống) Giao diện hệthống IS = Evt, Fd, SM dp , SM dp tập hữu hạn phương thức, Fd tập hữu hạn thuộc tính, Evt tập hữu hạn kiện Từ giao diện hệ thống, sau định nghĩa hợp đồng hệthống Định nghĩa 5.8 (Hợp đồng hệ thống) Hợp đồng hệthống SysC = Is , MSpecS , InvS , Behav , IS = Evt, Fds , M dpS giao diện hệthống 15 MSpecS đặc tả phương thức liên quan đến phương thức op(X, Y ) M dpS với thiết kế V, R, d , Behav mô tả hành vi bên tập hữu hạn {e, m|evt ∈ Evt, m ∈ M dpS }∗ Mỗi hành vi Behav gọi đặc tả tiến trình Định nghĩa 5.9 (Thành phầnphần mềm chủ động) Thànhphầnphần mềm chủ động AComp = C, SysC, M code bao gồm Một hợp đồng C = I, I, MSpec , Inv, π với giao diện cung cấp rỗng, Ip = (∅, ∅) Một hợp đồng hệthống SysC = Is , MSpecs , Inv, Behav Một tiến trình thực thi M code gán phương thức op M dpS thiết kế xây dựng từ toán tử sở phương thức Ir cho với dãy thực thi w|M dr |= π Điều kiện sau thỏa M code : (MSpecs (op) M code(op)) với op ∈ M dpS Một hệthống mơ hìnhthànhphần luận án Thànhphầnphần mềm chủ động cắm vào Thànhphầnphần mềm thụ động đóng Định nghĩa 5.10 (Hệ thống) Hệthống cặp thànhphầnphần mềm chủ động AComp = C, SysC, M code thànhphầnphần mềm thụ động PComp = C , M code , cho C C Định thành AComp đương lý 5.2 Cho PComp = C , M code , PComp = C , M code phầnphần mềm thụ động, thànhphầnphần mềm chủ động = C, SysC, M code Hệthống System = AComp , PComp tương với System = AComp , PComp C C 5.6 Tổng kết chương Chương trình bày kỹthuật đặc tả phương pháp phát triển phần mềm thờigianthực dựa thànhphần hợp đồng thờigianthực 16 Chương Phương pháp đặc tả kiểmchứngthànhphầnphần mềm thờigianthực có ràng buộc tài nguyên 6.1 Giới thiệu Chương phát triển mơ hìnhhìnhthức có khả hỗ trợ phân tích, thiết kế hiệu đặc tả yếu tố chức phi chức hệthốngthờigianthực dựa thànhphần 6.2 Các nghiên cứu liên quan 6.3 Thiết kế thời gian-tài nguyên Một phương thức có dạng op(X, Y ) đặc tả Thiết kế tài nguyên-thời gian tập biến đầu vào X tập biến đầu Y , X ∩ Y = ∅ Đặt R công thức logic tân từ cấp biểu diễn mối quan hệ đầu vào đầu Định nghĩa 6.1 (Thiết kế thời gian-tài nguyên) Mỗi phương thức op(X, Y ) đặc tả thiết kế có dạng D(op) = ϑ, ξ, ψ, d, ρ , ϑ biểu diễn tập biến dùng phương thức op ξ biểu diễn đặc tả chức vị từ có dạng sau: p f R = p⇒R ψ biểu thị đặc tả thànhphần phi chức có dạng sau: q nS = q⇒S d số nguyên dương, biểu diễn khoảng thờigian tối thiểu mà hệthống gọi phương thức ρ véc tơ n phần tử đặc tả lượng tài nguyên sử dụng cho thiết kế Ký hiệu f n tương ứng với chức phi chức Định nghĩa 6.2 (Làm mịn thiết kế) Cho hai thiết kế phương thức op(X, Y ), D(op) = (ϑ, ξ, ψ, d, ρ) D (op) = (ϑ , ξ , ψ , d , ρ ) D nói làm mịn D, ký hiệu D D điều sau thỏa p ⇒ p , R ⇒ R, q ⇒ q , S ⇒ S, d ≤ d ρ ≤ ρ 17 Định nghĩa 6.3 (Ghép nối tiếp thiết kế) Đặt D1 (op) = ϑ1 , ξ1 , ψ1 , d1 , ρ1 D2 (op) = ϑ2 , ξ2 , ψ2 , d2 , ρ2 hai thiết kế Một phép nối nối tiếp θ hai thiết kế định nghĩa sau: D1 θ D2 = ϑ, ξ, ψ, d, ρ , ϑ = ϑ1 ∪ ϑ2 Đặt ξ kết hợp với tham số x, ký hiệu ξ(x) ξ = ∃v • ξ1 ∧ ξ2 ψ = ∃ρ1 , ρ2 • (ψ1 [ρ1 /ρ] ∧ ψ2 [ρ2 /ρ] ∧ ρ|u = max(ρ1 |u , ρ2 |u )) ∧ ρ|c = ρ1 |c ⊕ ρ2 |c ∧ d = d1 + d2 Trong định nghĩa này, biểu thức ρ|u có ký hiệu "|" phép chiếu ρ tập thànhphần tài nguyên sử dụng cho thực thi Biểu thức ψ[x1 /x], ký hiệu "/" phép thànhphần x vào thànhphần x1 biểu thức ψ Hàm max(ρ1 |u , ρ2 |u ) hàm tính tốn thànhphần tài ngun bị chiếm dụng biểu thức ρ|c = ρ1 |c ⊕ ρ2 |c tính tốn lượng tài ngun tiêu thụ cho D1 θ D2 Biểu thức d = d1 + d2 tính tốn khoảng thờigian tĩnh đảm bảo cho thiết kế D1 θ D2 đáp ứng u cầu mơi trường Trong q trình phát triển hệ thống, có cách khác để ghép thiết kế với hai phương thứcthực thi tương tranh điều kiện ràng buộc định nghĩa sau: Định nghĩa 6.4 (Ghép tương tranh thiết kế) Đặt D1 = ϑ1 , ξ1 , ψ1 , d1 , ρ1 D2 = ϑ2 , ξ2 , ψ2 , d2 , ρ2 hai thiết kế Một phép đồng || hai thiết kế biểu thị sau: D1 ||D2 = ϑ, ξ, ψ, d, ρ , ϑ = ϑ1 ∪ ϑ2 ξ = ξ1 ∧ ξ2 Đặt ψ1 = q1 (ρ1 ) n S(ρ1 ) ψ2 = q2 (ρ2 ) n S(ρ2 ) ψ = q(ρ) n S(ρ), (i) q(ρ) = ∃ρ1 , ρ2 • (q1 (ρ1 ) ∧ q2 (ρ2 ) ∧ ρ|u = ρ|u1 ⊕ ρ|u2 ∧ ρ|c = ρ|c1 ⊕ ρ|c2 , (ii) S(ρ) = ∀ρ1 , ρ2 • (ρ|u = ρ|u1 ⊕ ρ|u2 ∧ ρ|c = ρ|c1 ⊕ ρ|c2 ∧ q(ρ) ∧ q(ρ2 ) ⇒ ∃d1 , d2 • (d = max(d1 , d2 ) ∧ S(ρ1 ) ∧ S(ρ2 ))) Trong định nghĩa này, biểu thức q(ρ) tồn phận u, c ρ1 ρ2 cho q1 (ρ1 ) q2 (ρ2 ) Tương tự S(ρ) phận ρ|u ρ1 |u , ρ2 |u , ρ|c ρ|c , ρ2 |c cho q1 (ρ1 ) q2 (ρ2 ) có phận d = max(d1 , d2 ) Định nghĩa 6.5 (Tương đương sử dụng tài nguyên) Hai thiết kế D = (ϑ, ξ, ψ, d, ρ) D = (ϑ, ξ, ψ , d, ρ ) tương đương mặt tài nguyên q ⇒ q q ⇒ q với thànhphần thứ i ρ, ρ ρ=ρ 18 6.4 Hợp đồng thời gian-tài nguyên Định nghĩa 6.6 (Giao diện hợp đồng) Một giao diện hợp đồng I = Fd, M dp , M dr đó: Fd tập hữu hạn thuộc tính M dp M dr khai báo tập phương thức Mỗi phương thức M dp M dr có dạng op(X, Y ), tương ứng với thiết kế D = ϑ, ξ, ψ, d, ρ cho, X tập biến đầu vào Y tập biến đầu M dp tập phương thức cung cấp, M dr tập phương thức yêu cầu, M dp ∩ M dr = ∅ Từ giao diện hợp đồng, ta có hợp đồng định nghĩa sau: Định nghĩa 6.7 (Hợp đồng thời gian-tài nguyên) Một hợp đồng C = I, I, Rd , MSpec , Inv, InvRd , ℘ , I = (Ip , Ir ) giao diện Đặt M d = M dp ∪ M dr , Fd = Fdp ∪ Fdr I khởi tạo giá trị ban đầu cho thuộc tính tập Fd Rd khai báo tài nguyên, giá trị nhập từ môi trường sử dụng hợp đồng MSpec đặc tả phương thức, chúng liên quan đến phương thức op(X, Y ) tập M d = M dp ∪ M dr tương ứng với thiết kế D = ϑ, ξ, ψ, d, ρ Inv tập ràng buộc bất biến hợp đồng biểu diễn cặp (Invp , Invr ), Invp Invr cơng thức logic thờigian tuyến tính LTL ràng buộc tương ứng tập thuộc tính cung cấp yêu cầu InvRd cho biết điều kiện tài nguyên dạng dịch vụ thànhphầnthực thi được, thỏa Rd ℘ thể thức tương tác thờigianthực mô tả thể thứcthực thi phương thức có thànhphầnphần mềm, thànhphầnphần mềm phép thực thi đồng thời trạng thái xét tài nguyên Trong số tình huống, hợp đồng thay nhằm tìm tối ưu cho việc sử dụng hợp đồng miễn hợp đồng hiểu theo nghĩa cung cấp dịch vụ tốt tiêu thụ tài nguyên Định nghĩa 6.8 (Làm mịn hợp đồng) Hợp đồng C1 = I1 , I1 , Rd1 , MSpec1 , Inv1 , InvRd1 , ℘1 gọi làm mịn hợp đồng C2 = I2 , I2 , Rd2 , MSpec2 , Inv2 , InvRd2 , ℘2 , ký hiệu C1 C2 khi: Fd1 ⊆ Fd2 , Rd1 ⊆ Rd2 , I2 |Fd1 = I1 |Fd1 , I2 |Rd1 ≤ I1 |Rd1 (trong hàm f, f 1, f tập A, f |A biểu thị hạn chế f A biểu thức f1 ≤ f2 cho biết f1 , f2 giỏ tr f1 (ăa) f2 (ăa) vi mi aă ca chỳng M dp1 M dp2 , M dr2 ⊆ M dr1 Với phương thức op khai báo M dp1 MSpec1 (op) ⊆ MSpec2 (op) 19 Với phương thức op khai báo M dr2 MSpec2 (op) ⊆ MSpec1 (op) Inv2 ⇒ Inv1 Sự bất biến tài nguyên bị yếu phép làm mịn, tức InvRd1 ⇒ InvRd2 |Rd1 ℘1 |M dp1 ⊆ ℘2 |M dp1 ℘2 |M dr2 ⊆ ℘1 |M dr2 Nói cách đơn giản, hợp đồng C2 , nhiều dịch vụ chức với chất lượng tốt hơn, đòi hỏi tài ngun u cầu từ mơi trường Định nghĩa 6.9 (Độ tương thích hợp đồng) C2 = Đặt C1 = I1 , I1 , Rd1 , MSpec1 , Inv1 , InvRd1 , ℘1 I2 , I2 , Rd2 , MSpec2 , Inv2 , InvRd2 , ℘2 hai hợp đồng C1 tương thích với C2 khi: Tập thuộc tính phương thức cung cấp chúng tương thích Tức f ∈ Fd1 ∩ Fd2 suy I1 (f ) = I2 (f ) op ∈ M dp1 ∩ M dp2 suy MSpec1 (op) ⇔ MSpec2 (op) Tập phương thức cung cấp tập phương thức yêu cầu tương thích (đối với kết nối): Với op ∈ M dr1 ∩ M dp2 , điều với MSpec1 (op) MSpec2 (op) với op ∈ Mr2 ∩ M dp1 , điều với MSpec2 (op) MSpec1 (op) Định nghĩa 6.10 (Ghép song song thể thứcthời gian-tài nguyên) Cho hai hợp đồng có khả ghép C1 = I1 , I1 , Rd1 , MSpec1 , Inv1 , InvRd1 , ℘1 C2 = I2 , I2 , Rd2 , MSpec2 , Inv2 , InvRd2 , ℘2 Phép ghép song song hai hợp đồng C1 C2 ký hiệu C = C1 ||C2 hợp đồng C = I, I, Rd , MSpec , Inv, InvRd , ℘ thànhphần hợp đồng tính sau: I = (Ip1 ∪ Ip2 , Ir1 ∪ Ir2 ) I = I1 ∪ I2 Rd = Rd1 ⊕ Rd2 MSpec = MSpec1 ∪ MSpec2 , M dr = M dr1 ∪ M dr2 , M dp = M dp1 ∪ M dp2 Inv tính sau: Inv = Inv1 ∧ Inv2 InvRd = InvRd1 InvRd2 ℘ = ℘1 ||℘2 Luận án sử dụng toán tử để kết hợp thànhphầnthànhphần bất biến tài nguyên, tốn tử có ngữ nghĩa sau: Giả sử , , điều kiện tài nguyên, InvRd ( ) = InvRd1 ( ) InvRd2 ( ) = ∃ , • ( |c = |c + |c ∧ |u = |u + |u ) Ngoài cách ghép song song, ghép hợp đồng phương pháp ghép nối tiếp Định nghĩa 6.11 (Ghép nối tiếp hợp 20 đồng thời gian-tài nguyên) Cho hai hợp đồng có khả ghép C1 = I1 , I1 , Rd1 , MSpec1 , Inv1 , InvRd1 , ℘1 hợp đồng C2 = I2 , I2 , Rd2 , MSpec2 , Inv2 , InvRd2 , ℘2 Phép ghép nối tiếp C1 với C2 , ký hiệu C◦ = C1 ◦ C2 , hợp đồng C◦ = I, I, Rd , MSpec , Inv, InvRd , ℘ , thànhphần hợp đồng tính sau: I = (Ip1 ∪ Ip2 , Ir1 \ Ir1 |M dr1 ∩M dp2 ∪ Ir2 ) I = I1 \ I1 |Fdr1 ∩Fdp2 ∪ I2 Rd = Rd1 ⊕ Rd2 MSpec = MSpec1 ∪ MSpec2 , thànhphần M d tính sau: M dr = M dr1 ∪ M dr2 , M dp = M dp1 ∪ M dp2 Inv tính sau: Invp = Invp1 ∧ Invp2 , Invr = Invr1 ∧ Invr2 InvRd = InvRd1 InvRd2 ℘ = ℘1 ◦ ℘2 Định lý 6.1 Cho ba hợp đồng C1 , C2 C3 Ta có (i) C1 ||C2 ) = C2 ||C1 ) (ii) (C1 ||C2 )||C3 = C1 ||(C2 ||C3 ) (iii) (C1 θ C2 ).θ C3 = C1 θ (C2 θ C3 ) Định nghĩa 6.12 (Phép cắm đầy đủ) Cho hai hợp đồng C1 = I1 , I1 , Rd1 , MSpec1 , Inv1 , InvRd1 , ℘1 C2 = I2 , I2 , Rd2 , MSpec2 , Inv2 , InvRd2 , ℘2 , phép cắm đầy đủ hợp đồng C1 C2 hợp đồng C = I, I, Rd , MSpec , Inv, InvRd , ℘ , ký hiệu C = C1 C2 , định nghĩa sau: I = (Ip1 ∪ Ip2 , Ir2 ) R = R2 ⊕ R1 MSpec = MSpec1 ∪ MSpec2 I = I1 |Fdr1 ∪ I2 Inv = Inv1 ∧ Inv2 InvRd = InvRd1 InvRd2 ℘ = ℘1 ∪ ℘2 ∪ ℘1 ||(℘2 ∩ {op ∈ M dp2 \ M dr1 }∗ ) 6.5 Hệthốngthời gian-tài nguyên Định nghĩa 6.13 (Thành phầnphần mềm thụ động) Thànhphầnphần mềm thụ động thờigianthực PC = C, M code , C đồng với tên thành phần, bao gồm Một hợp đồng C = I, I, Rd , MSpec , Inv, InvRd , ℘ thực thi PC Một ánh xạ M code gán phương thức op M dp thiết kế xây dựng từ toán tử bản, với giả định sử dụng tiêu thụ lượng tài nguyên, lời gọi tới phương thức m M dr M code thỏa MSpec (op) M code(op) tất phương thức op M dp Định lý 6.2 Đặt PCi = Ci , M codei , i=1,2 thànhphầnphần mềm thụ động PC1 gọi làm mịn PC2 , ký hiệu PC1 PC2 C1 C2 21 Định nghĩa 6.14 (Giao diện hệ thống) Giao diện hệthống IS = Evt, F d, SM dp , SM dp tập hữu hạn phương thức, F d tập hữu hạn thuộc tính, Evt tập hữu hạn kiện Định nghĩa 6.15 (Hợp đồng hệ thống) Hợp đồng hệthống SysC = Is , SM Spec, Inv, Behav , Is = Evt, F d, SM dp giao diện hệthống SM Spec đặc tả phương thức liên quan đến phương thức op(X, Y ) SM dp với thiết kế D(op) = (ϑ, ξ, ψ, d, ρ), Behav mô tả hành vi bên tập hữu hạn {evt, m|evt ∈ Evt, m ∈ SM dp }∗ Mỗi hành vi Behav gọi đặc tả tiến trình Định nghĩa 6.16 (Thành phầnphần mềm chủ động) Thànhphầnphần mềm chủ động AC = C, SysC, M code bao gồm Một hợp đồng C với tập giao diện cung cấp rỗng Ip = ∅, ∅ Một hợp đồng hệthống SysC = Is , SM Spec, Inv, Behav Các tiến trình thực thi gọi dịch vụ M code gán phương thức op SM dp thiết kế xây dựng từ toán tử sở Điều kiện sau thỏa M code : (SM Spec(op) M code(op)) với op ∈ SM dp Một hệthống mơ hìnhthànhphần luận án Thànhphầnphần mềm chủ động cắm vào Thànhphầnphần mềm thụ động đóng Định nghĩa 6.17 (Hệ thống) Hệthống cặp thànhphầnphần mềm chủ động AC = C, SysC, M code thànhphầnphần mềm thụ động PC = C , M code , cho C C 6.6 Ngôn ngữ đặc tả thờigianthực mẫu 6.6.1 Mô tả phương thức Một thiết kế thờigian có ràng buộc thànhphần phi chức đặc tả từ khóa method, phương thức loại provided required, tên phương thức đặt từ khóa name method { name ; resource r = Type of resource; duration int d = constant; assert ; specification Predicate; } 6.6.2 Mô tả hợp đồng component { provided feature ; required feature ; 22 10 11 12 13 14 15 system resource ; invariant ; resource invariant ; method { name ; resource r = Type of resource; duration int d = constant; specification Predicate; } protocol ; code {Code}; } 6.6.3 Mô tả thànhphầnphần mềm chủ động 10 11 12 13 14 15 16 Mặc định hợp đồng thuộc loại Passive component, thànhphầnphần mềm thuộc loại Active component phải thêm từ khóa active vào trước từ khóa component Trong Active component active component { required feature ; system resource ; invariant ; system assert ; resource invariant ; method { name ; resource r = Type of resource; duration int d = constant; assert ; specification Predicate; } protocol ; code {Code}; } 6.6.4 Mô tả hệthốngHệthống tạo thànhphầnphần mềm chủ động thànhphầnphần mềm thụ động 6.7 Tổng kết chương Chương luận án mở rộng thiết kế thờigian cách bổ sung đặc tả phi chức hai khía cạnh gồm bổ sung đặc tả phi chức cho thiết kế thờigian trở thành thiết kế tài nguyên-thời gian bổ sung ràng buộc phi chức vào hợp đồng nhằm lập luận cho việc cung cấp tài nguyên sử dụng tài nguyên hệthốngthờigianthực dựa thànhphần 23 Chương Kết luận 7.1 Các kết đạt Qua trình nghiên cứu luận án đạt số kết sau đây: Thứ nhất, luận án đề xuất mơ hình cho thànhphầnphần mềm thờigianthực với thể thức tương tác tương tranh thờigian thể thức tương tranh thờigian có ràng buộc tài nguyên, sử dụng ôtômát thờigian ôtômát trọng số để mơ hình hóa chuỗi hành vi mơi trường Trên sở đó, luận án đề xuất thuật toán kiểm tra tuân thủ chuỗi hành vi môi trường với thể thức tương tác thànhphầnphần mềm thờigianthực hai khía cạnh chức phi chức Thứ hai, luận án mở rộng lý thuyết giao diện thànhphần trở thành lý thuyết giao diện thànhphầnthờigianthực để đặc tả, mơ hình hóa giao diện kiểm tra tính chất hệthốngthờigianthực dựa thànhphần Thứ ba, luận án đề xuất mở rộng lý thuyết hợp đồng thành hợp đồng thờigianthực để đặc tả, kiểmchứngthànhphầnphần mềm hệthốngthờigianthực dựa thànhphần hai khía cạnh chức phi chức Trong đóng góp này, luận án bổ sung ngôn ngữ thờigianthực mẫu nhằm tăng khả ứng dụng kết nghiên cứu lý thuyết vào thực tế 7.2 Hướng phát triển Dưới luận án tóm tắt số vấn đề nghiên cứu tương lai: Trong đóng góp thứ nhất, luận án nghiên cứu mở rộng mơ hìnhthờigianthực cho hệthống có quy mô lớn thực tế hệthống nhúng, hệthống tác tử di động triển khai cho dịch vụ web sở thể thức tương tác tương tranh thờigian có ràng buộc tài nguyên Trong đóng góp thứ hai, khoảng trống lý thuyết giao diện thành phần, Assume/Guarantee lý thuyết hợp đồng cần nghiên cứu để phân tích đánh giá ưu nhược điểm sử dụng lý thuyết áp dụng vào phát triển phần mềm Trong đóng góp thứ ba, chưa có cơng cụ để áp dụng lý thuyết nên công việc cần phát triển công cụ phát triển phần mềm cho hệthốngthờigianthực dựa lý thuyết đề xuất 24 ... triển hệ thống thời gian thực dựa thành phần 5.2 Thiết kế thời gian Theo lý thuyết phát triển hệ thống thời gian thực dựa thành phần, luận án đặc tả phương thức thành phần phần mềm thiết kế thời gian, ... ôtômát thời gian cho phép tính tốn chi phí cho hoạt động hệ thống thời gian thực 2.3 Kiểm chứng hệ thống thời gian thực 2.3.1 Đặc tả mơ hình hóa hệ thống Đặc tả mơ hình hóa bước quan trọng kiểm chứng. .. mềm dựa thành phần 2.2 Hệ thống thời gian thực Theo tổng kết tác giả M Timmerman L Perneel cho thấy có nhiều cách định nghĩa hệ thống thời gian thực theo tác giả hệ thống thời gian thực hệ thống: "