Phương pháp thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Trình bày tổng quan về kiến trúc phần mềm. Ngôn ngữ đặc tả kiến trúc. Ngôn ngữ đặc tả kiến trúc ACME. Phương pháp thiết kế phần mềm sử dụng ngôn ngữ đặc tả ACME Trình bày tổng quan về kiến trúc phần mềm. Ngôn ngữ đặc tả kiến trúc. Ngôn ngữ đặc tả kiến trúc ACME. Phương pháp thiết kế phần mềm sử dụng ngôn ngữ đặc tả ACME
bộ giáo dục đào tạo trường đại học bách khoa hµ néi - luận văn thạc sĩ khoa học PHƯƠNG PHáP THIếT Kế PHầN MềM Sử DụNG NGÔN NGữ ĐặC Tả KIếN TRúC AADL ngành : công nghệ THÔNG TIN 23.04.3898 NGUN THANH H¶I Ngêi híng dÉn khoa häc : TS HUỳNH QUYếT THắNG Hà Nội 2006 LI CM ƠN Trước tiên, tơi xin bày tỏ lịng biết ơn chân thành tới thầy giáo, TS Huỳnh Quyết Thắng tận tình giúp đỡ, hướng dẫn, đóng góp nhiều ý kiến q báu q trình thực hồn thành luận văn Tôi xin gửi tới lãnh đạo Công ty Vietsoftware lời cảm ơn giúp đỡ nhiệt tình suốt q trình thực đề tài Tơi xin chân thành cảm ơn cán Trung tâm Đào tạo Sau Đại học, Ban giám hiệu Trường Đại học Bách khoa Hà Nội nhiệt tình giúp đỡ tạo điều kiện thuận lợi thời gian học tập hoàn thành báo cáo luận văn Tôi xin cảm ơn bạn bè, đồng nghiệp gia đình động viên tạo điều kiện giúp đỡ tơi q trình học tập, nghiên cứu hoàn thành luận văn Hà Nội, ngày 30 tháng năm 2007 Nguyễn Thanh Hải Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL LỜI CAM ĐOAN Tôi xin cam đoan cơng trình riêng tơi, kết nghiên cứu luận văn hoàn toàn trung thực Bản luận văn thực bảo thầy hướng dẫn giúp đỡ bạn bè, đồng nghiệp Mọi giúp đỡ cho thực luận văn cảm ơn, thơng tin trích dẫn luận văn đuợc ghi rõ địa nguồn gốc TÁC GIẢ LUẬN VĂN Nguyễn Thanh Hải Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC MỤC LỤC HÌNH VẼ MỤC LỤC BẢNG BIỂU DANH MỤC CÁC KÝ HIỆU VIẾT TẮT MỞ ĐẦU Chương CƠ SỞ LÝ THUYẾT 11 1.1 TỔNG QUAN VỀ KIẾN TRÚC PHẦN MỀM 11 1.1.1 Tổng quan 11 1.1.1.1 Kiến trúc phần mềm 11 1.1.1.2 Lịch sử phát triển 11 1.1.1.3 Mô tả kiến trúc 12 1.1.1.4 Các vấn đề liên quan kiến trúc phần mềm 14 1.1.1.5 Những vấn đề không thuộc kiến trúc phần mềm 15 1.1.1.6 Một số kiến trúc tiêu biểu 16 1.1.2 Đặc điểm kiến trúc phần mềm 16 1.1.2.1 Kiến trúc phần mềm 17 1.1.2.2 Kiến trúc sư phần mềm 21 1.1.2.3 Kiến trúc phần mềm theo ngữ cảnh 22 1.1.3 Các thành phần kiến trúc phần mềm 23 1.1.4 Hướng tiếp cận đến kiến trúc phần mềm 24 1.2 NGÔN NGỮ ĐẶC TẢ KIẾN TRÚC 25 1.2.1 Tổng quan 25 1.2.1.1 Giới thiệu chung 25 1.2.1.2 Phạm vi 26 1.2.1.3 Mục đích 27 1.2.2 Đặc điểm 28 1.2.3 Các dạng đặc tả AADL 30 1.2.3.1 Văn 30 1.2.3.2 Đặc tả đồ hoạ 32 1.2.4 Mơ hình thành phần 33 Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 1.2.4.1 Các phần tử AADL 33 1.2.4.2 Các thành phần AADL 38 1.2.5 Các công cụ hỗ trợ mô tả kiến trúc 44 1.2.5.1 Các đặc điểm hỗ trợ 44 1.2.5.2 Các công cụ hỗ trợ phát triển 45 1.2.6 Hướng phát triển 46 1.3 KẾT CHƯƠNG 46 Chương NGÔN NGỮ ĐẶC TẢ KIẾN TRÚC ACME 48 2.1 TỔNG QUAN NGÔN NGỮ ACME 48 2.1.1 Giới thiệu 48 2.1.2 Các khái niệm 49 2.1.2.1 Thành phần cổng 49 2.1.2.2 Kết nối vai trò 51 2.1.2.3 Hệ thống 52 2.1.2.4 Mô tả đại diện 53 2.1.2.5 Thuộc tính 54 2.1.2.6 Trao đổi kiến trúc 55 2.1.3 Bộ công cụ ACME Studio 56 2.2 SO SÁNH VỚI CÁC NGÔN NGỮ ĐẶC TẢ 57 2.2.1 So sánh với ngôn ngữ đặc tả 57 2.2.2 So sánh với UML 58 2.2.3 Sự khác biệt ngôn ngữ AADL 59 2.2.3.1 Sự hỗ trợ mơ hình thành phần 60 2.2.3.2 Hỗ trợ cho mô hình kết nối 61 2.2.3.3 Hỗ trợ mơ hình cấu hình 63 2.2.4 Công cụ hỗ trợ AADL 67 2.3 KẾT CHƯƠNG 70 Chương PHƯƠNG PHÁP THIẾT KẾ PHẦN MỀM SỬ DỤNG NGÔN NGỮ ĐẶC TẢ ACME 71 3.1 QUY TRÌNH THIẾT KẾ 71 3.1.1 Yêu cầu kiến trúc 72 3.1.2 Đặc tả kiến trúc 73 3.1.3 Xác định tính hợp lệ kiến trúc 79 3.1.4 Mô tả kiểu kiến trúc ACME 79 3.1.4.1 Loại phần tử 81 Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 3.1.4.2 Loại thuộc tính 82 3.2 XÂY DỰNG CHỨC NĂNG WEB BASED PAYROLL BẰNG ACME STUDIO 83 3.2.1 Yêu cầu hệ thống 83 3.2.2 Biểu diễn 86 3.2.2.1 Bước đầu tiên: Định nghĩa từ vựng 87 3.2.2.2 Bước thứ hai: định nghĩa nguyên tắc thiết kế 91 3.2.2.3 Bước thứ ba: Định nghĩa kiểu kiến trúc 97 3.2.3 Kết 99 3.3 KẾT CHƯƠNG 99 KẾT LUẬN 101 TÀI LIỆU THAM KHẢO 103 PHỤ LỤC 104 A CÚ PHÁP CỦA ACME ………………104 Cú pháp thiết kế 104 Cú pháp phần tử thuộc tính 104 2.1 2.2 2.3 2.4 2.5 Cú pháp phần tử - Element Syntax 104 Cú pháp hệ thống: Khai báo hệ thống 105 Cú pháp thành phần : Khai báo thành phần 106 Cú pháp kết nối – Khai báo kết nối 107 Cú pháp vai trò – Khai báo vai trò 107 Thuộc tính cú pháp giá trị thuộc tính 107 3.1 Cú pháp mô tả 108 3.2 Dịch từ mô tả ACME 108 B SO SÁNH CÁC NGÔN NGỮ ĐẶC TẢ AADL 110 C MỘT SỐ MÀN HÌNH MƠ PHỎNG 124 Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL MỤC LỤC HÌNH VẼ Hình 1.1 Các câu hỏi lớn kiến trúc phần mềm 18 Hình 1.2 Q trình mơ hình kiến trúc 19 Hình 1.3 Xác định tính hợp lệ kiến trúc 20 Hình 1.4 Các tiếp cận kiến trúc 22 Hình 1.5 Các hoạt động trình phát triển 24 Hình 1.6 Khung nhìn thành phần kết nối 25 Hình 1.7 Các biểu diễn AADL (David cs, 1995) 31 Hình 1.8 Các thích đồ hoạ AADL (Peter cs, 2006 34 Hình 1.9 Tổng quan phần tử AADL (Peter cs, 2006 33 Hình 1.10 Mệnh đề khai báo loại thành phần 36 Hình 1.11 Mệnh đề khai báo thực 37 Hình 2.1 Mơ hình thành phần cổng 50 Hình 2.2 Mơ hình Port 51 Hình 2.3 Giao diện chương trình ACME Studio 56 Hình 2.4 Quan hệ AADL UML [9] 59 Hình 2.5 Ánh xạ tinh chỉnh khai báo SADL 65 Hình 2.6 Thêm phần tử vào bên (a), theo đường biên (b) 66 Hình 2.7 Khai báo họ kiến trúc 66 Hình 3.1 Quy trình thiết kế ACME 71 Hình 3.2 Xác định yêu cầu 72 Hình 3.3 Siêu kiến trúc 74 Hình 3.4 Ý tưởng kiến trúc 74 Hình 3.5 Kiến trúc Logic 75 Hình 3.6 Các bước xây dựng kiến trúc mơ hình 75 Hình 3.7 Mơ hình luồng liệu hệ thống Payroll 85 Hình 3.8 Biểu đồ use case hệ thống Payroll 86 Hình 3.9 Các loại thành phần mơ hình hố ACME Family 88 Hình 3.10 Kết nối mơ hình ACME Family 89 Hình 3.11 Port Role mơ hình ACME 90 Hình 3.12 Mơ hình hố ACME 99 Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL MỤC LỤC BẢNG BIỂU Bảng 1.1 Nguyên tắc khai báo AADL 31 Bảng 3.1 Bảng ánh xạ từ yêu cầu kiến trúc văn sang ACME 77 DANH MỤC CÁC KÝ HIỆU VIẾT TẮT Từ ADL Tiếng Anh Architecture Description Language Tiếng Việt Ngôn ngữ đặc tả kiến trúc AADL CMU Architecture Analysis and Design Ngôn ngữ đặc tả kiến Language trúc Carnergie Mellon University Trường đại học Carnergie Mellon DFD Data Flow Diagram Lược đồ luồng liệu UML Unified Modeling Language Ngôn ngữ mơ hình XML Extensible Markup Language Ngơn ngữ siêu văn đánh dấu Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL MỞ ĐẦU Tính cấp thiết đề tài Kết hệ thống tích hợp cho thấy số nhược điểm như: tích hợp rủi ro cao, chi phí nâng cấp cao, vịng đời bảo trì sản phẩm ngắn Bên cạnh việc đảm bảo tính tin cậy thuộc tính chất lượng hệ thống hiệu năng, độ an toàn, vấn đề then chốt thời gian, khả lên lịch, bảo mật, tính chịu lỗi hệ thống lại khơng chắn kiểm sốt Càng ngày vai trò kiến trúc phần mềm ngày trở nên quan trọng bối cảnh phần mềm thực hỗn hợp nhiều triển vọng Các triển vọng khác kết hợp quan điểm kiến trúc phần mềm Có thể nói kiến trúc phần mềm đưa định hướng để đạt nhiệm vụ liên quan đến vùng nghiệp vụ cụ thể với tác nhân thành viên hệ thống phần mềm, người phát triển hệ thống, nhóm hỗ trợ thao tác, chuyên gia bảo trì, người triển khai, nhân viên kiểm tra thử người sử dụng cuối Hướng nghiên cứu kiến trúc phần mềm dựa mơ hình đưa cách thức tập trung phân tích hệ thống với khả hứa hẹn để phát vấn đề tính sẵn sàng, an tồn bảo mật, tin cậy, hiệu … có ý nghĩa quan trọng Trong năm gần đây, ngôn ngữ đặc tả kiến trúc (Architecture Analysis and Design Language - AADL hay gọi Architecture Description Language - ADL) tập hợp công cụ kèm trở thành đề tài nghiên cứu nóng bỏng kiến trúc phần mềm cung cấp: Các thích văn đồ hoạ theo ngữ nghĩa xác cho hệ thống thời gian thực hệ thống nhúng, thích mơ hình theo chuẩn cơng nghiệp cho ứng dụng tảng thực Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 10 Cách thức trao đổi dựa cú pháp XML mơ hình AADL tích hợp phân nhánh Cách thức sử dụng UML để trình bày AADL thích mơ hình đặc tả phạm vi khung chương trình UML Các giải pháp công cụ mã nguồn mở Các công cụ hỗ trợ sản phẩm thương mại Trên sở phân tích chúng tơi tiến hành thực đề tài: Phương pháp thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Mục tiêu nghiên cứu Tổng hợp kiến thức ngôn ngữ đặc tả kiến trúc, thành phần, thuộc tính, vấn đề liên quan đến kiến trúc ngôn ngữ đặc tả kiến trúc Nghiên cứu phương pháp phân tích, thiết kế phần mềm sử dụng ngơn ngữ đặc tả AADL, đề xuất quy trình thiết kế cho ngôn ngữ đặc tả kiến trúc ACME Sử dụng ngôn ngữ đặc tả kiến trúc ACME để mô tả hệ thống ứng dụng thực tế Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 112 mẫu hố Ngữ Khơng hỗ (Tuỳ chọn) Thành phần Tính tốn ControlH cho Tập nghĩa trợ; ngơn ngữ bất biến π (π- mơ hình sử dụng đặc tả kiểu điều calculus) mơ hình để xác định ngữ nghĩa ngữ nghĩa phần tính tốn Theo dõi Sắp xếp cục Khơng tập kiện kiện qua trung; cho thuật toán xếp cục danh đối tượng phép kiện trước miền (posets) sách thuộc vào và sau GN&C; thực ngôn thứ tự logic ngữ AADL ngữ nghĩa khác qua lộ danh sách trình Khơng CSP tính thuộc tính Ràng Chỉ thơng Thơng qua Thơng qua Thơng qua Thông qua Thông qua Thông qua Thông qua Thông qua Giao thức buộc qua giao giao diện giao diện giao diện giao diện giao diện giao; văn giao diện giao diện tương tác diện ngữ nghĩa; ngữ nghĩa; ngữ ngữ nghĩa; ngữ phong bất ngữ ngữ nghĩa; cho văn phong văn phong nghĩa; kiểu; nghĩa; ràng biến nghĩa; cổng bất biến bất biến thuộc tính buộc đại số thuộc tính; CSP; văn phi chức trạng hạn chế phong bất thái thành player biến phần; ràng cung buộc mẫu cấp loại thành kiện posets phần Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 113 Sự mở Loại Loại bảo Loại hỗn rộng cấu trúc vệ hành vi Không Không tạp qua Thừa kế Loại qua Không (loại ràng buộc tạo tham số cấu trúc) siêu loại; khác đặc điểm tinh chỉnh mở rộng qua ánh xạ Không Qua khởi mẫu Thuộc Cho phép Cho phép tính phi thuộc tính kết hợp chức Thuộc tính Sửa đổi Thuộc tính Cho phép kết thời gian thành phần cho phân hợp giải đoạn text thực: lập yêu cầu tích lập thích tuỳ ý danh với lịch, tin cậy, lịch với thành sách thuộc thành phần bảo mật Khơng Khơng tính Khơng Khơng phần phân tích không thao tác chúng Bảng Khả hỗ trợ mơ hình thành phần Đặc tả Kết nối, rõ Kết nối, rõ Kết nối, rõ Kết hợp; Kết nối; nội Kết nối; nội Kết nối, rõ Kết nối, rõ Dịch vụ giao Kết nối, rõ ràng ràng ràng nội tuyến; tuyến; cho tuyến; kết ràng ràng vận; rõ ràng ràng khơng mơ phép kết nối nối tái sử hình rõ tên tuỳ dụng, phức ràng tương chọn tạp qua tác thành Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL thành phần 114 phần kết nối Không; cho Ký hiệu kết Điểm giao Điểm giao Điểm giao với phép thành nối đặc tả diện diện diện thành phần phần kết loại liệu vai trị gói socket vai trò; qua nối hỗ trợ Giao Điểm giao Điểm giao Giao diện diện diện diện vai trị vai trị Khơng Khơng tương tác cổng riêng với ngữ biệt; phần tử nghĩa đặc kết nối theo tả điều kiện CSP bắt buộc Loại Hệ thống Hệ thống Hệ thống Cho phép Hỗ trợ lớp loại mở loại mở loại mở thành phần rộng; dựa rộng; dựa rộng; dựa kết nối giao giao thức; tham thức; Hệ thống Định nghĩa Hệ thống loại kết nối loại mở trước, liệt mở rộng; loại loại mở chung rộng; tham kê tập socket kết rộng; dựa giao kết nối: port, số ký hiệu loại nối thức; event, và ràng giao thức; equivalence buộc tham số vai số hố qua Khơng Hệ thống trị gắn mẫu kết Ngữ Không hỗ (tuỳ chọn) Đặc tả ngữ nghĩa trợ; sử ngữ nghĩa dụng mơ hình Posets; kết Tiên đề Loại kết Qua cách Kết nối gắn nghĩa nối điều ngôn nối ẩn; thức đặt tên ngữ nghĩa đặc tả sử phần qua kiện ngữ ràng thông tin dụng Wright lọc message buộc ngữ nghĩa Không Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Không CSP 115 ngữ nghĩa đưa ngơn ngữ AADL danh sách khác thuộc tính danh sách thuộc tính Ràng Qua giao Qua giao Qua giao buộc diện cấu diện ngữ trúc cho Qua giao Qua giao Qua giao Qua giao diện ngữ diện ngữ diện giới diện diện ngữ nghĩa; văn nghĩa; văn nghĩa; văn hạn loại nghĩa; giao thực thể phong bất phong bất phong bất player có thức tuong loại biến biến (mỗi biến thể sử tác cho cổng dụng vai trò tham gia vai trò CSP; văn Không Không Không phong bất link) biến Sự mở Loại Loại bảo vệ Ngữ cảnh rộng hành vi phản ánh tinh chỉnh tạo tham số qua tính giao diện; kết nối qua khác mở chế lọc mở ánh xạ mẫu rộng rộng Thuộc cấu trúc Cho phép tính phi thuộc tính Cho phép Không Không Không kết hợp Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Không Không Không Không Loại con; Không Không Sửa đổi Thuộc tính Cho phép kết thành phần cho phân hợp Qua khởi Không 116 chức đoạn text danh với sách thuộc kết nối yêu cầu tích lập thích tuỳ lịch chọn với dịch vụ giao vận tính khơng thao tác chúng Bảng Khả hỗ trợ mơ hình kết nối Đặc tả Gắn kết; rõ Cấu hình; rõ Kiểu mẫu Kết hợp; Kết nối; nội Kết nối; nội Cấu hình; rõ Kết nối; rõ Weave; Gắn kết; rõ ràng ràng kiến trúc; rõ nội tuyến; tuyến; tuyến; ràng ràng rõ ràng ràng ràng Dễ hiểu Phức Rõ ràng; Rõ ràng; Rõ ràng; Nội tuyến, Nội tuyến, Nội tuyến, Rõ ràng; Đặc tả rõ Rõ ràng; Rõ ràng; đặc tả văn đặc tả đồ đặc tả ngắn đặc rả với đặc rả với đặc rả với đặc tả văn ràng, cấu đặc tả đồ đặc tả văn ngắn hoạ ngắn gọn chi tiết chi tiết chi tiết ngắn trình hoạ ngắn ngắn gọn gọn; cấp loại kết nối, kết nối, cung kết nối, gọn gọn gọn song sog cung cấp cấp cung cấp tích phân trực quan thích đồ hoạ tán Hỗ trợ qua Tính tốn Cung cấp Cung cấp Cho phép hỗ thích đồ thích đồ hoạ hoạ Hỗ trợ Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Hỗ trợ thông Ánh xạ Ánh xạ quan Hỗ trợ qua 117 hợp qua qua đại trợ qua đặc điểm qua quan hệ hệ kiến trúc thành sockets gắn kết mẫu, đại diện kiến trúc ngôn ngữ macro kiến trúc đến thành phần phức hợp diễ tả diện ánh thành phần thành phần đến giao phần kết nối kiến xạ lại bên phức hợp diện phức hợp trúc Không Hỗ trợ sinh Hỗ trợ sinh Tinh chỉnh Tinh chỉnh Hỗ trợ Hỗ trợ sinh mã hệ mã hệ thống ánh xạ cho ánh xạ cho sinh mã mã hệ thống theo thống khi thực phép so phép sửa hệ thống thực vết thực ràng buộc sánh mô qua kiểu thực ràng buộc Tinh Đại diện - chỉnh ánh xạ Không ràng buộc kiến ràng trúc buộc Không cấp độ khác Tính Mở danh Cho phép Cho phép Cho phép Hỗ trợ phát Hỗ trợ phát Hỗ trợ Chỉ hỗ trợ Hỗ trợ phát Hỗ trợ hỗn tạp sách thuộc nhiều ngôn nhiều ngôn triển triển thành phần thành triển C, thành phần tính; u ngữ để mơ thành phần ngữ mô Ada; yêu mô ghép nối phần định C++, đối ghép nối cầu ánh xạ hình ngữ bên hình ngữ cầu tất thực chặt lỏng nghĩa tượng C chặt lỏng hppx ràng nghĩa, hỗ trợ kiến trúc, hỗ nghĩa thành phần ngôn trước Fortran; yêu qua phát triển trợ phát triển thành chứa vòng ngữ loại kết cầu tất AADL C C++, phần lặp tiến trình Rapide nối; hỗ trợ phần Java Ada chính; hỗ gửi thành cung cấp tập trợ phát phần bao phương triển C++ bọc thức Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 118 Mở Nhắm đến Nhắm đến Nhắm đến Ngăn cản Ngăn cản Ngăn cản Nhắm đến Nhắm đến Nhắm đến Nhắm đến rộng cấu hình rõ cấu hình rõ cấu hình, cấu cấu hình cấu cấu hình rõ cấu hình, cấu hình, cấu hình, ràng; ngăn ràng; ngăn biến, số hình nội nội tuyến hình nội ràng; sử biến, số socket, biến, biến, số cản số cản số lượng cổng tuyến tuyến; sử dụng lượng vai số lượng lượng vai lượng cố lượng cố rõ ràng; sử dụng dự án cỡ trò rõ socket rõ trò rõ ràng; định định vai dụng dự án cỡ lớn ràng ràng; sử ; sử dụng vai trò trò xây dựng lớn dụng trong dự án dự án cỡ lớn cỡ lớn công cụ Nâng Nhắm đến Không hỗ Cho phép Khơng hỗ Khơng hỗ trợ Khơng hỗ Khơng hỗ Có số Cho phép Phù hợp cấp cấu hình rõ trợ kiến trúc kiến trúc trợ kiến kiến trúc trợ kiến trợ kiến trúc hỗ trợ kiến kiến trúc kiến trúc ràng; họ phần; phần trúc từng phần; trúc từng phần; trúc từng phần phần lớp ban Nhắm đến Nhắm đến phần; ngăn ngăn cản phần; ngăn Nhắm đến phần; Nhắm đến Nhắm đến đầu cấu hình rõ cấu hình rõ cản cấu trúc nội cản cấu cấu hình rõ Nhắm đến cấu hình rõ cấu hình rõ ràng ràng, cấu trúc tuyến trúc nội cấu hình ràng; hỗ trợ ràng; thành phần nội tuyến rõ ràng họ thông qua ràng tuyến tối thiểu phụ thao tác thuộc nhau, socket kết nối hỗn framework tạp Động Không Không Không dự Sao chép kiến thực phép thêm, động ràng Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Không Không dự Ràng buộc động: cấu kiến các phép hình điều phép thêm, thêm, xố, Ràng buộc Khơng Khơng 119 xố, ghi lại buộc kiện xoá, ghi lại ghi lại phần phần tử thành phần sinh phần tử động tử động động cấu kiện động hình điều kiện Ràng Cổng Cổng Văn phong Cung cấp Ứng dụng Tinh chỉnh Lập trình Players Ngăn kết Cổng buộc gắn gắn bất biến cố dịch vụ ràng ánh xạ theo văn gắn nối trực tiếp gắn đến vai đến vai trò đến vai trò định buộc với ràng buộc phong bất đến vai trò trò và ngược ngược bao thuộc tính tinh chỉnh biến; Tinh ngược thành phần ngược lại; lại lại; lập trình đến dịch vụ phi chức hợp lệ ; chỉnh ánh xạ lại theo văn yêu cầu ngôn ngữ ràng buộc theo văn phong bất ngược lại ràng buộc tinh chỉnh phong bất thời gian hợp lệ biến; biến Lập trình poset Hỗ trợ thuộc Mơ hình Sửa đổi kiến tính timed poset trúc hợp tính phi xử lý thực mơ hình thêm thích tuỳ chức danh thời gian ràng chọn với dịch sách thuộc xung ngơn buộc weaves tính nhịp ngữ ràng Các Cho phép thuộc thuộc tính Khơng Khơng Khơng khơng thao tác Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL buộc Không Cho phép kết Không 120 chúng Bảng Khả hỗ trợ mô hình cấu hình kiến trúc Đặc tả Khơng tích cực Thành phần Tiên phong Tự động Trình biên biên soạn thực thêm soạn đồ hoạ soạn đồ trực tiếp – trình cổng đến yêu cầu báo hoạ ngăn cúp pháp; kiến trúc giao tiếp lỗi kiến ngừa lỗi lớp trực DRADEL; thành trúc thay đổi; qua quan gọi tác động trở phần; ràng buộc trình gọi trình biên lại kiểm tra quảng bá lụa chọn kiểm tra soạn bên loại không thay qua ngơn ngữ ngồi xâm phạm, đổi qua menus điều cổng bao, kiện thiết kế hội thoại danh xác định sách việc thuộc tính cần làm thành phần Khơng Khơng Trình biên Khơng Khơng Argo Đa Văn bản, Văn Văn Văn Văn Văn Chỉ có văn Văn Đồ hoạ; loại Chỉ có văn khung weblets đồ hoạ; trực đồ hoạ; đồ hoạ; đồ hoạ; loại đồ hoạ; đồ hoạ; thành phần mơ nhìn quan mẫu khung nhìn khung nhìn thành phần trực quan loại thành kết nối hình kiểm Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 121 ACME- cụ thể; loại trình phân cấp kết nối hành vi mô phần phân tra cung Web; thành phần phát triển hệ thống phân kết nối biệt cấp khung nhìn kết nối biệt biểu tượng đoạn tương kiến trúc phân biểu tượng phân biệt tự dạng biệt các biểu tượng mẫu mức biểu tượng biểu CSP cao tượng thành phần Phân Phân tách tích Phân tách; Phân tách; Phân tách; Phân tách; Phân tách; Phân tách; Phân tách; Phân Phân tách; biên dịch kiểm tra loại biên dịch biên dịch; biên dịch; phân tích biên dịch; tách;hình kiểm tra mơ kiểu cụ thể; nguyên tắc; biến lập lịch; tin phân tích kiến trúc lập lịch; ảnh thực hình cho kiểm tra loại; loại khởi tạo cậy; bảo mật qua lọc quan hệ phân tích thời loại cổng vịng đời; thành phần phân tích kiện đắn để gian thực; thích nghi xung đột tài động ràng buộc xác định ánh theo dõi bên đến vai nguyên hình ảnh; xạ tinh chỉnh trên; phân trị; phân tính ràng buộc tích, gỡ rối rich kết lập lịch để bảo thành phần nối đọc lập đảm ánh xạ weave cho hợp lệ Tinh Không Không Sinh khung Biên dịch; Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Biên dịch; Biên dịch deadlock Kiểm tra Biên dịch; Khơng Khơng 122 chỉnh ứng dụng có thành thành cho ngơng gắn kết thể thực phần phần ngữ kiến trúc đến phần tái thực thực thực hiện; ánh xạ sử trong công cụ để thực dụngthành ngôn ngữ ngôn ngữ biên dịch phần OTS lập trình lập trình xác nhậ ngơn ngữ truyền truyền thống mẫu ánh xạ lập trình mẫu truyền kiện thống thống thành mơ Thực Xây dựng Lớp Biên dịch Hướng tiếp Thực hiện công cụ vẽ framework sinh mã cận DSSA; xây dựng sinh mã kết đến sinh mã hệ thống, cho phép C++ biên dịch mô C gắn code sinh mã sinh mã Ada ngôn C, C++ C cho C/C++, Ada ngữ Fortran kiểu lọc Java; Rapide Không sinh pipe DRADEL Không Không Biên dịch Tự động liên Khơng thành phần mã sinh khung chương trình Động Khơng Không ArchStudio Biên dịch cho phép hỗ trợ hỗ trợ phép không không bắt thực thực dự kiến thao Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL Không Biên dịch Không Không Jacquard cho Không 123 buộc dự kiến cho thay cho thay tác động thao tác đổi ràng đổi ràng weaves động buộc động buộc động kiến trúc kiến kiến trúc (sao trúc (sao chép chép cấu hình cấu hình theo điều theo điều kiện) kiện) Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 124 C MỘT SỐ MÀN HÌNH MƠ PHỎNG Hình Mơ hình DFD cơng cụ ACME Studio Hình Các thành phần ACME Family Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 125 Hình Màn hình mơ tả đối tượng DFD Hình Các thành phần, kết nối DFD Hình Code minh hoạ mơ hình DFD Thiết kế phần mềm sử dụng ngơn ngữ đặc tả kiến trúc AADL 126 Hình Code mô tả đối tượng gắn kèm Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL ... thống Ngôn ngữ đặc tả kiến trúc Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến trúc AADL 13 Ngôn ngữ đặc tả kiến trúc AADL sử dụng để mô tả kiến trúc phần mềm Các quy tắc kiến trúc phần mềm tập... đặc tả AADL, đề xuất quy trình thiết kế cho ngơn ngữ đặc tả kiến trúc ACME Sử dụng ngôn ngữ đặc tả kiến trúc ACME để mô tả hệ thống ứng dụng thực tế Thiết kế phần mềm sử dụng ngôn ngữ đặc tả kiến. .. hợp kiến thức ngôn ngữ đặc tả kiến trúc, thành phần, thuộc tính, vấn đề liên quan đến kiến trúc ngôn ngữ đặc tả kiến trúc Nghiên cứu phương pháp phân tích, thiết kế phần mềm sử dụng ngôn ngữ đặc