18.1. Tên học phần: Kiến trúc phần mềm tiên tiến (Advanced Software Architecture) Architecture) 18.2. Mã số: ITSA 518 18.3. Số tín chỉ: 2 tín chỉ 18.4. Người phụ trách: 18.5. Khoa/Viện 18.6. Mục tiêu học phần:
Kiến thức: Cung cấp cho học viên kiến thức chung về kiến trúc phần mềm: các phần tử
phần mềm, các thuộc tính và mối quan hệ giữa chúng. Ngồi ra, học phần cũng đề cập đến các tài liệu kiến trúc phần mềm của một hệ thống, thuận tiện cho việc thiết kế, trao đổi thơng tin giữa các thành viên trong một dự án và cho phép tái sử dụng các thành phần và mẫu thiết kế của các dự án.
Kỹ năng: Cung cấp cho học viên các kĩ năng phân tích, đánh giá và triển khai một mơ hình
kiến trúc phần mềm dựa trên các nền tảng cơng nghệ và kĩ thuật tiên tiến.
Thái độ: Cĩ thái độ, nhận thức đúng đắng về nội dung và các hoạt động nghiên cứu liên quan đến mơn học
18.7. Mơ tả học phần: Nguồn gốc của kiến trúc phần mềm như một ý tưởng được giới thiệu đầu tiên trong nghiên cứu của Edsger Dijkstra năm 1968 và David Parnas đầu những thiệu đầu tiên trong nghiên cứu của Edsger Dijkstra năm 1968 và David Parnas đầu những năm 1970. Các nhà khoa học nhấn mạnh rằng cấu trúc của một hệ thống phần mềm rất quan trọng và đạt được cấu trúc đúng đắn là một yếu tố quyết định. Những tiếp cận ban đầu thơng qua việc lựa chọn các cấu trúc dữ liệu, phát triển các thuật tốn và áp dụng các thuật tốn để chia nhỏ các vấn đề. Những năm 90 các nghiên cứu về lĩnh vực này ngày càng nhiều và trở nên phổ biến cùng với các nghiên cứu tập trung vào các mẫu thiết kế (Design Pattern), ngơn ngữ đặc tả kiến trúc (Architecture Description Languages), tài liệu kiến trúc và các phương pháp chính thức.
Chương Nội dung
Phân phối thời lượng LT (giờ) TL (giờ) BTL (giờ) TiL (giờ) TH (giờ) TN (giờ) 1 Tổng quan 2 - 2 Các mơ hình kiến trúc 2 -
3 Khơng gian kiến trúc và mẫu thiết
kế 2 -
4 Kiến trúc hướng đối tượng 3 -
5 Kiến trúc tương tác 3 -
63
Tổng cộng 15 45
18.8. Nội dung chi tiết
Chương 1. Tổng quan (LT 02)
1.1 Giới thiệu chung 1.2 Kiến trúc phần mềm 1.3 Các phong cách kiến trúc
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Chương 2. Các mơ hình kiến trúc (LT 02)
2.1 Tổng quan
2.2 Các mơ hình kiến trúc 2.3 Ngơn ngữ mơ tả
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Chương 3. Khơng gian kiến trúc và mẫu thiết kế (LT 03)
3.1 Tổng quan
3.2 Cấu trúc phần mềm 3.3 Thành phần
3.4 Các mẫu thiết kế
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Chương 4. Kiến trúc hướng đối tượng (LT 03)
4.1 Tổng quan
4.2 Lớp và đối tượng
4.3 Phân tích hướng đối tượng 4.4 Thiết kế hướng đối tượng 4.5 Các nguyên tắc thiết kế
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
64
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Chương 5. Kiến trúc hướng tương tác (LT 04)
5.1. Tổng quan 5.2. Mơ hình MVC 5.3. Mơ hình PAC
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Chương 5. Kiến trúc phân tán (LT 04)
6.1 Tổng quan
6.2 Mơ hình phân lớp 6.3 Mơ hình client – server 6.4 Kiến trúc hướng dịch vụ
Tài liệu tham khảo của chương:
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
Nội dung thảo luận: Theo chuyên đề của từng chương và tập trung vào các vấn đề liên quan
đến các phần tử phần mềm, các thuộc tính và mối quan hệ giữa chúng…
Nội dung bài tập lớn: Xây dựng thuật tốn, cài đặt một số bài tốn theo các kiến trúc khác
nhau: hướng đối tượng, hướng tương tác,..
18.9. Tài liệu học tập và tham khảo: Tài liệu học tập Tài liệu học tập
[1]. Kai Qian, Xiang Fu, Lixin Tao, Chong-wei Xu, and Jorge Diaz-Herrera, Software Architecture and Design Illuminated, Jones and Bartlett Publishers, 2010.
[2]. Taylor, Medvidovic, Dashofy, Software Architecture - Foundations, Theory and Practice, Wiley 2009.
Tài liệu tham khảo
[3]. Len Bass, Paul Clements and Rick Kazman, Software Architecture in Practice, 3rd Edition, McGraw Hill Book Com.,2012.
18.10. Thang điểm: 10/10
TT Nội dung đánh giá Trọng số (%) Ghi chú
1 Điểm Kiểm tra/TL/TH/TN 20
2 Điểm /BTL/TiL 30
3 Điểm thi kết thúc học phần 50
65
18.11. Ngày phê duyệt: Cấp phê duyệt: Cấp phê duyệt:
66