290353 object oriented analysis and design
This presentation is the property of its rightful owner.
Sponsored Links
1 / 54

290353 Object-Oriented Analysis and Design PowerPoint PPT Presentation


  • 85 Views
  • Uploaded on
  • Presentation posted in: General

290353 Object-Oriented Analysis and Design. อ.ธารารัตน์ พวงสุวรรณ คณะวิทยาศาสตร์และศิลปศาสตร์ มหาวิทยาลัยบูรพา วิทยาเขตสารสนเทศจันทบุรี. บทที่ 3 แนวคิดในการสร้าง และจัดหมวดหมู่ Class. เนื้อหา. การกำหนด Problem Domain Classification Abstraction Aggregation Abstraction

Download Presentation

290353 Object-Oriented Analysis and Design

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


290353 object oriented analysis and design

290353Object-Oriented Analysis and Design

อ.ธารารัตน์ พวงสุวรรณ

คณะวิทยาศาสตร์และศิลปศาสตร์

มหาวิทยาลัยบูรพา วิทยาเขตสารสนเทศจันทบุรี

บทที่ 3แนวคิดในการสร้างและจัดหมวดหมู่ Class


290353 object oriented analysis and design

เนื้อหา

  • การกำหนด Problem Domain

  • Classification Abstraction

  • Aggregation Abstraction

  • Generalization Abstraction

  • Association Abstraction


Problem domain

การกำหนด Problem Domain

  • คือการกำหนดขอบเขตของสิ่งที่ต้องการจะพิจารณา

  • เป็นสิ่งที่ต้องพิจารณาอันดับแรกเมื่อตกลงที่จะพัฒนาระบบด้วยหลักการของ OOAD

  • สามารถกำหนด Problem Domain ได้จากการสอบถามความต้องการ (Requirement) จากผู้ใช้ระบบ (End-User) งานนั้น ๆ


Problem domain1

ข้อควรจำในการกำหนด Problem Domain

  • Problem Domain ที่แน่ชัดมักจะยังไม่สามารถหาได้ในขั้นต้นของการเริ่มวิเคราะห์ระบบ แต่การกำหนดโครงใหญ่ หรือภาพรวมของ Problem Domain นั้นต้องชัดเจน

  • เช่น ถ้าจะพัฒนาระบบงานให้กับฝ่ายบัญชี นั่นแสดงว่า Object ต่าง ๆ ต้องเป็นเรื่องที่เกี่ยวข้องกับฝ่ายบัญชี (ซึ่งขณะเดียวกันอาจเกี่ยวกับฝ่ายบุคคลก็ได้แต่ต้องไม่มี Object ใด ๆ ที่ไม่เกี่ยวกับฝ่ายบัญชี) และในอนาคตอาจต้องรวมเอางบการเงินเป็นส่วนหนึ่งของ Problem Domain ก็ได้


Objects problem domain

การค้นหา Objects ใน Problem Domain

สิ่งแรกที่ต้องทำเมื่อเรามี Problem Domain ในภาพรวมแล้ว คือ การพิจารณาว่า มี Object อะไรบ้างภายใน Domain นั้น ๆ โดยยังไม่ต้องคำนึงถึงกิจกรรมที่เกิดขึ้นในระบบ

“คำนาม” ถือเป็นตัวบ่งชี้ที่ดีในการหา Object ใน Problem Domain แต่อย่างไรก็ตามคำนามบางคำอาจจะกลายเป็น Attribute ของ Objects ก็ได้เช่นเดียวกัน

หาคำนามทั้งหมดที่มีใน Problem Domain แล้วจึงมาแยกแยะภายหลังว่าสิ่งใดคือ Objects สิ่งใดคือ Attribute ของ Object

5


Object problem domain

การจำแนก Object ใน Problem Domain

  • Object มี 2 ประเภท

    • Touchable or Tangible Object

    • Intangible Object

      • บทบาท (Roles) เช่น ครู ตำรวจ

      • เหตุการณ์ ( Incidents , Event )

      • ปฏิสัมพันธ์ (Interactions) เช่น ทางแยก สัญญาเงินกู้


Object problem domain1

ตัวอย่างการหา Object ใน Problem Domain

ตัวอย่างที่ 1

ข้อความ :

“หนังสือเล่มหนึ่ง ปกสีแดง ภายในประกอบด้วยเนื้อหาเกี่ยวกับ Object Orientation หนังสือเล่มนี้มีจำนวน 50 หน้า”

7


Object problem domain2

ตัวอย่างการหา Object ใน Problem Domain

ตัวอย่างที่ 2

ข้อความ :

“การประมวลผลข้อมูลด้านการเงินของธนาคารพาณิชย์ด้วยเครื่องคอมพิวเตอร์ มีด้วยการ 2 ประเภท ได้แก่ การประมวลผลแบบ Batch (การสะสมข้อมูลไว้ก่อนช่วงระยะเวลาหนึ่ง แล้วจึงประมวลผลในคราวเดียว) การประมวลผลแบบ Real Time(การประมวลผลทันทีที่มีข้อมูลเข้าสู่ระบบ) และในการประมวลผลในแต่ละครั้งจะมีเวลาที่ใช้ในการประมวลผล (Elapse Time) ที่ไม่แน่นอนขึ้นอยู่กับขนาดของข้อมูลที่เข้ามาสู่ระบบโดยการประมวลผลแบบ Batch ในแต่ละวันจะมีเวลาเริ่มประมวลผล (Starting Time) ที่แน่นอน ในขณะที่การประมวลผลแบบ Real Time ต้องพร้อมสำหรับการประมวลผลเสมอ เพราะเวลาของการเข้ามาของข้อมูลไม่แน่นอน”

8


Object problem domain3

ตัวอย่างการหา Object ใน Problem Domain

9


Abstractions

Abstractions

  • กระบวนการในการให้ Concept กับ Object ต่าง ๆ ใน Real World เพื่อสร้าง Class นั้นเราเรียกว่า Abstractions ซึ่งแบ่งออกได้เป็น 4 กระบวนการย่อย คือ

    • Classification Abstraction

    • Aggregation Abstraction

    • Generalization Abstraction

    • Association Abstraction


Classification abstraction

Classification Abstraction

  • เป็นกระบวนการที่ใช้แยกประเภท (Classify) Object ต่าง ๆ ที่อยู่ใน Domain และให้ Concept กับ Object ต่าง ๆ เหล่านั้น เพื่อให้ได้ “Class พื้นฐาน” (Fundamental Classes) ที่ต้องการ

    • เป็นการตอบคำถามว่า Object ตัวใดตัวหนึ่งนั้นเป็นสมาชิกของกลุ่ม Object (Class) ใด - “Is Member of”

  • การทำ Classification Abstraction หรือการสร้าง Classจาก Object แสดงด้วยสัญลักษณ์ ลูกศรประที่ลากจาก Object ไปยัง Class

11


Classification abstraction1

Classification Abstraction

  • เราถือว่า Classification เป็น abstraction ที่สำคัญที่สุด เพราะ Class เกิดขึ้นด้วย Classification Abstraction

  • ถ้าหาก Class พื้นฐานที่เกิดขึ้นในขั้นตอนนี้เกิดข้อผิดพลาด การสร้าง Class ใหม่ ๆ ด้วยกระบวนการ Aggregation และ Generalization และการสร้างความสัมพันธ์ ระหว่าง Class ต่าง ๆ ด้วย Association ย่อมเกิดความผิดพลาดด้วยเช่นกัน


290353 object oriented analysis and design

Classification Abstraction

รถจักรยานยนต์ซูซูกิ

  • Concept เกี่ยวกับรถ

  • มีเครื่องยนต์

  • มีล้อจำนวนหนึ่ง

  • วิ่งไปบนถนนได้

  • ใช้แก๊สหรือนำมันเป็นเชื่องเพลิง

รถยนต์โตโยต้า

รถยนต์

รถโดยสาร 6 ล้อ volvo

เรืออันดามันปริ๊นเซส

รถไฟ

รถจักรยาน BMX


Classification abstraction2

Classification Abstraction

คน

Is member of

สมชาย

สมหญิง

สมจิตร

สมศักดิ์


Classification class

Classification ของ Class คน

สมชาย สมหญิง สมจิตร และสมศักดิ์ ถือเป็น Object ในโดเมนหนึ่ง ซึ่งทั้ง 4 มีลักษณะเหมือนกันคือ มีหู มีตา มีปาก สามารถดำเนินกิจกรรมต่างๆ ได้เหมือนคนทั่วไป ดังนั้นทั้ง 4 ถือเป็น Object ใน Class คน

15


Classification abstraction3

Classification Abstraction

รถ

Is member of

รถเก๋งของแดง

รถมอเตอร์ไซต์

ของดำ

รถสปอร์ต

ของสมศรี

รถตู้ของสมควร


Classification

Classification ของคนและรถยนต์

ถ้า Problem Domain ประกอบด้วย Object ทั้งสิ้น 7 ตัว คือ สมชายสมหญิง สมจิตร สมศักดิ์ รถเก๋งสีแดงของสมชาย รถมอเตอร์ไซค์สีชมพูของสมหญิงและสมจิตร และรถตู้สีขาวของสมศักดิ์

หลังจากใช้ Classification Abstraction ในการแยกแยะ Object เหล่านี้ จะพบว่าไม่สามารถใช้ Concept เพียงหนึ่งเดียวในการแยกแยะทุกๆ Object ใน Problem Domain ได้

Concept ที่ใช้แยกประเภทของ Object ใน Problem Domain นี้คือ Concept ของรถยนต์ และ คน

17


Classification abstraction4

Classification Abstraction

ในบางครั้ง Object หนึ่งสามารถ เป็นสมาชิกของ Class ได้มากกว่าหนึ่ง Class ได้เช่นกันดังตัวอย่างต่อไปนี้

แมว

แมว

หมา

หมา

สัตว์สี่ขา

สัตว์สีดำ

แมวสีดำ

หมาสีขาว

วัวสีดำ

แมวสีขาว


Classification abstraction5

Classification Abstraction

เราสามารถแก้ปัญหาความกำกวม โดยการปรับปรุง Classification

ของหมาและแมว ใหม่จะได้ผลลัพธ์ ดังต่อไปนี้

แมว

หมา

สัตว์สี่ขามีเขา

แมวสีดำ

หมาสีขาว

วัวสีดำ

แมวสีขาว


Classification1

หมา

แมว

สัตว์สีขาว

สัตว์สีดำ

แมวสีดำ

หมาสีดำ

แมวสีขาว

หมาสีขาว

Classification ของ หมา แมว สัตว์สีขาวและสัตว์สีดำ


Classification2

Classification ของ หมา แมว สัตว์สีขาว และสัตว์สีดำ

  • จากรูป ถือว่าเป็นการทำ Classification ที่ค่อนข้างกำกวม เพราะ Object หนึ่งตัวสามารถจัดอยู่ใน Class มากกว่า 1 Class

  • การแก้ไขความกำกวมจากการสร้าง Class ที่ใช้ Concept หลายๆ Concept พร้อมๆ กัน คือ

    • เลือกว่าจะใช้ Concept ใดเพียง Concept เดียวในการแยกแยะ Object โดยจัดให้ Concept ที่เหลือเป็นเพียง Attribute ของ Class เท่านั้น

21


C lassification

หมา

แมว

หมาสีดำ

หมาสีขาว

แมวสีดำ

แมวสีขาว

การปรับปรุงการทำ Classification ของหมาและแมว


Objects class

ตัวอย่างการจำแนก Objects และ Class

*** จากตัวอย่าง Problem Domain ต่อไปนี้ ให้นิสิตจำแนก Object และ Class

ตัวอย่างที่ 1

“พยาบาล ชื่อ ปราณี ฉีดยาป้องกันโรคบาดทะยักให้แก่คนไข้ชื่อ กิตติ”

ตัวอย่างที่ 2

“นายสมชายเตะฟุตบอล”

ตัวอย่างที่ 3

“ระบบนิเวศในสวนจตุจักรประกอบด้วยสัตว์นานาชนิด เช่น แมลง กบ สุนัข แมว เป็นต้น”

23


Method

การพิจารณา Method ของคลาส

การหา Method ของ Class คือ เป็น Object ที่ถูกกระทำ

สำหรับ Method จะใช้คำกริยา (Verb) เป็นตัวระบุบ่งชี้


Classification class attribute method

คน

ชื่อ

นามสกุล

เพศ

อายุ

บอกชื่อและนามสกุล

บอกเพศ

บอกอายุ

สมชาย

สมหญิง

สมจิตร

สมศักดิ์

Classification ของ Class คน(ใส่รายละเอียดของ Attribute กับ Method)


Visibility attributes method

Visibility ของ Attributes และ Method

  • เป็นการจำแนกประเภทของ Attributes และ Operation ตามความสามารถในการเห็นและการเข้าถึง

    • Public (+)

    • Private (-)

    • Protected (#)


Public attributes and methods

Public Attributes and Methods

  • คือ Attributes และ Method ที่สามารถมองเห็นได้และสามารถเรียกใช้ได้โดยตรงจากภายนอก

  • สามารถมองเห็นได้จากภายนอก เข้าไปเปลี่ยนค่า อ่านค่า หรือเรียกใช้งาน Attributes/Method ได้

  • โดยทั่วไปจะใช้กับ Method มากกว่า Attributes

  • จะใช้เครื่องหมาย (+) กำกับไว้หน้า Public Attribute และ Public Method

  • เช่น สีผม สีผิว


Private attributes and methods

Private Attributes and Methods

  • คือ Attributes และ Method ที่ไม่สามารถเห็นได้เลยจากภายนอก Class

  • การเข้าถึง Attribute เหล่านี้ได้ต้องผ่านทาง Method ที่มีไว้เท่านั้น

  • โดยทั่วไปจะใช้กับ Attributes มากกว่า Method

  • จะใช้เครื่องหมาย (-) กำกับไว้หน้า Private Attribute และ Private Method

  • เช่น อายุของคน


Protected attributes and method s

Protected Attributes and Methods

  • คือ Attributes และ Method ที่ไม่สามารถเห็นได้จากภายนอกแต่เป็นส่วนที่สามารถส่งต่อให้ Inherited Class ได้เท่านั้น

  • สงวนไว้สำหรับการทำงาน Inheritance (Specialization) โดยเฉพาะ

  • Attributes/Method ของ Superclass เมื่อ Inheritance แล้ว จะกลายไปเป็น Private หรือ Protected Attributes/Method ของ Subclass

  • จะใช้เครื่องหมาย (#) กำกับไว้หน้า Protected Attribute และ Protected Method

  • เช่น ลักษณะทางกรรมพันธุ์ที่ลูกสืบทอดมาจากพ่อแม่


Classification visibility attributes method

คน

-ชื่อ

#นามสกุล

-เพศ

-อายุ

+บอกชื่อและนามสกุล

+บอกเพศ

+บอกอายุ

สมชาย

สมหญิง

สมจิตร

สมศักดิ์

Classification ของคน (ใส่รายละเอียด Visibility ของ Attributes และ Method)


Outside view class

คน

คน

ชื่อ

นามสกุล

เพศ

อายุ

บอกชื่อและนามสกุล()

บอกเพศ()

บอกอายุ ( )

บอกชื่อและนามสกุล()

บอกเพศ()

บอกอายุ ( )

Outside View

ของ Class คน

Class คน

Outside View ของ Class คน


Aggregation abstraction

Aggregation Abstraction

  • คือ กระบวนการที่นำเอา Class พื้นฐานที่สร้างขึ้นจาก Classification Abstraction มารวมกันหรือประกอบกัน(Aggregation) เพื่อให้เกิด Class ที่ใหญ่ขึ้น หรือซับซ้อนขึ้น

  • การทำ Aggregation คือการตอบคำถามว่า ใน Class กลุ่มหนึ่งนั้น เราสามารถที่จะนำมันมารวมกันเพื่อทำให้เกิด Class ใหม่ ที่มี Concept ใหม่ ได้หรือไม่อย่างไร

  • เป็นการพยามยามตอบคำถามที่ว่า มี Class ใดเป็นส่วนประกอบของ Class อื่นหรือไม่ – “Is part of”

  • การแสดงสัญลักษณ์ทำได้โดยการโยงลูกศรเป็นสี่เหลี่ยมขนมเปียกปูนจาก Class ย่อย หรือ Class ที่เป็นส่วนประกอบไปยัง Class หลัก


290353 object oriented analysis and design

รถยนต์

Aggregation

ตัวถังรถ

เครื่องยนต์

ล้อ

Aggregation

หลังคารถ

กระจก

ประตู


Aggregation

Aggregation ของห้องเรียน


Cardinality required components optional components

Cardinality, Required Components และ Optional Components

  • Cardinality คือสิ่งที่ใช้แสดงจำนวนในความสัมพันธ์ระหว่าง Class ใน Aggregation Abstraction

    • ในทาง Object Orientation มักจะเรียก Class ย่อยว่าเป็น Component

  • Required Component หรือ Mandatory Component คือส่วนประกอบที่จำเป็นต้องมี

  • Optional Components คือส่วนประกอบที่ไม่จำเป็นต้องมีก็ได้

35


Aggregation1

Aggregation ของรถเก๋ง

รถเก๋ง

เครื่องยนต์

ล้อ

ประตู

ถุงลมนิรภัย

Mandatory

optional

Mandatory

Mandatory

36


Aggregation class

Aggregation ของ Class หนังสือ

  • ตามที่กำหนดใน Problem Domain มีดังนี้

    • หนังสือ เกิดจากการรวมกันของหน้าปก คำนำ สารบัญ บทของเนื้อหา และบรรณานุกรม

    • บทของเนื้อหาเกิดจากการรวมกันของหน้าหนังสือ

    • หน้าหนังสือเกิดจากการรวมกันของตัวหนังสือและรูปภาพ

37


Aggregation abstraction1

Aggregation Abstraction ของหนังสือ

38


Aggregation abstraction2

Aggregation Abstraction ของบทหนังสือ

39


Aggregation abstraction3

Aggregation Abstraction ของหน้าหนังสือ

40


Aggregation abstraction4

Aggregation Abstraction แบบหลายชั้นของหนังสือ

41


Aggregation abstraction5

Aggregation Abstraction แบบหลายชั้นของหนังสือ

  • จากรูปสามารถอธิบายได้ว่าหนังสือแบ่งออกเป็นส่วนของ

    • ปก มีเพียง 2 ปกคือ ปกหน้าและปกหลัง

    • คำนำ มีอย่างน้อย 1 คำนำ หรืออาจจะมากกว่านั้น

    • สารบัญ มีได้เพียงหนึ่งเดียวในหนังสือ 1 เล่ม

    • เนื้อหา ต้องมีอย่างน้อย 1 บทเสมอ

    • บรรณานุกรม ในหนังสือหนึ่งเล่มย่อมจะมีบรรณานุกรมเพียงหนึ่งเดียวเท่านั้น

42


Aggregation abstraction attributes method

Aggregation Abstraction แบบหลายชั้นของหนังสือ(ใส่รายละเอียดของ Attributes และ Method)

43


Generalization abstraction

Generalization Abstraction

เป็นกระบวนการในการนำ Class ที่มีลักษณะเหมือน หรือคล้ายคลึงกัน หรือมีคุณสมบัติอย่างใดอย่างหนึ่งร่วมกัน (General) มาจัดหมวดหมู่ ไว้เป็น Class เดียวกัน

กระบวนการย้อนกลับของ Generalization Abstraction เรียกว่า Specialization (เป็นการตอบคำถามว่าใน Class หนึ่งๆ สามารถจำแนกเป็น Class อะไรได้บ้าง)

44


290353 object oriented analysis and design

รถยนต์

คุณสมบัติ : มีล้อ

มีเครื่องยนต์

Specialization

Specialization

Generalization

Generalization

รถบรรทุก

คุณสมบัติ : คุณสมบัติของรถยนต์

+ สามารถบรรทุกของได้

รถเก๋ง

คุณสมบัติ : คุณสมบัติของรถยนต์

+ ใช้โดยสาร มี 4 ประตู

Specialization

Generalization

รถสปอร์ต

คุณสมบัติ : คุณสมบัติของรถเก๋ง

+วิ่งได้เร็วกว่า + เปิดประทุนได้


290353 object oriented analysis and design

สัตว์ปีก

คุณสมบัติ : มีปีก

มีขา 2 ขา

Specialization

Specialization

Generalization

Generalization

นก

คุณสมบัติ : คุณสมบัติของสัตว์ปีก +

บินได้

ไก่

คุณสมบัติ : คุณสมบัติสัตว์ปีก

+ ขันได้

Specialization

Generalization

ไก่ชน

คุณสมบัติ :คุณสมบัติไก่

+ ขันได้ + ชนไก่ได้


Inheritance generalization abstraction

Inheritanceกลไกที่เกิดจาก Generalization Abstraction

  • Inheritance หมายถึงการถ่ายคุณสมบัติจาก Superclass ไปยัง Subclass

    • Subclass คือ Class ที่เกิดจากการทำ Specialize

    • Superclass คือ Class เริ่มต้นในการทำ Specialize

  • สัญลักษณ์ที่ใช้ใน Object Orientation แทนการทำ Inheritance คือ ลูกศรซึ่งหัวลูกศรเป็นรูปสามเหลี่ยมใสชี้จาก Subclass ไปยัง Superclass

47


Inheritance

สัญลักษณ์แสดงการทำ Inheritance

48


Multiple inheritance

Multiple Inheritance

การ Inherit จาก Superclass ที่มากกว่า 1 Class เพื่อให้ได้ Subclass ที่มีคุณสมบัติพิเศษเพียงตัวเดียวหรือมากกว่า

49


Association abstraction

Association Abstraction

เป็นกระบวนการในการสร้างความสัมพันธ์ระหว่าง Class ต่างๆ ใน Problem Domain ที่เราสนใจ

เป็นความสัมพันธ์ที่อยู่บนระนาบเดียวกัน คือสิ่งของทั้งสองสิ่งที่มีความสัมพันธ์กันเป็นสิ่งที่มีความสำคัญเท่าเทียมกัน ไม่ใช่องค์ประกอบของกัน

เป็นความสัมพันธ์ที่ไม่สามารถอธิบายได้ด้วย Aggregation (ความสัมพันธ์ในเชิงการรวมกัน การประกอบกัน หรือการแบ่งแยกส่วนประกอบ) หรือ Generalization (ความสัมพันธ์ในเชิง การจัดประเภทจัดหมวดหมู่ หรือการจำแนก) เช่น คนเป็นเจ้าของรถยนต์

50


Multiplicity

Multiplicity

คือค่าที่เป็นไปได้ของจำนวนสมาชิกใน Class หนึ่งๆ ที่มีส่วนร่วมใน Association นั้น ซึ่งเรียกค่าของจำนวนสมาชิกของ Class ที่เป็นไปได้ใน Association นั้นว่า “Multiplicity”

เรียกจำนวนที่น้อยที่สุดของสมาชิกของ Class ที่มีส่วนร่วมใน Association ว่า “Minimum Multiplicity (Min-card)”

เรียกจำนวนที่มากที่สุดของสมาชิกของ Class ที่มีส่วนร่วมใน Association ว่า “Maximum Multiplicity (Max-card)”

51


Association

ประเภทความสัมพันธ์ใน Association

1.One-to-one Association (1-1) คือ Association ที่ Class ทั้งสองข้างของ Association มี Max-card เป็น 1 ทั้งคู่

2.One-to-many Association (1-M) คือ Association ที่ Class ข้างหนึ่งของ Association มี Max-card เป็น 1 ในขณะที่ Class อีกข้างหนึ่งมี Max-card ที่มีค่ามากกว่า 1

3.Many-to-many Association (M-N) คือ Association ที่ Class ทั้งสองข้างของ Association มี Max-card มากกว่า 1 ทั้งคู่


Association abstraction1

ตัวอย่าง Association Abstraction

จากตัวอย่างต่อไปนี้สร้างความสัมพันธ์แบบ Association จากคลาสที่กำหนด

สมาชิกของห้องสมุดประชาชน (Member) มีบัตรสมาชิก (Member Card) ได้เพียงหนึ่งใบ (กำหนด Class : Member และ Member card)

ในการยืมหนังสือ (Book) แต่ละครั้งสมาชิกสามารถยืมได้อย่างน้อย 1 เล่มอย่างมาก 5 เล่ม (กำหนด Class : Member และ Book)


Diagram association

หลักการในการเขียน Diagram แสดง Association

1.เขียน Class 2 Class ที่มีความสัมพันธ์ และลากเส้นตรงพร้อมทั้งใส่ชื่อความสัมพันธ์

2.เขียนลูกศรเพื่อแสดงทิศทางของการอ่านความสัมพันธ์ให้ถูกต้อง (หรือกำหนดแบบ 2 ทิศทางก็ได้)

3.พิจารณา Class ที่อยู่ในทิศทางที่หัวลูกศรชี้ไป ว่ามีความสัมพันธ์กับ Class แรกด้วยจำนวนน้อยที่สุดและมากที่สุดเท่าใด

4.พิจารณา Class ที่อยู่ในทิศทางตรงข้ามหัวลูกศรว่ามีความสัมพันธ์กับ Class ที่สองด้วยจำนวนน้อยที่สุดและมากที่สุดเท่าใด

54


  • Login