หนวยที่ 4              การสรางแบบจําลองคลาส                 (Class Modelling)OOAD 1/2551           ดร.สุขสถิต มีสถิตย   1
วัตถุประสงคเพื่อใหผูเรียนสามารถ    อธิบายการสรางคลาสโมเดลได    อธิบายการใชผลลัพธของยูสเคสโมเดลได    อธิบายการวิเคร...
หลักการพัฒนาระบบเชิงวัตถุ    แบงสวนจัดการ (divide-and-conquer)          แบงปญหาที่ซับซอนเปนอ็อบเจกต    เอ็นแค็ปซุเล...
แบบจําลองคลาส (Class Model)    แบบจําลองคลาส(class model) หรือ แบบจําลอง    เชิงโครงสราง (structural model) แสดงโครงสราง...
องคประกอบของแบบจําลองคลาส    คลาส (classes) = ตนแบบสําหรับสรางออบเจ็ค          คอนกรีตคลาส (Concrete classes)          ...
องคประกอบของแบบจําลองคลาส    ความสัมพันธ (Relationships)          Generalization              การสืบทอดแอททริบิว และโอเป...
ประเภทของคลาส    Boundary classes/Interface classes          จําลองการปฏิสัมพันธระหวางระบบและแอคเตอร    Entity classes ...
สัญลักษณของคลาสแตละประเภทOOAD 1/2551   ดร.สุขสถิต มีสถิตย   8
คลาส ในยูเอ็มแอลOOAD 1/2551   ดร.สุขสถิต มีสถิตย   9
ออบเจ็ค ในยูเอ็มแอลOOAD 1/2551   ดร.สุขสถิต มีสถิตย   10
UML GeneralizationOOAD 1/2551   ดร.สุขสถิต มีสถิตย   11
AssociationOOAD 1/2551   ดร.สุขสถิต มีสถิตย   12
ตัวอยางOOAD 1/2551   ดร.สุขสถิต มีสถิตย   13
การสรางแบบจําลองคลาส (ClassModel)      วัตถุประสงค : สรางลอจิกคัลโมเดลของระบบ      อินพุต : ยูสเคสโมเดล      เอาตพุต :...
การสรางแบบจําลองคลาส (ClassModel)      ขั้นตอน :              คนหาคลาส              กําหนดความรับผิดชอบของแตละคลาส     ...
วิธีการหาคลาส(Approaches for Identifying classes)    การวิเคราะหนามวลี (Noun phrase approach)    การใชยสเคสเปนหลัก (The...
การวิเคราะหนามวลี(Noun phrase approach)1.   หาคลาสที่ควรพิจารณา2.   ตัดคลาสที่ไมเกี่ยวของ3.   พิจารณาคลาสที่ซ้ําซอน แล...
การหาคลาสที่ควรพิจารณา(Identifying candidate classes)     เทคนิคการวิเคราะหคํานาม              คํานามและนามวลีบงบอก: คลา...
การใชยูสเคสเปนหลัก (The use-case drivenapproach)1. สรางแผนซีเคว็น   หรือ คอมมิวนิเคชัน (คอแลบบอ   เรชัน) ของแตละยูสเคส...
การใชบัตร CRC (The Classes, Responsibilities, andCollaborators (CRC) approach)1.   พิจารณาหาคลาสและความรับผิดชอบของคลาส  ...
บัตร CRC    CRC = Classes, Responsibilities and    Collaborators    บัตร CRC ลักษณะเหมือนหัวเรื่อง    บัตร CRC 1 ใบตอ 1 ค...
รูปแบบของบัตร CRC (CRC Card)     Class Name:     Responsibilities            Collaborations/CollaboratorsOOAD 1/2551      ...
Upcoming SlideShare
Loading in …5
×

Unit04

729 views
653 views

Published on

Published in: Spiritual, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
729
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Unit04

  1. 1. หนวยที่ 4 การสรางแบบจําลองคลาส (Class Modelling)OOAD 1/2551 ดร.สุขสถิต มีสถิตย 1
  2. 2. วัตถุประสงคเพื่อใหผูเรียนสามารถ อธิบายการสรางคลาสโมเดลได อธิบายการใชผลลัพธของยูสเคสโมเดลได อธิบายการวิเคราะหโครงสรางของระบบได อธิบายการสรางอินพุตสําหรับขั้นการออกแบบไดOOAD 1/2551 ดร.สุขสถิต มีสถิตย 2
  3. 3. หลักการพัฒนาระบบเชิงวัตถุ แบงสวนจัดการ (divide-and-conquer) แบงปญหาที่ซับซอนเปนอ็อบเจกต เอ็นแค็ปซุเลชัน (encapsulation) ่ แตละอ็อบเจกตถูกกําหนดบทบาททีชดเจน ่ ั การติดตอผานอินเตอรเฟส (interface) แตละอ็อบเจกตเปดเผยอินเตอรเฟสที่กําหนดวิธีการใชงาน จํากัดมุมมอง (abstraction) ความสามารถในการใสใจตอความสามารถที่สาคัญของอ็อบ ํ เจกตขณะที่ละเลยเรื่องอื่นOOAD 1/2551 ดร.สุขสถิต มีสถิตย 3
  4. 4. แบบจําลองคลาส (Class Model) แบบจําลองคลาส(class model) หรือ แบบจําลอง เชิงโครงสราง (structural model) แสดงโครงสราง ของระบบในรูปของคลาสและความสัมพันธระหวาง คลาสในขอบเขตปญหา สรางความเขาใจที่ตรงกันเกี่ยวกับกรอบความคิดของ สิ่งตางๆ ในขอบเขตปญหาOOAD 1/2551 ดร.สุขสถิต มีสถิตย 4
  5. 5. องคประกอบของแบบจําลองคลาส คลาส (classes) = ตนแบบสําหรับสรางออบเจ็ค คอนกรีตคลาส (Concrete classes) แอ็บสแตร็กคลาส (Abstract classes) แอททริบว (attributes) = หนวยขอมูลทีเกี่ยวของกับ ิ ่ ลักษณะของคลาส ควรมีเฉพาะแอททริบิวที่สําคัญตอที่การทํางาน โอเปอรเรชัน (operations) = การกระทําทีออบเจ็ค ่ ของคลาสสามารถทําได สนใจเฉพาะโอเปอรชนที่เกี่ยวของกับปญหา ัOOAD 1/2551 ดร.สุขสถิต มีสถิตย 5
  6. 6. องคประกอบของแบบจําลองคลาส ความสัมพันธ (Relationships) Generalization การสืบทอดแอททริบิว และโอเปอรชน ั A-kind-of Relationship Aggregation เกี่ยวของแบบเปนสวนหนึ่ง (a-part-of relationship) Association ความสัมพันธระหวางคลาสแบบอืนๆ ่OOAD 1/2551 ดร.สุขสถิต มีสถิตย 6
  7. 7. ประเภทของคลาส Boundary classes/Interface classes จําลองการปฏิสัมพันธระหวางระบบและแอคเตอร Entity classes จําลองสารสนเทศและพฤติกรรมที่เกี่ยวของในเหตุการณหรือ แนวคิด Control classes แสดงการประสานงาน ลําดับ และการควบคุมออบเจ็คอื่นๆOOAD 1/2551 ดร.สุขสถิต มีสถิตย 7
  8. 8. สัญลักษณของคลาสแตละประเภทOOAD 1/2551 ดร.สุขสถิต มีสถิตย 8
  9. 9. คลาส ในยูเอ็มแอลOOAD 1/2551 ดร.สุขสถิต มีสถิตย 9
  10. 10. ออบเจ็ค ในยูเอ็มแอลOOAD 1/2551 ดร.สุขสถิต มีสถิตย 10
  11. 11. UML GeneralizationOOAD 1/2551 ดร.สุขสถิต มีสถิตย 11
  12. 12. AssociationOOAD 1/2551 ดร.สุขสถิต มีสถิตย 12
  13. 13. ตัวอยางOOAD 1/2551 ดร.สุขสถิต มีสถิตย 13
  14. 14. การสรางแบบจําลองคลาส (ClassModel) วัตถุประสงค : สรางลอจิกคัลโมเดลของระบบ อินพุต : ยูสเคสโมเดล เอาตพุต : คลาสโมเดล (สตรัคเจอรัลโมเดล) คลาสไดอะแกรม คําอธิบายคลาสOOAD 1/2551 ดร.สุขสถิต มีสถิตย 14
  15. 15. การสรางแบบจําลองคลาส (ClassModel) ขั้นตอน : คนหาคลาส กําหนดความรับผิดชอบของแตละคลาส กําหนดรายละเอียดของคลาส สรางคลาสไดอะแกรม ตรวจสอบและปรับปรุงคลาสไดอะแกรม จัดคลาสแบงเปนแพ็คเกจ (packages)OOAD 1/2551 ดร.สุขสถิต มีสถิตย 15
  16. 16. วิธีการหาคลาส(Approaches for Identifying classes) การวิเคราะหนามวลี (Noun phrase approach) การใชยสเคสเปนหลัก (The use-case driven ู approach) การใชบัตร CRC (The Classes, Responsibilities, and Collaborators (CRC) approach)OOAD 1/2551 ดร.สุขสถิต มีสถิตย 16
  17. 17. การวิเคราะหนามวลี(Noun phrase approach)1. หาคลาสที่ควรพิจารณา2. ตัดคลาสที่ไมเกี่ยวของ3. พิจารณาคลาสที่ซ้ําซอน และสรางคําศัพทรวม4. พิจารณาคลาสมีคําขยาย5. พิจารณาคลาสที่ควรเปนแอททริบว ิ6. พิจารณาความจําเปนของคลาสOOAD 1/2551 ดร.สุขสถิต มีสถิตย 17
  18. 18. การหาคลาสที่ควรพิจารณา(Identifying candidate classes) เทคนิคการวิเคราะหคํานาม คํานามและนามวลีบงบอก: คลาส อ็อบเจกต หรือแอททริบิว คํากริยาบงบอก: พฤติกรรม หรือโอเปอรเรชันที่เกี่ยวของ บางคลาสอาจไมปรากฏชัดแตไดมาจากความรูทั่วไป พิจารณาเฉพาะคลาสทีเหมาะสมในขอบเขตปญหา ่ หลีกเลี่ยงคลาสที่ใชในขั้นตอนการสราง ใสใจในการตั้งชือคลาส ่OOAD 1/2551 ดร.สุขสถิต มีสถิตย 18
  19. 19. การใชยูสเคสเปนหลัก (The use-case drivenapproach)1. สรางแผนซีเคว็น หรือ คอมมิวนิเคชัน (คอแลบบอ เรชัน) ของแตละยูสเคส (Sequence/collaboration (i.e. collaboration) diagram)2. หาคลาสจากแผนภาพ3. หาโอเปอรเรชันจากแผนภาพ4. หาการทํางานรวมกันระหวางคลาสจากแผนภาพOOAD 1/2551 ดร.สุขสถิต มีสถิตย 19
  20. 20. การใชบัตร CRC (The Classes, Responsibilities, andCollaborators (CRC) approach)1. พิจารณาหาคลาสและความรับผิดชอบของคลาส (classes’ responsibilities) ความรับผิดชอบ (Responsibilities): การรู (Knowing), การทํา (Doing)2. มอบหมายความรับผิดชอบ3. หาการทํางานรวมกันระหวางคลาส (Collaboration) การทํางานรวมกัน (Collaboration): ออบเจ็คทํางานรวมกัน เพื่อตอบสนองตอการรองขอOOAD 1/2551 ดร.สุขสถิต มีสถิตย 20
  21. 21. บัตร CRC CRC = Classes, Responsibilities and Collaborators บัตร CRC ลักษณะเหมือนหัวเรื่อง บัตร CRC 1 ใบตอ 1 คลาส บัตรแตละใบระบุ ชื่อคลาส (Class) ความรับผิดชอบของคลาส (Responsibilities) คลาสที่ทํางานรวม (Collaborators) คลาสที่ตองการเพื่อทํางานตามความรับผิดชอบใหสําเร็จ ความรับผิดชอบหนึงดานอาจรองรับดวยเมธอดเดียว ่ หรือหลายเมธอดOOAD 1/2551 ดร.สุขสถิต มีสถิตย 21
  22. 22. รูปแบบของบัตร CRC (CRC Card) Class Name: Responsibilities Collaborations/CollaboratorsOOAD 1/2551 ดร.สุขสถิต มีสถิตย 22

×