ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
Class Diagram
2
Classification Abstraction
เป็นกระบวนการหาว่ามี Object ใดบ้างใน Problem Domain Problem Domain รถ ความหมาย สัญลักษณ์ Private - Protected # Public + รถ -ประเภทรถ -สีของรถ +วิ่ง +จอด +เลี้ยว รถเก๋งสีแดงของสมศักดิ์ รถมอเตอร์ไซด์สีชมพูของสมศรี รถตู้สีขาวของสมควร
3
Aggregation Abstraction
ดูว่า Class ใดเป็นส่วนประกอบ (is part of) ของ Class อื่นหรือไม่ และการประกอบกันของ Class ต้องทำให้เกิด Class ใหม่ ซึ่งมี Concept ใหม่เสมอ ห้องเรียน กระดานดำ เก้าอี้ โต๊ะ นักเรียน ครูผู้สอน
4
Generalization Abstraction
คือกระบวนการนำ Class ที่มีลักษณะเหมือนหรือคล้ายคลึงกัน หรือมีคุณสมบัติอย่างใดอย่างหนึ่งร่วมกัน (General) มาจัด หมวดหมู่ไว้เป็น Class เดียวกัน กระบวนการย้อนกลับของ Generalization Abstraction เรียกว่า Specialization ซึ่ง Specialization คือการตอบคำถามว่า Class หนึ่งๆ นั้นสามารถจำแนกเป็น Class อะไรได้บ้าง คน ผู้ชาย ผู้หญิง
5
Association Abstraction
คือกระบวนการในการสร้างความสัมพันธ์ระหว่าง Class ต่างๆ ใน Problem Domain ที่เราสนใจ 1..1 0..n 0..n 1..1 ผู้ชาย ทำ การแต่งงาน ทำ ผู้หญิง 0..1 0..1 ผู้ชาย เป็นสามี ภรรยา ผู้หญิง
6
Class Diagram คืออะไร แผนภาพที่ใช้แสดง Class และความสัมพันธ์ในแง่ต่างๆ (Relationship) ระหว่าง Class ความสัมพันธ์ใน Class Diagram จะป็นความสัมพันธ์แบบ Static Relationship Static Relationship หมายถึงความสัมพันธ์ที่มีอยู่แล้วเป็นปกติ ระหว่าง Class ต่างๆ Dynamic Relationship หมายถึงความสัมพันธ์ที่เกิดขึ้นเนื่องจาก กิจกรรมต่างๆระหว่าง Class
7
ตัวอย่าง Static Relationship Dynamic Relationship
เจ้าของบัญชีเป็นเจ้าของบัญชี เงินฝาก Dynamic Relationship เจ้าของบัญชีฝากเงินเข้าบัญชี เงินฝาก เจ้าของบัญชีถอนเงินจาก บัญชีเงินฝาก เจ้าของบัญชีปรับปรุงยอด บัญชีเงินฝาก
8
หลักการในการสร้าง Class Diagram (Class Diagram Modeling Techniques)
กำหนดกรอบของ Problem Domain ให้ชัดเจน พิจารณาหา Object ที่สามารถจับต้องได้ เห็นได้ สัมผัสได้ พิจารณาหา Object ที่ไม่สามารถจับต้องได้ ใช้ Classification Abstraction เพื่อแยกแยะและสร้าง Class จาก Object ที่มีอยู่ หา Aggregation Abstraction โดยพิจารณา Class ที่ได้จาก Classification Abstraction ว่ามี Class ใดหรือไม่ที่มี ความสัมพันธ์แบบเป็นส่วนหนึ่งหรือประกอบด้วย (Is Part of) กับ Class อื่นๆ
9
หลักการในการสร้าง Class Diagram (Class Diagram Modeling Techniques) (ต่อ)
ใช้ Generalization มาพิจารณา Class ต่างๆ ใน Class Diagram ใช้ Association มาพิจารณา Class ต่างๆ ใน Class Diagram พิจารณา Class Diagram ที่สร้างมาทั้งหมดว่า ทุก Class และทุก กลุ่มของ Class มีความสัมพันธ์ (Relationship) แบบใดแบบ หนึ่งกับ Class หรือกลุ่มของ Class อื่นหรือไม่
10
1. กำหนดกรอบของ Problem Domain ให้ชัดเจน
เขียน Use Case Diagram ของ Problem Domain ที่กำหนดไว้ พิจารณาว่าแต่ละ Use Case มี Object อะไรบ้าง
11
2. พิจารณาหา Object ที่สามารถจับต้องได้ เห็นได้ สัมผัสได้ (ถ้ามี)
หาตัวแทนของ Tangible Object ในกรณีที่ Tangible Object หลายๆ ตัวใน Problem Domain เดียวกันให้ครบทุกตัว
12
3. พิจารณาหา Object ที่ไม่สามารถจับต้องได้ (ถ้ามี)
หาตัวแทนของ Intangible Object ในกรณีที่มี Intangible Object หลายๆ ตัวใน Problem Domain เดียวกันที่มีอยู่หรือต่าจะมีอยู่ใน Problem ให้ครบทุกตัว
13
4.ใช้ Classification Abstraction
ใช้ Classification Abstraction เพื่อแยกแยะและสร้าง Class จาก Objects ที่มีอยู่ หา Attribute และ Function ที่มีอยู่ใน Class นั้นๆ เท่าที่จะหามาได้ วาด Class ที่ได้ทั้งหมดลงใน Class Diagram
14
5. หา Aggregation Abstraction
โดยพิจารณา Class ที่ได้จาก Classification Abstraction ว่ามี Class ใด หรือไม่ที่มีความสัมพันธ์แบบเป็นส่วนหนึ่งหรือประกอบด้วย (Is Part of) กับ Class อื่นๆ ถ้ามี หาว่า Aggregation ที่เกิดขึ้นนั้นเป็นแบบ One to One หรือ Many to One และใส่ Cardinality ให้ถูกต้อง
15
6. ใช้ Generalization ใช้ Generalization มาพิจารณา Class ต่างๆ ใน Class Diagram หาก เกิดมีความสัมพันธ์แบบ Generalization หรือ Specialization เกิดขึ้น ให้เพิ่มเติมลงใน Class Diagram ในขั้นตอนนี้อาจมีการสร้าง Class ใหม่เพื่อเป็น Generalization Class ก็ได้
16
7. ใช้ Association ใช้ Association มาพิจารณา Class ต่างๆ ใน Class Diagram เพิ่มเติมสัญลักษณ์ของ Association ลงใน Class Diagram พิจารณาประเภทของความสัมพันธ์และ Cardinality ให้ถูกต้อง
17
8. พิจารณา Class Diagram ที่สร้างมาทั้งหมด
พิจารณา Class Diagram ที่สร้างมาทั้งหมดว่า ทุก Class และทุก กลุ่มของ Class มีความสัมพันธ์ (Relationship) แบบใดแบบหนึ่ง กับ Class หรือกลุ่มของ Class อื่นหรือไม่ หากมี Class ใด Class หนึ่ง ยังไม่มี Relationship กับ Class อื่นๆเลย อาจเกิดจาก Class นั้นเป็น Class ที่เกินความจำเป็น หรือ ยังขาด Class อื่นๆ ที่จำเป็นต้องมีและมีมี Relationship กับ Class ดังกล่าว สิ่งที่ต้องทำหากเกิดกรณีนี้ขึ้นคือ เริ่มต้นใหม่ตั้งแต่ขั้นตอนที่ 1 Note ขั้นตอนที่ 1 ถึง 7 สามารถทำสลับขั้นตอนกันได้
18
ตัวอย่าง [สร้าง Class Diagram จาก Problem Domain ต่อไปนี้]
ในคณะวิทยาศาสตร์ของมหาวิทยาลัยแห่งหนึ่งประกอบด้วย บุคลากรหลายประเภท ได้แก่ อาจารย์ นักศึกษา และเจ้าหน้าที่ โดยที่ อาจารย์แต่ละท่านมีหน้าที่ในการสอนวิชาใดวิชาหนึ่ง หรือมากกว่า 1 วิชาก็ได้ และนักศึกษามีหน้าที่ในการศึกษาวิชา ใดวิชาหนึ่ง หรือมากว่า 1 วิชาก็ได้ ในเวลาเดียวกันเจ้าหน้าที่ ของภาควิชา คือเจ้าหน้าที่ประจำห้องทดลองต่างๆ โดยกำหนด ว่าใน 1 ห้องทดลองจะต้องมีเจ้าหน้าที่ 1 คนเสมอ
19
จาก Problem Domain นำมาเขียน Use Case Diagram
การเรียนการสอน <<uses>> การใช้ห้องทดลอง นักเรียน การเรียนการสอน ในคณะวิทยาศาสตร์ การดูแลห้องทดลอง อาจารย์ เจ้าหน้าที่
20
หา Object หรือ Class ที่มีในแต่ละ Use Case
การเรียนการสอน นักเรียน อาจารย์ ห้องเรียน วิชาเรียน ชั่วโมงเรียน การใช้ห้องทดลอง ห้องทดลอง การดูแลห้องทดลอง เจ้าหน้าที่ จากทุกๆ User Case จะมี Class ทั้งหมดในระบบคือ อาจารย์ นักเรียน เจ้าหน้าที่ ห้องเรียน วิชาเรียน ชั่วโมงเรียน และห้องทดลอง
21
สร้าง Class Diagram ห้องเรียน ห้องทดลอง 1..1 0..1 1..1 ดูแล 1..1 ใช้
เจ้าหน้าที่ นักเรียน ใช้ อาจารย์ 1..n 1..n เรียน สอน 0..n 0..n 0..n 1..n 1..1 ชั่วโมงเรียน วิชาเรียน 0..n
22
สร้าง Class Diagram พิจารณา Generalization
ห้องเรียน ห้องทดลอง 1..1 1..1 0..1 บุคลากร ดูแล 1..1 ใช้ เจ้าหน้าที่ นักเรียน ใช้ อาจารย์ 1..n 1..n เรียน สอน 0..n 0..n 0..n 1..n 1..1 ชั่วโมงเรียน วิชาเรียน 0..n
23
สร้าง Class Diagram พิจารณา Generalization
ห้อง ห้องเรียน ห้องทดลอง บุคลากร 1..1 1..1 0..1 ดูแล 1..1 ใช้ นักเรียน ใช้ เจ้าหน้าที่ อาจารย์ 1..n 1..n เรียน สอน 0..n 0..n 0..n 1..n 1..1 ชั่วโมงเรียน วิชาเรียน 0..n
24
สร้าง Class Diagram พิจารณา Aggregation Abstraction
คณะวิทยาศาสตร์ ห้อง ห้องเรียน ห้องทดลอง บุคลากร 1..1 1..1 0..1 ดูแล 1..1 ใช้ เจ้าหน้าที่ นักเรียน ใช้ อาจารย์ 1..n 1..n เรียน สอน 0..n 0..n 0..n 1..n 1..1 ชั่วโมงเรียน วิชาเรียน 0..n
25
ส ส
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.