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

Kỹ nghệ phần mềm 07

Chia sẻ: Nguyễn Tiến Khanh | Ngày: | Loại File: PDF | Số trang:0

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

Tham khảo bài thuyết trình 'kỹ nghệ phần mềm 07', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Kỹ nghệ phần mềm 07

  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 7: Thiết kế hướng đối tượng NguyễnVănVỵ Nội dung VÊn ®Ò tån t¹i trong h−íng kiÕn tróc Kh¸i niÖm liªn quan ®Õn ®èi t−îng Ng«n ng÷ UML Ph©n tÝch h−íng ®èi t−îng ThiÕt kÕ h−íng ®èi t−îng Sö dông mÉu thiÕt kÕ 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. KiÕn tróc phÇn mÒm truyÒn thèng NguyễnVănVỵ Bộ môn Công nghệ phần mềm – ĐHCN 4
  5. VÊn ®Ò cña thiÕt kÕ h−íng thñ tôc NguyễnVănVỵ D÷ liÖu lμ chung cho c¶ hÖ thèng Mäi thñ tôc thao t¸c trªn CSDL chung, ®Æc tr−ng cho tr¹ng th¸i toμn hÖ thèng Thao t¸c sai cña 1 thñ tôc lªn d÷ liÖu g©y sai lan truyÒn sang phÇn kh¸c sö dông dông d÷ liÖu nμy Söa ®æi 1 thñ tôc cã nguy c¬ ¶nh h−ëng tíi phÇn kh¸c liªn quan Thay ®æi cÊu tróc d÷ liÖu dÉn ®Õn thay ®æi tæng thÓ hÖ thèng d÷ liÖu cÇn tæ chøc tèt HÖ thèng lín, phøc t¹p: b¶o tr× khã kh¨n Bộ môn Công nghệ phần mềm – ĐHCN 5
  6. ThiÕt kÕ h−íng ®èi t−îng- OOD NguyễnVănVỵ HiÖn ®ang trë nªn phæ biÕn Lμ mét c¸ch tiÕp cËn kh¸c, nh×n nhËn hÖ thèng theo c¸c quan ®iÓm: tËp c¸c ®èi t−îng cã t−¬ng t¸c víi nhau mçi ®èi t−îng bao gãi c¶ d÷ liÖu vμ c¸c xö lý trªn chóng T−¬ng t¸c gi÷a c¸c ®èi t−êng b»ng truyÒn th«ng b¸o C¸c ®èi t−îng cã thÓ kÕ thõa nhau Bộ môn Công nghệ phần mềm – ĐHCN 6
  7. VÝ dô kiÕn tróc h−íng ®èi t−îng NguyễnVănVỵ Customer Receipt customer# invoice# name date address amount Invoice credit period customer# invoice# date amount customer Payment issue () sendReminder () invoice# acceptPayment () date sendReceipt () amount customer# Bộ môn Công nghệ phần mềm – ĐHCN 7
  8. ¦u ®iÓm cña OOD NguyễnVănVỵ DÔ b¶o tr×: c¸c ®èi t−îng ®−îc hiÓu nh− c¸c thùc thÓ ho¹t ®éng ®éc lËp Bao gãi th«ng tin liªn kÕt láng lÎo (trao ®æi b»ng truyÒn th«ng b¸o) DÔ t¸i sö dông: ®é ®éc lËp cao cã kh¶ n¨ng kÕ thõa DÔ hiÓu: mét vμi hÖ thèng, cã sù ¸nh x¹ t−êng minh gi÷a thùc thÓ thùc thÕ giíi thùc vμ ®èi t−îng hÖ thèng Bộ môn Công nghệ phần mềm – ĐHCN 8
  9. Néi dung cña OOD NguyễnVănVỵ X¸c ®Þnh c¸c tËp ®èi t−îng (gäi lμ líp) vμ c¸c ®Æc tr−ng cña chóng Ph©n ®Þnh vai trß vμ tr¸ch nhiÖm cña chóng trong hÖ thèng ThiÕt lËp ®−îc sù t−¬ng t¸c cña chóng ®Ó thùc hiÖn chøc n¨ng cña hÖ thèng phÇn mÒm ®Æt ra Bộ môn Công nghệ phần mềm – ĐHCN 9
  10. C¸c kh¸i niÖm cña OOD NguyễnVănVỵ d1. §èi t−¬ng Lμ c¸c trõu t−îng hãa thùc thÓ cña thÕ giíi thùc hoÆc cña mét hÖ thèng Bao gåm: ®Þnh danh, c¸c thuéc tÝnh vμ c¸c ph−¬ng thøc thao t¸c trªn c¸c d÷ liÖu thuéc tÝnh cña nã §éc lËp vμ ®ãng gãi tr¹ng th¸i thÓ hiÖn b»ng gi¸ trÞ c¸c thuéc tÝnh cña nã ë mét thêi ®iÓm Cung cÊo dÞch vô cho ®èi t−îng kh¸c hay yªu cÇu c¸c ®èi t−îng kh¸c thùc hiÖn mét dÞch vô Bộ môn Công nghệ phần mềm – ĐHCN 10
  11. Líp ®èi t−îng NguyễnVănVỵ Líp ®èi t−îng lμ khu«n mÉu ®Ó t¹o ra tËp ®èi t−îng cã c¸c ®Æc tr−ng chung Líp ®èi t−îng cã thÓ kÕ thõa thuéc tÝnh vμ dÞch vô tõ líp ®èi t−îng kh¸c Líp ®−îc x¸c ®Þnh b»ng: Sinh vien maSV Tªn hotenSV Bé c¸c thuéc tÝnh diachi lop C¸c ph−¬ng thóc Tao( ) Capnhat( ) Xoa( ) Bộ môn Công nghệ phần mềm – ĐHCN 11
  12. Trõu t−îng hãa NguyễnVănVỵ Trõu t−îng hãa cung cÊp c¸i nh×n ®¬n gi¶n ®èi víi thùc thÓ cÇn xö lý chØ m« t¶ c¸c tÝnh chÊt chóng ta quan t©m che giÊu c¸c th«ng tin kh«ng cÇn thiÕt §−îc cμi ®Æt nh− lμ: kiÓu d÷ liÖu trõu t−îng, líp ®èi t−îng c¸c kiÓu d÷ liÖu c¬ së cã s½n: int, double Bộ môn Công nghệ phần mềm – ĐHCN 12
  13. Bao gãi vμ che giÊu th«ng tin NguyễnVănVỵ Lμ kh¸i niÖm c¬ së cña thiÕt kÕ/lËp tr×nh h−íng ®èi t−îng Che giÊu th«ng tin ®Ó ®èi t−îng kh«ng cÇn thiÕt kh«ng thÓ sö dông ChØ cung cÊp chøc n¨ng, dÞch vô cÇn Che giÊu c¸c yÕu tè cã kh¶ n¨ng thay ®æi cÊu tróc d÷ liÖu c¸ch thøc cμi ®Æt Bộ môn Công nghệ phần mềm – ĐHCN 13
  14. CÊu tróc d÷ liÖu NguyễnVănVỵ M« t¶ mèi quan hÖ gi÷a c¸c kho¶n môc d÷ liÖu CÊu tróc vËt lý chØ ra c¸ch thøc ch−¬ng tr×nh thao t¸c víi d÷ liÖu C¸c cÊu tróc c¬ së kho¶n môc v« h−íng m¶ng (mét chiÒu, nhiÒu chiÒu) danh s¸ch mãc nèi c©y ph©n cÊp Bộ môn Công nghệ phần mềm – ĐHCN 14
  15. VÝ dô NguyễnVănVỵ struct Date { int year, mon, day; }; struct Date { int year; int mon_and_day; } Bộ môn Công nghệ phần mềm – ĐHCN 15
  16. Tæng qu¸t hãa vμ kÕ thõa NguyễnVănVỵ Mét líp cã thÓ lμ líp con cña 1 líp c¸c ®èi t−îng tæng qu¸ h¬n, vμ gäi lμ kÕ thõa cña líp tæng qu¸t trªn c©y kÕ thõa, líp cha (super class) cã thÓ lμ tæng qu¸t hãa cña 1 sè c¸c líp con (sub-class) Líp con kÕ thõa c¸c thuéc tÝnh vμ ph−¬ng thøc cña líp cha vμ cã thÓ thªm/thay ®æi ph−¬ng thøc, thuéc tÝnh Sö dông kÕ thõa gióp ta m« t¶ líp con chØ gåm c¸c ®Æc trung kh¸c líp cha Bộ môn Công nghệ phần mềm – ĐHCN 16
  17. VÝ dô c©y kÕ thõa NguyễnVănVỵ Employee Programmer Manager project budgetsControlled progLanguage dateAppointed Project Dept. Strategic Manager Manager Manager projects dept responsibilities Bộ môn Công nghệ phần mềm – ĐHCN 17
  18. ¦u ®iÓm cña kÕ thõa NguyễnVănVỵ Lμ c¬ chÕ trõu t−îng ®Ó ph©n lo¹i c¸c líp (thùc thÓ) T¸i sö dông c¶ ë møc thiÕt kÕ vμ møc lËp tr×nh t¸i sö dông cÊu tróc d÷ liÖu t¸i sö dông ph−¬ng thøc: giao diÖn cμi ®Æt (m·) BiÓu ®å kÕ thõa lμ nguån th«ng tin mang tÝnh tæ chøc vÒ bμi to¸n Bộ môn Công nghệ phần mềm – ĐHCN 18
  19. T−¬ng t¸c gi÷a c¸c ®èi t−îng NguyễnVănVỵ o4: C4 o1: C1 o3:C3 state o1 state o3 state o4 ops1() ops3 () ops4 () o5:C5 o2: C3 o6: C1 state o5 state o2 state o6 ops5 () ops1 () ops3 () Bộ môn Công nghệ phần mềm – ĐHCN 19
  20. T−¬ng t¸c gi÷a c¸c ®èi t−îng NguyễnVănVỵ C¸c ®èi t−îng giao tiÕp b»ng trao ®æi th«ng b¸o Th«ng b¸o Tªn dÞch vô ®−îc yªu cÇu Th«ng tin dïng ®Ó thùc hiÖn dÞch vô C¸c lo¹i ®èi t−îng actor: chØ göi th«ng b¸o agent: göi vμ nhËn th«ng b¸o server: chØ nhËn th«ng b¸o Thùc tÕ, th«ng b¸o ®−îc cμi ®Æt b»ng lêi gäi hμm Tªn = tªn hμm Th«ng tin = danh s¸ch tham sè 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