intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Công nghệ phần mềm: Chương 6 - Nguyễn Thanh Bình

Chia sẻ: Fgnfffh Fgnfffh | Ngày: | Loại File: PDF | Số trang:13

88
lượt xem
12
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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ế.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Công nghệ phần mềm: Chương 6 - Nguyễn Thanh Bình

  1. 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
  2. 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
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2