Bài giảng Công nghệ phần mềm: Chương 6 - Nguyễn Thanh Bình
lượt xem 12
download
Mục tiêu trình bày trong chương 6 Thiết kế thuộc bài giảng Công nghệ phần mềm trình bày các kiến thức cơ bản như: khái niệm thiết kế, các giai đoạn của thiết kế, thiết kế và sự thay đổi, thiết kế hướng mô đun, các tiêu chuẩn của một phương pháp thiết kế.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Công nghệ phần mềm: Chương 6 - Nguyễn Thanh Bình
- Thi t k (6) Nguy n Thanh Bình Khoa Công ngh Thông tin Trư ng ð i h c Bách khoa ð i h c ðà N ng Thi t k ? phân tích bài toán/v n ñ xu t phát t yêu c u mô t m t ho c nhi u gi i pháp ñánh giá các gi i pháp, ch n gi i pháp t t nh t m t m c tr u tư ng nh t ñ nh s d ng các mô hình 3 tính ch t tr l i câu h i “như th nào” mô t ch y u là c u trúc b qua các chi ti t cài ñ t • gi i pháp tr u tư ng ≠ gi i pháp c th 2 1
- Các giai ño n thi t k Ho t ñ ng thi t k xu t hi n trong các mô hình phát tri n khác nhau Hai giai ño n thi t k chính Thi t k ki n trúc • phân tích gi i pháp thành các thành ph n • ñ nh nghĩa giao di n gi a các thành ph n • ñ nh nghĩa ph n v n ñ ñư c gi i quy t b i m i thành ph n • có th ñư c th c hi n b i nhi u m c tr u tư ng Thi t k chi ti t • thi t k thu t toán, c u trúc d li u... 3 Các giai ño n thi t k Requirements specification Design activities Architectural Abstract Interface Component Data Algorithm design specificatio design design structure design n design Software Data System Interface Component Algorithm specification structure architecture specification specification specification specification Design products 4 2
- Các giai ño n thi t k Architectural design xác ñ nh các h th ng con Abstract specification ñ c t các h th ng con Interface design mô t giao di n các h th ng con Component design phân tích h th ng con thành các thành ph n Data structure design các c u trúc d li u lưu tr d li u c a bài toán Algorithm design thi t k thu t toán cho các hàm/mô-ñun 5 T i sao ph i thi t k ? có m t ki n trúc t t làm ch ñư c c u trúc h th ng “chia ñ tr ” ñ t ñư c các tiêu chu n ch t lư ng tái s d ng / d ke em th / d b o trì... thi t k hư ng ñ n s thay ñ i (design for change) 6 3
- Thi t k và s thay ñ i Thay ñ i = tích ch t ñ c trưng c a ph n m m D báo thay ñ i là c n thi t gi m chi phí b o trì D báo thay ñ i là khó khăn s thay ñ i thư ng không ñư c xác ñ nh trư c nhi u y u t thay ñ i cùng lúc th i ñi m thay ñ i là khó có th bi t trư c 7 Thi t k và s thay ñ i Các y u t có th thay ñ i thu t toán c u trúc d li u bi u di n d li u bên ngoài thi t b ngo i vi môi trư ng xã h i yêu c u khách hàng 8 4
- Thi t k hư ng mô-ñun Ph n m m là t p h p g m các mô-ñun tương tác v i nhau Mô-ñun hóa ñóng vai trò quan tr ng ñ có ñư c ph n m m ch t lư ng v i chi phí th p M c ñích thi t k h th ng xác ñ nh các mô-ñun có th xác ñ nh tương tác gi a các mô-ñun 9 Các tiêu chu n c a m t phương pháp thi t k Các tiêu chu n ñ ñánh giá m t phương pháp thi t k hư ng mô-ñun tính phân rã (modular decomposability) tính t ng h p (modular composability) tính d hi u (modular understandability) tính liên t c (modular continuity) tính b o v (modular protection) 10 5
- Các tiêu chu n c a m t phương pháp thi t k tính phân rã (modular decomposability) phân rã v n ñ thành các v n ñ con nh hơn có th gi i quy t các v n ñ con m t cách ñ cl p các phương pháp thi t k t trên xu ng (to- down design) th a mãn tiêu chu n này 11 Các tiêu chu n c a m t phương pháp thi t k tính t ng h p (modular composability) các mô-ñun d dàng ñư c k t h p v i nhau ñ t o nên các h th ng m i có m i quan h ch t ch v i tính tái s d ng tính t ng h p có th xung ñ t v i tính phân rã • phân rã thành các mô-ñun chuyên bi t thay vì các mô-ñun t ng quát 12 6
- Các tiêu chu n c a m t phương pháp thi t k tính d hi u (modular understandability) thi t k các mô-ñun m t cách d hi u tính ch t m i mô-ñun • m i mô-ñun có d hi u ? • các tên s d ng có ý nghĩa ? • cso s d ng thu t toán ph c t p ? Ví d s d ng “goto” chương trình vài nghìn dòng l nh, nhưng không s d ng hàm/th t c 13 Các tiêu chu n c a m t phương pháp thi t k tính liên t c (modular continuity) m t s thay ñ i trong ñ c t yêu c u ch d n ñ n s thay ñ i trong m t (ho c m t s ít) mô-ñun Ví d ☺không s d ng s ho c chu i ký t trong chương trình, ch ñư c s d ng các h ng ñã ñ nh nghĩa s d ng m ng 14 7
- Các tiêu chu n c a m t phương pháp thi t k tính b o v (modular protection) ki n trúc ñươc thi t k sao cho n u m t ñi u ki n b t thư ng x y ra, ch m t (ho c m t s ít) mô-ñun b nh hư ng 15 Thi t k ki n trúc Ki n trúc = t p h p các thành ph n/mô-ñun và quan h gi a chúng các thành ph n/mô-ñun • hàm / nhóm các hàm / l p ... quan h • s d ng / g i / th a k ... 16 8
- Ch t lư ng c a ki n trúc m i mô-ñun có tính k t c cao (high cohesion) m t mô-ñun là m t ñơn v lô-gíc toàn b mô-ñun cùng ñóng góp th c hi n m t m c tiêu liên k t l ng l o (low coupling) gi a các mô- ñun ít ràng bu c, ph thu c l n nhau d hi u ñ nh nghĩa r ràng các mô-ñun và quan h gi a chúng 17 Các lo i ki n trúc Ba lo i mô hình ki n trúc thư ng ñư c s d ng chia s d li u: mô hình “Repository” chia s d ch v , servers: mô hình “Client- Server” mô hình l p (layered model) 18 9
- Mô hình “Repository” Nguyên t c d li u chia s ñư c t p trung trong m t CSDL các h th ng con ñ u truy c p vào CSDL chung Khi m t lư ng d li u l n c n chia s gi a các h th ng con mô hình “Repository” thư ng ñư c s d ng 19 Mô hình “Repository” Ví d ki n trúc m t công c CASE 20 10
- Mô hình “Repository” Ưu di m ñơn gi n hi u qu khi chia s lư ng d li u l n s ñ c l p c a các h th ng con H n ch các h th ng con ph i th ng nh t trên mô hình d li u “repository” khó khăn khi phân tán d li u 21 Mô hình “Client-Server” Nguyên t c mô hình phân tán: d li u và x lý ñư c phân tán trên nhi u thành ph n khác nhau H th ng bao g m các servers cung c p các d ch v • có th có nhi u servers các clients yêu c u các d ch v phương th c trao ñ i • m ng hay trên m t máy tính 22 11
- Mô hình “Client-Server” Ví d 23 Mô hình “Client-Server” Ưu ñi m s d ng hi u qu m ng d dàng thêm server m i ho c nâng c p server hi n t i phân tán d li u d dàng H n ch m i h th ng con quan lý d li u riêng c a nó • có th d n ñ n dư th a không có ki n trúc t p trung ghi nh n các dich v • khó khăn ñ xác ñ nh d li u hay d ch v s d ng 24 12
- Mô hình l p Nguyên t c t ch c h th ng thành t p h p các l p m i l p cung c p t p h p các d ch v ñư c s d ng ñ mô t quan h gi a các h th ng con khi giao di n c a m t l p thay ñ i, ch l p k c n b nh hư ng h tr mô hình phát tri n tăng trư ng 25 Mô hình l p Ví d : h th ng qu n lý phiên b n 26 13
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Công nghệ phần mềm: Chương 1 - ThS. Nguyễn Khắc Quốc
61 p | 143 | 18
-
Bài giảng Công nghệ phần mềm: Bài 1 - TS. Lê Nguyễn Tuấn Thành
142 p | 232 | 17
-
Bài giảng Công nghệ phần mềm nâng cao: Giới thiệu môn học - Phạm Ngọc Hùng
14 p | 166 | 14
-
Tập bài giảng Công nghệ phần mềm - Phạm Hùng Phú, Nguyễn Văn Thẩm (Biên soạn)
291 p | 60 | 13
-
Bài giảng Công nghệ phần mềm: Chương 1 - ĐH Công nghệ TP.HCM
77 p | 36 | 13
-
Bài giảng Công nghệ phần mềm: Bài 1 - Học viện Kỹ thuật Quân sự
45 p | 20 | 11
-
Bài giảng Công nghệ phần mềm: Chương 0 - ThS. Trần Sơn Hải
5 p | 122 | 10
-
Bài giảng Công nghệ phần mềm: Yêu cầu phần mềm
66 p | 107 | 10
-
Bài giảng Công nghệ phần mềm: Chương 1 - ThS. Dương Thành Phết
19 p | 138 | 9
-
Bài giảng Công nghệ phần mềm: Chương 1 - Trường ĐH Công nghiệp TP. HCM
48 p | 42 | 9
-
Bài giảng Công nghệ phần mềm - Phần 1: Giới thiệu chung về công nghệ phần mềm
52 p | 88 | 8
-
Bài giảng Công nghệ phần mềm: Các quy trình phần mềm
31 p | 125 | 8
-
Bài giảng Công nghệ phần mềm: Chương 1 - ThS. Đinh Thị Lương
40 p | 12 | 6
-
Bài giảng Công nghệ phần mềm ứng dụng: Bài 1 - ThS. Thạc Bình Cường
58 p | 60 | 6
-
Bài giảng Công nghệ phần mềm - Chương 1: Tổng quan về CNPM
13 p | 112 | 5
-
Bài giảng Công nghệ phần mềm - Phần 1: Giới thiệu công nghệ phần mềm
52 p | 79 | 5
-
Bài giảng Công nghệ phần mềm: Phần 1 - Vũ Thị Hương Giang
52 p | 49 | 3
-
Bài giảng Công nghệ phần mềm: Chương 1 - ThS. Trần Sơn Hải
52 p | 73 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn