Đề cương môn học phân tích thiết kế hướng đối tượng
Phân tích thiết kế hướng đối tượng là môn học cung cấp cho sinh viên những kiến
thức cơ bản về phương pháp luận phát triển phần mềm hướng đối tượng, đồng thời rèn
luyện cho sinh viên kĩ năng mô hình hóa, kỹ năng phân tích và thiết kế hướng đối
tượng làm cơ sở cho việc tạo ra các bản thiết kế phần mềm chất lượng cao.
Môn học được thiết kế dành cho đối tượng là các sinh viên năm thứ 3 học kỳ 6 trong
chương trình đào tạo cử nhân công nghệ thông tin.
14 trang |
Chia sẻ: phanlang | Lượt xem: 3418 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Đề cương môn học phân tích thiết kế hướng đối tượng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
KHOA CÔNG NGHỆ THÔNG TIN
ĐỀ CƢƠNG MÔN HỌC
PHÂN TÍCH THIẾT KẾ
HƢỚNG ĐỐI TƢỢNG
HÀ NỘI - 2011
MỤC LỤC
1. Thông tin về giảng viên ........................................................................................... 1
2. Các môn học tiên quyết ........................................................................................... 1
3. Các môn học kế tiếp ................................................................................................ 1
4. Mục đích môn học ................................................................................................... 1
5. Mục tiêu của môn học ............................................................................................. 1
6. Nội dung cơ bản của môn học ................................................................................. 2
7. Mục tiêu chi tiết môn học ........................................................................................ 3
8. Bảng tổng hợp mục tiêu môn học............................................................................ 7
9. Tóm tắt nội dung môn học ...................................................................................... 8
10. Nội dung chi tiết ..................................................................................................... 8
11. Tài liệu .................................................................................................................. 10
11.1. Tài liệu chính ................................................................................................... 10
11.2. Tài liệu tham khảo ........................................................................................... 10
12. Hình thức tổ chức dạy học ..................................................................................... 10
12.1. Lịch trình chung .............................................................................................. 10
12.2. Lịch trình chi tiết ............................................................................................. 11
13. Chính sách đối với môn học ................................................................................... 12
14. Phương pháp, hình thức kiểm tra đánh giá ............................................................ 12
1
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
Khoa Công Nghệ Thông Tin
Bộ môn Công Nghệ Phần Mềm
Khóa đào tạo: Cử nhân Công Nghệ Thông Tin
Môn học: Phân tích thiết kế hướng đối tượng
Mã môn học:
Số tín chỉ: 03
Năm thứ: 3
Học kỳ: 06
Môn học: Bắt buộc
1. Thông tin về giảng viên
TS. Đặng Đức Hạnh
Bộ môn Công Nghệ Phần Mềm
Khoa Công Nghệ Thông Tin – Trường ĐH Công Nghệ
Email: hanhdd@vnu.edu.vn
2. Các môn học tiên quyết
- Lập Trình Hướng Đối Tượng
- Công Nghệ Phần Mềm
3. Các môn học kế tiếp
- Khóa luận tốt nghiệp
4. Mục đích môn học
Sau khóa học, sinh viên có được những kiến thức cơ bản về phương pháp luận phát
triển phần mềm hướng đối tượng, khả năng vận dụng kỹ thuật phân tích và thiết kế
hướng đối tượng theo một quy trình cụ thể để tạo ra các bản thiết kế chất lượng cao.
5. Mục tiêu của môn học
Sau khi kết thúc môn học, người học sẽ:
Về kiến thức:
- Áp dụng mô hình phát triển lặp, lấy kiến trúc làm trung tâm, và định hướng ca
sử dụng để tạo được mô hình thiết kế chất lượng cao
- Sử dụng ngôn ngữ mô hình hóa thống nhất UML để biểu diễn mô hình thiết kế
- Áp dụng các khái niệm hướng đối tượng: trừu tượng, bao gói, kế thừa, phân
cấp, mô đun hóa, và đa hình để tạo mô hình thiết kế có chất lượng
- Mô tả các khung nhìn về kiến trúc phần mềm, các cơ chế chính hình thành
2
kiến trúc, và chi phối của kiến trúc đối với thiết kế được tạo
- Xác định được các vấn đề thiết kế cơ bản và vận dụng các mẫu thiết kế
Kỹ năng:
- Sử dụng công cụ mô hình hóa để biểu diễn các mô hình phân tích và mô hình
thiết kế cho một hệ thống cụ thể
- Viết đặc tả phân tích và thiết kế của hệ thống theo định dạng tài liệu
Thái độ:
- Giải quyết vấn đề mang tính hệ thống
- Làm việc có phương pháp, kế hoạch và luôn đặt vào khung cảnh dự án
- Chú trọng hơn vào mô hình hóa so với lập trình
Các mục tiêu khác:
- Kỹ năng cộng tác, làm việc nhóm
- Kỹ năng tư duy sáng tạo, khám phá tìm tòi
- Trau dồi, phát triển năng lực đánh giá
- Rèn kỹ năng lập kế hoạch, tổ chức, quản lý, theo dõi kiểm tra việc thực hiện
chương trình học tập
6. Nội dung cơ bản của môn học
Sau đây là những nội dung cơ bản của môn :
1. Phát triển phần mềm chất lượng cao
2. Mô hình hóa hướng đối tượng
3. Tổng quan về các yêu cầu phần mềm
4. Tổng quan về phân tích và thiết kế
5. Phân tích kiến trúc
6. Phân tích ca sử dụng
7. Xác định các phần tử thiết kế
8. Xác định các cơ chế thiết kế
9. Mô tả kiến trúc thực thi và phân tán
10. Thiết kế ca sử dụng
11. Thiết kế hệ thống con
12. Thiết kế lớp
3
7. Mục tiêu chi tiết môn học
Mục tiêu
Nội dung
Bậc 1
(A – Nhớ)
Bậc 2
(B – Hiểu, Áp dụng)
Bậc 3
(C - Phân tích,
Tổng hợp, Đánh giá)
Ch01. Phát
triển phần
mềm chất
lượng cao
I.A.1. Xác định được
các hoạt động cho
việc hiểu và giải
quyết các vấn đề kỹ
nghệ phần mềm.
I.A.2. Diễn giải được
sáu kinh nghiệm thực
hành tốt nhất cho kỹ
nghệ phần mềm.
I.A.3. Diễn giải được
tiến trình RUP trong
khung cảnh với sáu
kinh nghiệm thực
hành đó.
Ch02. Mô
hình hóa
hướng đối
tượng
II.A.1. Diễn giải các
nguyên lý cơ bản của
hướng đối tượng.
II.B.1. Giải thích và
minh họa được các thế
mạnh của hướng đối
tượng.
II.A.2. Xác định các
khái niệm và thuật
ngữ hướng đối tượng
cơ bản cùng với các
ký pháp UML tương
ứng.
II.A.3. Nêu được các
ký pháp cơ bản của 9
loại biểu đồ UML.
Ch03. Tổng
quan về yêu
cầu phần
III.A.1. Mô tả được
khái niệm cơ bản về
yêu cầu phần mềm.
III.B.1. Diễn giải được
tầm ảnh hưởng của khái
niệm yêu cầu với phân
tích và thiết kế.
4
mềm III.A.2. Nêu được các
chế tác về yêu cầu
phần mềm.
III.B.2. Đọc và cụ thể
hóa được các chế tác
yêu cầu phần mềm với
tư cách là đầu vào cho
phân tích thiết kế.
Ch04. Tổng
quan về
phân tích và
thiết kế
IV.A.1. Liệt kê được
các thuật ngữ và khái
niệm về phân tích và
thiết kế.
IV.B.1. Diễn giải được
sự khác nhau giữa phân
tích và thiết kế.
IV.A.2. Nêu được tiến
trình phân tích và
thiết kế bao gồm các
vai trò, chế tác và
luồng công việc.
Ch05. Phân
tích kiến
trúc
V.A.1. Nêu được mục
đích của phân tích
kiến trúc và giai đoạn
thực hiện trong vòng
đời phát triển.
V.A.2. Mô tả được
các mẫu kiến trúc tiêu
biểu, tập các cơ chế
phân tích.
V.B.2. Diễn giải được
tầm ảnh hưởng của mẫu
kiến trúc và cơ chế phân
tích đối với kiến trúc
phần mềm.
V.A.3. Mô tả được tư
tưởng, chế tác và mối
quan tâm cho việc ra
quyết định về kiến
trúc phần mềm.
V.B.3. Đọc và minh họa
được các kết quả phân
tích kiến trúc, bao gồm:
các tầng kiến trúc và
mối quan hệ, các trừu
tượng chính và các cơ
chế phân tích.
Ch06. Phân
tích ca sử
dụng
VI.A.1. Nêu được
mục đích của hoạt
động phân tích ca sử
dụng và giai đoạn
diễn ra trong vòng đời
phát triển.
VI.B.1. Xác định ca sử
dụng trên cơ sở mô tả
của người dùng về hệ
thống.
VI.A.2. Nêu được
khái niệm ca sử dụng,
lớp phân tích, kịch
bản và luồng sự kiện.
VI.B.2. Xác định được
các lớp phân tích thực
thi luồng sự kiện ca sử
dụng.
5
VI.A.3. Nêu được
khái niệm vai trò của
lớp phân tích và cách
xác định nó.
VI.B.3. Phân bố được
hành vi ca sử dụng cho
các lớp phân tích.
VI.C.3. Đánh giá
được tính hợp lý của
phân tích ca sử dụng
VI.A.4. Nêu được
khái niệm hiện thực
hóa ca sử dụng, và
chỉ ra các biểu đồ
UML giúp hiện thực
hóa ca sử dụng.
VI.B.4. Phát triển được
các hiện thực hóa ca sử
dụng và các cộng tác
giữa các thể hiện của
các lớp đã được xác
định.
VI.C.4. Kiểm tra
được tính không
nhất quán của kết
quả phân tích.
Ch07. Xác
định các
phần tử
thiết kế
VII.A.1. Nêu được
mục đích của việc xác
định các phần tử thiết
kế và chỉ ra nó được
thực hiện ở đâu trong
vòng đời phát triển.
VII.A.2. Nêu được
khái niệm về các phân
tử thiết kế, gồm có:
các lớp thiết kế, các
hệ thống con và các
giao diện hệ thống
VII.B.2. Phân tích được
các tương tác giữa các
đối tượng phân tích và
xác định được các phân
tử thiết kế.
Ch08. Xác
định các cơ
chế thiết kế
VIII.A.1. Nêu được
mục đích của việc xác
định các cơ chế thiết
kế và chỉ ra nó được
thực hiện ở đâu trong
vòng đời phát triển.
VIII.A.2. Nêu được
các khái niệm về cơ
chế thiết kế và chỉ ra
cách mà chúng được
ánh xạ từ các cơ chế
phân tích.
VIII.B.2. Xác định được
các cơ chế thiết kế từ
các cơ chế phân tích cho
case study cụ thể.
VIII.C.1. Đánh giá
được ưu và nhược
điểm cho việc lựa
chọn cơ chế thiết kế.
Ch09. Mô
tả kiến trúc
thực thi và
phân tán
IX.A.1. Nêu được
mục đích của việc mô
tả kiến trúc thực thi
và phân tán và chỉ ra
nó được thực hiện ở
đâu trong vòng đời
phát triển.
6
IX.A.2. Nêu các khái
niệm về luồng và tiến
trình
IX.B.2. Mô hìn hóa
được các tiến trình và
các luồng cho case
study cụ thể.
IX.A.3. Mô tả làm thế
nào các lớp và các hệ
thống con được ánh
xạ vào các luồng và
tiến trình
IX.A.4. Mô tả làm thế
nào chức năng của hệ
thống có thể phân bố
trên các nốt vật lý.
IX.B.4. Mô hình hóa
các quyết định phân tán
trong biểu đồ phân bố
cho ca sử dụng cụ thể.
IX.A.5. Mô tả được
tư tưởng và các mối
quan tâm cho việc ra
quyết định về kiến
trúc phần mềm.
Ch10. Thiết
kế ca sử
dụng
X.A.1. Nêu được mục
đích của thiết kế ca sử
dụng và chỉ ra pha
thực hiện của nó
trong vòng đời phát
triển.
X.B.1. Làm mịn được
các hiện thực hóa ca sử
dụng ở cấp độ phân tích
để thu được mô hình
thiết kế ca
sử dụng.
X.C.1. Kiểm chứng
được tính nhất quán
trong triển khai ca
sử dụng
Ch11. Thiết
kế hệ thống
con
XI.A.1. Nêu được
mục đích của thiết kế
hệ thống con và chỉ ra
pha thực hiện của nó
trong vòng đời phát
triển.
XI.B.1. Xác định các
hành vi dạng cộng tác
giữa các lớp chứa được
đặc tả trong các giao
diện hệ thống con.
XI.B.2. Làm tài liệu cấu
trúc trong của các hệ
thống con.
XI.B.3. Xác định được
sự phụ thuộc giữa các
phần từ ngoài và các hệ
thống con.
7
Ch12. Thiết
kế lớp
XII.A.1. Nêu được
mục đích của thiết kế
lớp và chỉ ra pha thực
hiện của nó trong
vòng đời phát triển.
XII.B.1. Xác định được
các lớp thiết kế bổ sung
và các mối quan hệ để
hiện thực hóa các cơ chế
thiết kế đã chọn.
XII.A.2. Nêu được
mô hình chuyển trạng
thái đối tượng và cách
biểu diễn trong UML.
XII.B.2. Xác định và
phân tích được các
chuyển trạng thái của
các đối tượng thuộc lớp
được điểu khiển bởi
trạng thái.
XII.B.3. Làm mịn các
quan hệ, các thao tác và
các thuộc tính ở cấp độ
phân tích.
8. Bảng tổng hợp mục tiêu môn học
Mục tiêu
Nội dung
Bậc 1 Bậc 2 Bậc 3 Mục tiêu khác
Ch01. 3 0 0 0
Ch02. 3 1 0
Ch03. 2 2 0 0
Ch04. 2 1 0 0
Ch05. 3 2 0 0
Ch06. 4 4 2 0
Ch07. 2 1 0 0
Ch08. 2 1 1 0
Ch09. 5 2 0 0
Ch10. 1 1 1 0
Ch11. 1 3 0 0
Ch12. 2 3 0 0
Tổng 28 21 4 0
8
9. Tóm tắt nội dung môn học
Phân tích thiết kế hướng đối tượng là môn học cung cấp cho sinh viên những kiến
thức cơ bản về phương pháp luận phát triển phần mềm hướng đối tượng, đồng thời rèn
luyện cho sinh viên kĩ năng mô hình hóa, kỹ năng phân tích và thiết kế hướng đối
tượng làm cơ sở cho việc tạo ra các bản thiết kế phần mềm chất lượng cao.
Môn học được thiết kế dành cho đối tượng là các sinh viên năm thứ 3 học kỳ 6 trong
chương trình đào tạo cử nhân công nghệ thông tin.
10. Nội dung chi tiết
Môn học truyền tải những nội dung sau:
Chƣơng 1. Phát triển phần mềm chất lƣợng cao
1.1. Phát triển tăng dần
1.2. Quản lý yêu cầu
1.3. Kiến trúc hướng thành phần
1.4. Mô hình hóa trực quan
1.5. Kiểm chứng chất lượng
1.6. Quản lý thay đổi
Chƣơng 2. Mô hình hóa hƣớng đối tƣợng
2.1. Lược đồ hướng đối tượng
2.2. Biểu diễn lược đồ bằng ngôn ngữ mô hình UML
Chƣơng 3. Tổng quan về yêu cầu phần mềm
3.1. Giới thiệu
3.2. Các khái niệm chính
3.3. Mô hình ca sử dụng
3.4. Từ điển thuật ngữ
Chƣơng 4. Tổng quan về phân tích và thiết kế
4.1. Các khái niệm chính
4.2. Luồng công việc phân tích và thiết kế
Chƣơng 5. Phân tích kiến trúc
5.1. Tổng quan về phân tích kiến trúc
5.2. Các khái niệm chính
5.3. Tổ chức mức cao của các hệ thống con
5.4. Xác định các cơ chế phân tích
5.5. Xác định các trừu tượng hóa chính
5.6. Tạo các hiện thực hóa ca sử dụng
Chƣơng 6. Phân tích ca sử dụng
6.1. Tổng quan về phân tích ca sử dụng
6.2. Bổ sung cho mô tả ca sử dụng
6.3. Tìm các lớp từ hành vi ca sử dụng
6.4. Phân bổ hành vi ca sử dụng cho các lớp
6.5. Mô tả các trách nhiệm
9
6.6. Mô tả các thuộc tính và liên kết
6.7. Các bước phân tích ca sử dụng
6.8. Thống nhất các lớp phân tích
Chƣơng 7. Xác định các phần tử thiết kế
7.1. Tổng quan về xác định các phần tử thiết kế
7.2. Xác định các lớp và các hệ thống con
7.3. Xác định các giao diện hệ thống con
7.4. Xác định các cơ hội sử dụng lại
7.5. Cập nhật lại mô hình thiết kế
Chƣơng 8. Xác định các cơ chế thiết kế
8.1. Tổng quan về xác định các cơ chế thiết kế
8.2. Phân loại các nhóm sử dụng cơ chế phân tích
8.3. Làm tài liệu cơ chế kiến trúc
Chƣơng 9. Mô tả kiến trúc thực thi và phân tán
9.1. Tổng quan về thiết kế kiến trúc
9.2. Mô tả kiến trúc thực thi
9.3. Mô tả kiến trúc phân tán
Chƣơng 10. Thiết kế ca sử dụng
10.1. Tổng quan về thiết kế ca sử dụng
10.2. Mô tả tương tác giữa các đối tượng thiết kế
10.3. Đơn giản hóa biểu đồ tuần tự sử dụng các hệ thống con
10.4. Mô tả hành vi liên quan đến lưu trữ lâu bền
10.5. Làm mịn mô tả luồng sự kiện
10.6. Thống nhất các lớp và các hệ thống con
Chƣơng 11. Thiết kế hệ thống con
11.1. Tổng quan về thiết kế hệ thống con
11.2. Phân bố hành vi của hệ thống con cho các phần tử của nó
11.3. Làm tài liệu các phần tử của hệ thống con
11.4. Mô tả các phụ thuộc giữa các hệ thống con
Chƣơng 12. Thiết kế lớp
12.1. Tổng quan về thiết kế lớp
12.2. Hình thành các lớp thiết kế
12.3. Xác định biểu đồ lớp thiết kế
12.4. Xác định các biểu đồ trạng thái
12.5. Dung hòa xác xung đột giữa các ca sử dụng
12.6. Điều khiển các yêu cầu phi chức năng
12.7. Ánh xạ lớp lưu trữ lâu bền vào cơ sở dữ liệu
10
11. Tài liệu
11.1. Tài liệu chính
Đặng Văn Đức, Phân tích thiết kế hướng đối tượng bằng UML, 2002
Bộ giáo trình OOAD của IBM, 2009
11.2. Tài liệu tham khảo
Craig Larman, Applying UML and Patterns: An Introduction to Object-
Oriented Analysis and Design and Iterative Development, 2004
I. Jacobson, Object-Oriented Software Engineering: A Use Case Driven
Approach, 2000
G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language
Reference Manual, 2nd Edition, 2004
12. Hình thức tổ chức dạy học
12.1. Lịch trình chung
TUẦN
NỘI
DUNG
HÌNH THỨC TỔ CHỨC DẠY HỌC
TỔNG
SỐ
Lý thuyết Nhóm Thực hành Khác Tự học KTĐG
1. Ch01 2 1 BT tuần 3
2. Ch02 2 1 BT tuần 3
3. Ch03 2 1 BT tuần 3
4. Ch04 2 1 BT tuần 3
5.
Case
Study
0 2 1 BT nhóm 3
6. Ch05 2 1 BT tuần 3
7. Ch06 2 1 BT tuần 3
8.
Case
Study
0 2 1 BT nhóm 3
9. Ch07 2 1 BT tuần 3
10. Ch08 2 1 BT tuần 3
11. Ch09 0 2 1 BT nhóm 3
12. Ch10 2 1 BT tuần 3
11
13. Ch11 2 1 BT tuần 3
14. Ch12 2 1 BT tuần 3
15.
Case
Study
2 1 BT lớn HK 3
Tổng 24 6 15 0 0 45
12.2. Lịch trình chi tiết
Hình thức
tổ chức
dạy học
Thời
gian, địa
điểm
Nội dung chính
Yêu cầu sinh viên
chuẩn bị
Ghi chú
Tuần 06
Ch06. Phân tích ca sử dụng
Lí thuyết
(Lecture)
2 giờ
tín chỉ
- Tổng quan về phân tích
ca sử dụng
- Tìm các lớp từ hành vi ca
sử dụng
- Phân bố hành vi ca sử
dụng cho các lớp phân tích
- Hiện thực hóa ca sử dụng
bằng sự cộng tác giữa các
đối tượng
Đọc:
- Bài giảng chương 6
trong bộ giáo trình IBM
- Đặng Văn Đức, Phân
tích thiết kế hướng đối
tượng bằng UML, 2002
(Chương 3)
- I. Jacobson, Object-
Oriented Software
Engineering: A Use Case
Driven Approach, 2000.
(Chương 5)
Chuẩn bị tài liệu về
mô tả ca sử dụng
trong case study và
lập dàn ý các vấn đề
cần thảo luận
Thực
hành
2 giờ
thực hành
(1 giờ
tín chỉ)
- Biểu diễn mô hình ca sử
dụng trên Magic Draw
- Viết tài liệu đặc tả ca
sử dụng theo định dạng
- Biểu diễn các hiện thực
hóa ca sử dụng ở cấp
phân tích
Đọc:
- Tài liệu hướng dẫn
RUP phần đặc tả ca
sử dụng
- Tài liệu hướng dẫn
Magic Draw cho mô
hình ca sử dụng
Chuẩn bản kế hoạch
thực hiện nội dung
thực hành
12
13. Chính sách đối với môn học
Theo Quy chế đào tạo hiện hành
- Cho phép thực hiện lại bài tập không quá 1 lần (trong trường hợp không đạt)
14. Phƣơng pháp, hình thức kiểm tra đánh giá
a. Hình thức đánh giá
b. Tiêu chí đánh giá
Bài tập cá nhân:
- Hình thức: Bài luận 2-3 trang A4
- Nội dung: (Bài tập cá nhân tuần từ tuần 01 đến tuần 15)
- Tiêu chí đánh giá:
Bài tập nhóm tháng:
- Hình thức : viết tiểu luận (7-10 trang A4)
- Nội dung: (Bài tập nhóm tháng 01, 02, 03 và 04)
- Tiêu chí đánh giá:
Bài tập lớn học kỳ :
- Hình thức : Tài liệu phân tích thiết kế
- Nội dung:
- Tiêu chí đánh giá:
Thi cuối kỳ :
- Hình thức: Thi viết cuối kỳ
- Nội dung: 12 vấn đề đã được nghiên cứu
- Tiêu chí đánh giá:
Hình thức Tỉ lệ
Bài tập cá nhân tuần 10%
Bài tập nhóm 10%
Bài tập lớn học kỳ 20%
Thi giữa kỳ 20%
Thi cuối kỳ 40%
Các file đính kèm theo tài liệu này:
- decuongooad_8399.pdf