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

Bài giảng môn học Kỹ nghệ phần mềm: Bài 6 - PGS.TS. Nguyễn Văn Vỵ

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

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

Bài giảng môn học Kỹ nghệ phần mềm: Bài 6 trình bày các hoạt động thiết kế bao gồm thiết kế kiến trúc và thiết kế giao diện. Tham khảo nội dung chi tiết bài giảng để hiểu rõ hơn về thiết kế phần mềm.

Chủ đề:
Lưu

Nội dung Text: Bài giảng môn học Kỹ nghệ phần mềm: Bài 6 - PGS.TS. Nguyễn Văn Vỵ

  1. Kỹ nghệ phần mềm Software Engeneering NguyÔn V¨n Vþ Bé m«n C«ng nghÖ phÇn mÒm- Khoa CNTT- §HCN Email: vynv@coltech.vnu.vn
  2. Bài 6: Các hoạt động thiết kế NguyễnVănVỵ Nội dung „ ThiÕt kÕ kiÕn tróc „ ThiÕt kÕ giao diÖn Bộ môn Công nghệ phần mềm – ĐHCN 2
  3. TÀI LiỆU THAM KHẢO NguyễnVănVỵ 1. Nguyễn Văn Vỵ, Nguyễn Việt Hà. Giáo trình kỹ nghệ phần mềm. Nhà xuất bản Đại học Quốc gia Hà nội, 2008 2. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified Modeling language User Guid. Addison-Wesley, 1998. 3. M. Ould. Managing Software Quality and Business Risk, John Wiley and Sons, 1999. 4. Roger S.Pressman, Software Engineering, a Practitioner’s Approach. Fifth Edition, McGraw Hill, 2001. 5. Ian Sommerville, Software Engineering. Sixth Edition, Addison- Wasley, 2001. 6. Nguyễn Văn Vỵ. Phân tích thiết kế hệ thống thông tin hiện đại. Hướng cấu trúc và hướng đối tượng, NXB Thống kê, 2002, Hà Nội. Bộ môn Công nghệ phần mềm – ĐHCN 3
  4. ThiÕt kÕ kiÕn tróc phÇn mÒm software achitecture design NguyễnVănVỵ Kh¸i niÖm kiÕn tróc „ KiÕn tróc phÇn mÒm chØ cÊu tróc tæng thÓ cña 1 phÇn mÒm vµ c¸ch thõc tổ chức qua ®ã cho ta 1 sù tÝch hîp vÒ mÆt kh¸i niÖm cña 1 hÖ thèng [SHA95a] „ Th«ng th−êng: thÓ hiÖn b»ng mét biÓu ®å ph©n cÊp cña c¸c thμnh phÇn vμ quan hÖ gi÷a chóng „ §Çy ®ñ: thÓ hiÖn cÇu tróc hÖ thèng theo nhiÒu gãc nh×n kh¸c nhau: tÜnh, ®éng, d÷ liÖu, triÓn khai [SHA95a] Shaw,M and D.Garlan, Formulation and formalisms in software achitecture, volume 100-lecture Notes in computer Science, Springer-verlag,1995 Bộ môn Công nghệ phần mềm – ĐHCN 4
  5. Vai trß kiÕn tróc phÇn mÒm NguyễnVănVỵ „ Kh«ng ph¶i lμ m« h×nh ho¹t ®éng „ lμ m« h×nh ph©n ho¹ch theo những c¸ch nh×n kh¸c nhau (chøc n¨ng, d÷ liÖu, tiÕn tr×nh, tÜnh hay ®éng..) „ gióp kÜ s− hÖ thèng: ƒ Ph©n tÝch tÝnh hiÖu qu¶ cña thiÕt kÕ ®¸p øng ®−îc yªu cÇu cña phÇn mÒm ƒ T×m c¸c gi¶i ph¸p thay thÕ cÊu tróc ë giai ®o¹n sím ƒ Gi¶m c¸c rñi ro liªn quan tíi cÊu tróc Bộ môn Công nghệ phần mềm – ĐHCN 5
  6. Kh¸i niÖm thiÕt kÕ kiÕn tróc NguyễnVănVỵ   Qu¸ tr×nh x¸c ®Þnh c¸c hÖ con lËp thµnh hÖ thèng vµ khung lµm viÖc ®Ó ®iÒu khiÓn & giao tiÕp gi÷a c¸c hÖ con víi nhau   B¾t ®Çu sím ngay tõ giai ®o¹n ®Çu cña thiÕt kÕ hÖ thèng, tiÕn hμnh cïng víi mét sè ho¹t ®éng ®Æc t¶   Nã bao gåm viÖc x¸c c¸c thμnh phÇn chÝnh cña hÖ thèng sù truyÒn thèng gi÷a chóng Bộ môn Công nghệ phần mềm – ĐHCN 6
  7. C¸c b−íc thiÕt kÕ kiÕn tróc NguyễnVănVỵ 1. CÊu tróc hãa hÖ thèng: ph©n chia hÖ thèng thμnh c¸c hÖ con (sub-system) ®éc lËp vμ x¸c ®Þnh trao ®æi th«ng tin gi÷a c¸c hÖ con x¸c định c¸c giao diÖn cña chóng 2. M« hinh hãa ®iÒu khiÓn: x¸c lËp m« hinh ®iÒu khiÓn gi÷a c¸c phÇn kh¸ nhau cña hÖ thèng ®· ®−îc x¸c ®Þnh 3. Ph©n r· thμnh c¸c module: ph©n r· c¸c hÖ con thμnh c¸c module. ™ HÖ con: phÇn hÖ thèng ho¹t ®éng ®éc lËp víi c¸c dÞch vô mμ c¸c hÖ con kh¸c cung cÊp ™ M«dun: phÇn hÖ thèng cung cÊp dÞch vô vμ t−¬ng t¸c cïng phÇn kh¸c ®Ó t¹o ra dÞch vô hay s¶n phÈm Bộ môn Công nghệ phần mềm – ĐHCN 7
  8. C¸c m« h×nh kiÕn tróc NguyễnVănVỵ „ C¸c m« h×nh kiÕn tróc kh¸c nhau ®−îc t¹o ra trong qu¸ tr×nh thiÕt kÕ „ Mçi m« h×nh biÓu diÔn mét c¸ch nh×n cña kiÕn tróc  M« h×nh kiÕn tróc tÜnh chØ ra c¸c thμnh phÇn chÝnh cña hÖ thèng (biÓu ®å ph©n r·)  M« h×nh ®éng chØ ra cÊu tróc tiÕn tr×nh cña hÖ thèng (biÓu ®å luång d÷ liÖu)  M« h×nh giao diÖn x¸c ®Þnh hÖ thèng giao diÖn cña hÖ thèng (hÖ thèng giao diÖn t−¬ng t¸c)  M« h×nh mèi quan hÖ nh− m« h×nh kh¸I niÖm thùc thÓ miÒn d÷ liÖu cña hÖ thèng Bộ môn Công nghệ phần mềm – ĐHCN 8
  9. Mét sè m« h×nh kiÕn tróc NguyễnVănVỵ 1. KiÕn tróc d÷ liÖu tËp trung (Data-centered architectures) 2. KiÕn tróc kh¸ch/dÞch vô (Client-server architectures) 3. Kiªn tróc ph©n tÇng (Layered architectures) 4. KiÕn tróc gäi vμ tr¶ l¹i (Call and return architectures) 5. KiÕn tróc luång d÷ liÖu (Data flow architectures) 6. KiÕn tróc h−íng ®èi t−îng (Object-oriented architectures) Bộ môn Công nghệ phần mềm – ĐHCN 9
  10. KiÕn tróc d÷ liÖu tËp trung NguyễnVănVỵ PhÇn mÒm PhÇn mÒm kh¸ch kh¸ch PhÇn mÒm PhÇn mÒm kh¸ch kh¸ch Kho d÷ liÖu (repository) PhÇn mÒm PhÇn mÒm kh¸ch kh¸ch PhÇn mÒm PhÇn mÒm kh¸ch kh¸ch Bộ môn Công nghệ phần mềm – ĐHCN 10
  11. KiÕn tróc cña bé c«ng cô CASE NguyễnVănVỵ Bé ph©n Bé biªn tËp tÝch thiÕt kª ch−¬ng tr×nh Bé biªn tËp Kho d÷ liÖu cña dù ¸n Bé t¹o sinh thiÕt kÕ (präject repository) m· Bé dÞch Bé t¹o sinh thiÕt kÕ b¸o c¸o Bộ môn Công nghệ phần mềm – ĐHCN 11
  12. KiÕn tróc d÷ liÖu trung t©m(t) NguyễnVănVỵ „ ¦u ®iÓm TiÖn lîi cho chia sÎ d÷ liÖu lín „ „ Ph©n hÖ kh«ng cÇn biÕt d÷ liÖu ®−îc qu¶n lý vμ t¹o ra nh− thÕ nμo (sao l−u, b¶o mËt,..) „ Nh−îc ®iÓm „ C¸c hÖ con ph¶i theo m« h×nh d÷ liÖu cña kho „ ViÖc tiÕn ho¸ d÷ liÖu lμ khã kh¨n vμ ®¾t ®á „ Khã cã chÝnh s¸ch qu¶n lý riªng cho c¸c hÖ con „ Khã ph©n bè d÷ liÖu mét c¸ch hiÖu qu¶ Bộ môn Công nghệ phần mềm – ĐHCN 12
  13. KiÕn tróc client-server NguyễnVănVỵ M¸y kh¸ch 1 M¸y kh¸ch 2 M¸y kh¸ch 3 M¸y kh¸ch 4 M¹ng b¨ng th«ng réng server server server server Danh môc fim ¶nh sè web HTML Bộ môn Công nghệ phần mềm – ĐHCN 13
  14. KiÕn tróc client-server (t) NguyễnVănVỵ „ ¦u ®iÓm  Ph©n phèi d÷ liÖu trùc tiÕp  Sö dông hiÖu qu¶ m¹ng, dïng thiÕt bÞ rÎ h¬n  DÔ dμng më réng, thªm dÞch vô „ Nh−îc ®iÓm  C¸c hÖ con dïng cÊu tróc d÷ liÖu kh¸c nhau kh«ng chia sÎ ®−îc, trao ®æi d÷ liÖu cã thÓ kh«ng hiÖu qu¶  Qu¶n lý ë mçi server lμ d− thõa  Kh«ng l−u gi÷ chung tªn vμ dÞch vô -> khã t×m server hay dÞch vô rçi §ang lμ m« h×nh ph¸t triÓn øng dông phæ biÕn Bộ môn Công nghệ phần mềm – ĐHCN 14
  15. KiÕn tróc ph©n tÇng Layered Architecture NguyễnVănVỵ C¸c thμnh phÇn tÇng giao diÖn ng−êi dung tÇng øng dông tÇng tiÖn Ých tÇng lâi M« h×nh m¸y trõu t−îng Bộ môn Công nghệ phần mềm – ĐHCN 15
  16. KiÕn tróc ph©n tÇng (t) NguyễnVănVỵ „ Dïng ®Ó m« hinh hãa giao diÖn cña c¸c ph©n hÖ (sub-systems) „ Ph©n r· hÖ thèng thμnh c¸c tÇng, mçi tÇng lμ mét tËp c¸c dÞch vô „ Hç trî sù ph¸t triÓn t¨ng tr−ëng cña c¸c tÇng, khi giao diÖn mçi tÇng thay ®æi thi chØ ¶nh h−ëng tíi c¸c tÇng liÒn kÒ „ Kh«ng ph¶i hÖ thèng nμo còng dÔ dμng ph©n chia theo m« hinh nμy Bộ môn Công nghệ phần mềm – ĐHCN 16
  17. KiÕn tróc ph©n tÇng tham kh¶o OSI NguyễnVănVỵ tầng ứng dụng tầng ứng dụng tầng trình diễn tầng trình diễn tầng phiên tầng phiên tầng giao vận tầng giao vận tầng mạng Tầng mạng tầng mạng tầng liên kết dữ liệu tầng liên kết dữ liệu tầng liên kết dữ liệu tầng vật lý tầng vật lý tầng vật lý Phương tiện giao tiếp Hình 3.15 Kiến trúc của mô hình tham chiếu OSI Bộ môn Công nghệ phần mềm – ĐHCN 17
  18. KiÕn tróc gäi & tr¶ l¹i Call and Return Architecture NguyễnVănVỵ s« m« ®un ra ®é s©u s« m« ®un vμo ®é réng Bộ môn Công nghệ phần mềm – ĐHCN 18
  19. KiÕn tróc luång d÷ liÖu Data Flow Architecture NguyễnVănVỵ LËp ho¸ Ho¸ ®¬n ®¬n ®äc ®¬n KiÓm tra hµng thanh to¸n T×m tµI LËp giÊy GiÊy nh¾c kho¶n TT nh¾c t.to¸n §¬n hµng PhiÕu thanh to¸n HÖ thèng xö lý ®¬n hμng Bộ môn Công nghệ phần mềm – ĐHCN 19
  20. KiÕn tróc h−íng ®èi t−îng Object-oriented architecture NguyễnVănVỵ Customer Receipt customer# invoice# name date address Invoice amount credit period customer# invoice# date amount customer Payment issue () invoice# sendReminder () date acceptPayment () amount sendReceipt () customer# HÖ thèng xö lý ®¬n hμng Bộ môn Công nghệ phần mềm – ĐHCN 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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