Danh mục tài liệu

Giáo trình Kiến trúc và thiết kế phần mềm - Nguyễn Xuân Huy

Số trang: 221      Loại file: pdf      Dung lượng: 1.47 MB      Lượt xem: 80      Lượt tải: 0    
Xem trước 10 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

"Giáo trình Kiến trúc và thiết kế phần mềm - Nguyễn Xuân Huy" được biên soạn nhằm giúp học viên hiểu được vai trò quan trọng của thiết kế kiến trúc phần mềm; Nắm được các bước tư duy và định hướng cần thiết khi quyết định đưa một thành phần vào kiến trúc hệ thống trong quá trình thiết kế kiến trúc; Nắm được tư tưởng về các mẫu kiến trúc và các phương thức tổ chức kiến trúc hệ thống để có thể tái sử dụng trong thiết kế hệ thống. Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Giáo trình Kiến trúc và thiết kế phần mềm - Nguyễn Xuân Huy Nguyễn Xuân Huy Giáo trình KIẾN TRÚC VÀ THIẾT KẾ PHẦN MỀM Giáo trình giới thiệu khái niệm về kiến trúc của một hệ thống phần mềm, các qui trình và phương pháp thiết kế kiến trúc hệ thống phần mềm. Sau khi tìm hiểu giáo trình, học viên sẽ  Hiểu được vai trò quan trọng của thiết kế kiến trúc phần mềm;  Nắm được các bước tư duy và định hướng cần thiết khi quyết định đưa một thành phần vào kiến trúc hệ thống trong quá trình thiết kế kiến trúc;  Nắm được tư tưởng về các mẫu kiến trúc và các phương thức tổ chức kiến trúc hệ thống để có thể tái sử dụng trong thiết kế hệ thống;  Nắm được các mẫu kiến trúc quan trọng thường được vận dụng trong các qui trình thiết kế khác nhau. 2 M Ụ C L Ụ C Lời nói đầu 5 Chương 1 Khái niệm chung 8 1.1 Tiếp cận hệ thống 8 1.2 Thiết kế kiến trúc 10 1.3 Quyết định kiến trúc 18 1.4 Các quan điểm trong kiển trúc phần mềm 28 1.5 Tóm tắt 31 Chương 2 Các mẫu kiến trúc 33 2.1 Khái niệm chung 33 2.2 Mẫu 34 2.2.1 Kiến trúc Mô hình, Quan sát và Điều khiển (Model View Controller, MVC) 34 2.2.2 Kiến trúc Phân tầng (Layered Architecture, LA) 35 2.2.3 Kiến trúc Kho chứa (Repository Architecture, RA) 36 2.2.4 Kiến trúc Khách - Chủ (Client - Server, CS) 37 2.2.5 Kiến trúc Ống và Lọc (Pipe and Filter, PAF) 37 2.3 Các kiến trúc ứng dụng 38 2.4 Tóm tắt 39 Chương 3 Ngôn ngữ mô hình hóa 41 thống nhất UML 41 3.1 Lược sử UML 41 3.2 Khái quát về UML 42 3.3 Mô hình khái niệm của UML 45 3.3.1 Phần tử mô hình trong UML 46 3.3.2 Các quan hệ trong UML 50 3.3.3 Biểu đồ UML 53 3.4 Kiến trúc hệ thống trong UML 62 3.5 Rational Rose 66 3 3.6 Khả năng vận dụng UML 67 3.7 Tóm tắt 69 Chương 4 Phân tích yêu cầu 71 4.1 Phân tích yêu cầu 72 4.2 Phân tích viên 76 4.3 Lĩnh vực vấn đề 77 4.4 Kĩ thuật trao đổi 78 4.5 Nguyên lí phân tích 80 4.5.1 Miền thông tin 80 4.4.3 Mô hình hoá 82 4.6 Làm bản mẫu phần mềm 83 4.6.1 Kịch bản làm bản mẫu 84 4.6.2 Các phương pháp và công cụ làm bản mẫu 86 4.7 Đặc tả 88 4.7.1 Nguyên lí đặc tả 88 4.7.2 Biểu diễn 92 4.7.3 Đặc tả các yêu cầu phần mềm 93 4.8 Kiểm điểm đặc tả 95 4.9 Tóm tắt 98 Các chủ đề Hoạt động nhóm 99 TÀI LIỆU THAM KHẢO 183 Phụ lục 1 Các mô hình phát triển phần mềm 184 Phụ lục 2 Các khái niệm cơ bản của kĩ nghệ phần mềm 192 Phụ lục 3 Thuật ngữ 216 4 Lời nói đầu Cùng với sự ra đời và phát triển của công nghệ thông tin, công nghệ phần mềm đã được hình thành như một nguyên lí khoa học và phát triển ngày càng mạnh mẽ. Có thể hiểu công nghệ phần mềm là lĩnh vực của công nghệ thông tin nhằm nghiên cứu và đề xuất các nguyên lí, qui trình công nghệ, phương pháp, và công cụ trợ giúp các quá trình thiết kế, cài đặt và bảo trì sản phẩm phần mềm đáp ứng được các chỉ tiêu về chất lượng: tính đúng, tính khoa học, tính tin cậy, tính vững vàng, tính dễ chuyển mang, tính dễ sử dụng, dễ phát triển và hoàn thiện. Kiến trúc phần mềm chính là một nhánh của công nghệ phần mềm có nhiệm vụ quyết định cấu hình hệ thống thông qua việc mô tả các cấu phần và các mối liên quan giữa các cấu phần trong hệ thống phần mềm. Khoảng những năm sáu mươi của thế kỉ 20 đã bùng nổ một cuộc tranh luận về toán tử đầy nghi vấn – toán tử GOTO trong ngôn ngữ lập trình. Chính cuộc tranh luận này đã làm nảy sinh các ý tưởng và nguyên lí đầu tiên về công nghệ phần mềm. Điều thú vị là, ngay từ những ngày đầu sơ khởi và chập chững của công nghệ phần mềm, các phương pháp hình thức đã ra đời và phát triển nhanh chóng. Hàng loạt công trình nghiên cứu có ý nghĩa của các nhà tin học đầu đàn như Dijkstra, Dahl, Hoare, Boëhm đã nâng kĩ thuật lập trình lên một tầm cao, mang tính chặt chẽ và hoàn thiện, rất gần với các ngành khoa học chính xác [5]. Dahl và Dijkstra đã đề xuất nguyên lý lập trình theo đặc tả hình thức, Hoare xây dựng hệ tiên đề chứng minh tính đúng của chương trình thông qua các phương pháp toán học và suy luận logic, Boëhm và Dijkstra chứng minh tính đủ của hai cấu trúc điều khiển tuần tự và lặp while, trên cơ sở đó đề xuất khái niệm D-cấu trúc với lời khuyên lập trình viên chỉ nên sử dụng ba cấu trúc điều khiển một cách trong sáng và tao nhã là cấu trúc tuần tự, cấu trúc rẽ nhánh và cấu trúc lặp điều kiện trước [4]. Do nhu cầu thị trường, các hệ thống phần mềm phức tạp ngày càng tăng trưởng. Cùng với nó, các nguyên lí và công cụ trợ giúp thiết kế và phát triển hệ thống ngày càng gánh thêm trách nhiệm nặng nề và chuyên nghiệp. Nếu như trước đây, lập trình viên thường đảm đương luôn nhiệm vụ của kiến trúc sư hệ 5 Lời nói đầu ____________________________________ thống thì ngày nay, việc đó là không thể, chưa nói đến khả năng không được khuyến khích. Các khái niệm và công nghệ mới được hình thành và phát triển rất đa dạng. Có thể nói, ngày nay, mỗi mô hình phát triển phần mềm quyết định một vài qui trình sản xuất phần mềm. Đến lượt mình, mỗi qui trình sản xuất phần mềm lại quyết định một vài loại hình kiến trúc hiệu quả tương ứng. Giáo trình đặt ra hai mục tiêu cơ bản sau đây: 1. Giới thiệu khái quát các qui trình và phương pháp thiết kế kiến trúc hệ thống phần mềm, đi sâu vào các phương pháp tiên tiến và có hiệu quả theo nghĩa các phương pháp này đã được kiểm chứng trong thực tế; 2. Định hướng cho học viên một số kĩ năng trợ giúp tổ chức và chỉ đạo các nhóm thiết kế kiến trúc phần mềm tại các cơ sở làm phần mềm. Nội dung của giáo trình tương đương với một học ...

Tài liệu được xem nhiều:

Tài liệu có liên quan: