28
แบบจำลองเชิงวัตถุ (OBJECT ORIENTED ANALYSIS)

แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

แบบจำลองเชงวตถ (OBJECT ORIENTED ANALYSIS)

Page 2: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

แบบจำลองเชงวตถ (Object Oriented Analysis)

มงทนยามของคลาสและลกษณะทคลาสทำงานรวมกน แทนทเราจะมองปญหาใน

ลกษณะอนพต โพรเซส เอาทพตแบบดงเดม ซงเปนลกษณะของกระแสขอมล เรา

จะมองปญหาในแงของโครงสรางขอมลตามลำดบชน

แบบจำลองเชงวตถ UML (Unified Modeling Language) เปนเสมอนพมพเขยวท

แสดงภาพรวมของระบบทงหมด โดยจะแสดงในรปแบบของแผนภาพ (Diagram)

เพอใหเกดความเขาใจทตรงกนระหวางผออกแบบระบบ, โปรแกรมเมอรและผใช

งาน ม 9 แผนภาพ

Page 3: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

แบบจำลองเชงวตถ (Object Oriented Analysis)❶ Class Diagram

❷ Object Diagram

❸ Component Diagram

❹ Deployment Diagram

❺ Use Case Diagram

❻ Sequence Diagram

❼ Collaboration Diagram

❽ Statechart Diagram

❾ Activity Diagram

Structural Diagrams

Behavioral Diagrams

Page 4: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

แบบจำลองเชงวตถ (Object Oriented Analysis)

Structural Diagram เปนกลมแผนภาพทแสดงใหเหนโครงสรางเชงสถต (Static)

ของระบบ คอ โครงสรางในสวนทไมมการเปลยนแปลงหรอเคลอนไหวแมจะมเหต

การณใดๆ เกดขน

Behavioral Diagram เปนกลมแผนภาพใหเหนภาพเชงกจกรรมของระบบ

(Dynamic) คอแสดงใหเหนถงพฤตกรรมของระบบทมการเปลยนแปลงในเมอม

เหตการณใดๆ เกดขน และแสดงใหเหนถงความสามารถของระบบทดำเนนการใน

หนาทบางอยางได

คำอธบายเพมเตม

Page 5: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

USE CASE DIAGRAM

Page 6: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use Case Diagram

Use Case Diagram เปนแผนภาพทใชทแสดงปฏสมพนธระหวางระบบงานและสงทอยนอกระบบงาน Use Case Diagram ประกอบดวย

¤ Actor คอ ผทกระทำกบระบบ อาจเปนผททำการสงขอมล, รบขอมล หรอ แลกเปลยนขอมลกบระบบนนๆ เชน ลกคากบระบบสงซอสนคาทางโทรศพท

¤ Use Case คอ หนาทหรองานตางๆในระบบ เชน การเชคสตอค การสงซอสนคา เปนตน

¤ Relationship คอ ความสมพนธระหวาง Use Case กบ Actor

Page 7: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

สญลกษณ

วงร แทน use case

คน แทน actor

Page 8: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ความสมพนธใน Use Case Diagram

แบงออกเปน 2 ประเภท ไดแก

1. ความสมพนธระหวาง Actor

2. ความสมพนธระหวาง Use case

Page 9: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

การเชอมระหวาง Actor กบ Use Case จะใชเสนแสดงความเกยวของ

ปฏสมพนธ (Association)

! Association หมายถง ความสมพนธทมการตดตอสอสารกน (ทงการรบ

และสง Messages ใหแกกนและกน)

ความสมพนธระหวาง Actor

Page 10: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ความสมพนธ(Relation) ระหวาง Actor แบงเปน 1. ความสมพนธระหวาง Actor กบ Use Case ซงแบงไดเปนความสมพนธแบบทศทางเดยว แบงได 3 กรณดงน

Actor เปนผทรบขอมลจาก Use Case จะใชสญลกษณ Actor เปนผสงขอมลใหกบ Use Case จะใชสญลกษณ Actorเปนทงผรบและสงขอมลใหกบ Use Case จะใชสญลกษณ

ความสมพนธระหวาง Actor

Page 11: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

2. ความสมพนธระหวาง Actor กบ Actor

จะมความสมพนธในรปแบบทสามารถทำการสบทอดคณสมบต

บทบาทและหนาทของ Actor จาก Actor Superclass ไปยงActor Subclass ซง

เรยกวา Generalization(/Specialization) Relationship

Worker

ตวอยาง Geralization (/Specialization)

Relationship

คนคมงาน (Supervisor) เปนคนงานพเศษ

ทมหนาทพเศษมากกวาคนงาน (Worker)

Supervisor

ความสมพนธระหวาง Actor

Page 12: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ความสมพนธระหวาง Use Case

3. ความสมพนธระหวาง Use Case กบ Use Case

แบงออกเปน 3 แบบ ไดแก

1. Includes หรอ Use

2. Extends

Page 13: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ความสมพนธแบ Includes / Use

ความสมพนธในกรณท Use Case หนงเรยกไปใชหรอดงเอากจกรรมของอก Use Case หนง เพอใหกจกรรมนนเกดขนจรงในตนเอง เรยกความสมพนธระหวาง Use Case ในลกษณะนวา “Includes” หรอ “Use”

สญลกษณของ Includes หรอ Use จะเปนเสนปะพรอมหวลกศร ชไปยง Use Case ทถกเรยกใชงาน มคำวา <<include>> หรอ <<uses>> กำกบอยบนเสน ดงรป

<<include>>

Include Use Case Base Use Case

Page 14: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ตวอยาง ความสมพนธแบบ Includes / Use

1. ใ นการทำงานของระบบเอทเอม Use Case “การตรวจสอบผเขาใชระบบ (Validate User)” สามารถเปน Included Use Case ใหกบ Base Use Case หลายๆตว ไ ดแก Base Use Case “การถอนเงน (Withdraw Money)” และ “การโอนเงน (Transfer Money)” สามารถแสดงสถานการณนในรปของ Use Case Diagram ไดดงรป

ถอนเงน

โอนเงน

ตรวจสอบผใช

<<include>>

<<include>>

Page 15: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ความสมพนธแบบ Extends

Extends หมายถง การท Use Case หนงไปมผลตอการทำงานปกตของอก Use Case

หนง

Use Case ทมา extend นนจะมผลใหการดำเนนงานของ Use Case ทถก extend ถก

รบกวนหรอมการสะดด หรอมการเปลยนกจกรรมไป

สญลกษณของ extend จะเปนเสนปะพรอมหวลกศร ชไปยง Use Case ทถก extend ม

คำวา << extend >> กำกบอยบนเสน ดงรป

<<extends>>

Extending Use Case Base Use Case

Page 16: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

ตวอยาง ความสมพนธแบบ Extends

1. USE CASE การทำรายการขาย ซงในบางโอกาสอาจมเหตการณททำใหการทำรายการขายไมสมบรณ เชน สนคาหมด ลกคายกเลก ใ นกรณน จะถอวาการยกเลกรายการขาย เปน Base Use Case ใ นขณะทการทำรายการขาย เปน Extending Use Case

ทำรายการขาย ยกเลกรายการขาย<<extends>>

รบสนคา สงคนสนคา<<extends>>

Page 17: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

การสราง Use Case Diagram

ขนตอนการสราง Use Case Diagram • ระบ Actors ทมปฏสมพนธกบระบบ • พจารณาแนวทางของระบบ ในการปฏสมพนธกบ Actors • จำแนกพฤตกรรมของระบบในการปฏสมพนธกบ Actors ใหเปน Use cases และกำหนดความสมพนธระหวาง Use Case ระบสงท User ตองการใหมในระบบ ตงชอให Use Case เขยนคำอธบายสนๆ เพมรายละเอยดในภายหลง (Use Case อะไรทตองมใน ระบบเพอใหระบบสมบรณ)

Page 18: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

การหา Actor

สามารถระบ Actor ไดโดยตอบคำถามตอไปน - ใครเปนคนใชงานหนาทการทำงานหลกของระบบ (Primary Actors) ?

- ใครตองการการสนบสนนการทำงานจากระบบ ? - ใครตองการบำรงรกษา และบรหารระบบ (Secondary Actors) ? - Hardware Devices ใดทตองการใหระบบจดการดแล ? - ระบบภายนอกระบบใดท ตองการใหระบบมปฏสมพนธดวย ? - ใครหรออะไรทตองการไดรบผลประโยชน จาก Output ของระบบ?

คำแนะนำ ไมควรพจารณาเฉพาะ Users ทใชงานระบบโดยตรง ตองพจารณา Users อนๆ ทตองการใชบรการจากระบบดวย

Page 19: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Actor & Use case

ระบบจดการหอพก List of Actor :

✓ ผดแลระบบ

✓ เจาของหอพก

✓ พนกงาน

✓ ผเชา

!List of use case :

✓ เขาสระบบ

✓ จดการขอมลพนฐาน

✓ จองหอพก

✓ ทำสญญา

✓ ชำระเงนคามดจำ

✓ บนทกคาใชจาย

✓ ชำระเงนคาเชา

✓ ปดสญญาเชา

Page 20: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case diagram

“ÒœËûÑʃÒÊœñ

เขาสระบบ

จดการขอมลพนฐานจองหอพก

ทำสญญา

ชำระเงน

คนหองพก

บนทกคาใชจาย

é–á–” óñı ççó–ÊÍ œ

จายคาเชาออกใบเสรจ

ตรวจสอบหองวาง<<include>>

<<include>>

<<includ

e>>

<<include>>

ปรบปรงสถานะหองพก

<<include>>

ผดแลระบบ

เจาของกจการ

ลกคา

Page 21: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case Name เขาสระบบ(Login)

Actor ผดแลระบบ,เจาของกจการ

Description ผใชตองการเขาสระบบ

Normal course 1. ผใชเขาตองการเขาสระบบ 2. ระบบแสดงฟอรมเพอกรอกขอมล Username และ Password

3. ผใชทำการกรอก Username และ Password

4. ระบบตรวจสอบขอมลวาถกตองหรอไม

Alternate Course 4a. ถา username และ password ถกตองใหเขาสระบบตามสทธการใชงาน 4b. ถา username และ password ไมถกตองใหแจงขอความ “Username และ Password ไมถกตอง”และ

กลบไปยงหนาหลก

Use case Description

Page 22: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case Name จดการขอมลพนฐาน

Actor ผดแลระบบ

Description ผใชตองการเพม ลบ แกไข ขอมลพนฐาน

Normal course 1. ผใชเขาตองการเขาสระบบกอน 2. ระบบแสดงฟอรมเพอเพม ลบ แกไข ขอมลพนฐาน

3. ผใชทำการกรอกขอมลพนฐาน แลวบนทก 4. ระบบทำการเพมขอมลใหม ปรบปรง และลบขอมล 5. ระบบแสดงผลรายการทเพมและแกไข

Alternate Course 4a. ถาขอมลใหมทเพมมรหสซำกบขอมลทมอยแลว จะไมสามารถเพมขอมลได 4b. รหสหลก จะไมสามารถแกไขได 4c. ถาขอมลทผใชทำการลบ มการเชอมโยงกบขอมลอนอยจะไมสามารถลบได

Use case Description

Page 23: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case Name ทำสญญา

Actor เจาของกจการ

Description เจาของกจการทำสญญาเชาหองพก

Normal course 1. ผใชเขาตองการเขาสระบบ 2. ผใชเลอกหองทตองการทำสญญา 3. ระบบตรวจสอบสถานะหอง 4. ผใชกรอกขอมลในการทำสญญาเชา 5. บนทกขอมลสญญาเชา และขอมลผเชา 6. ปรบปรงสถานะหองเชา 7. พมพใบสญญา

Alternate Course 2a. ถาสถานะไมวาง ใหกลบไปยงหนาเลอกหองใหม

Use case Description

Page 24: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object
Page 25: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case Name ขาย (Sell)

Actor Manager, Customer, Cashier

Description การขายหนารานทลกคาสงซอสนคาและไดรบใบสงสนคากอนนำไปเบกสนคาทคลงสนคา

Normal course 1. ลกคาเขามาทหนารานและทำการเลอกสนคา หรอบอกรายการสนคาทตองการกบพนกงานขาย 2. พนกงานขายตรวจสอบจำนวนสนคาในคลงสนคาเพอทำการขายในแตละรายการ 3. พนกงานทำรายการสงสนคา ลกคาชำระเงนและรบใบเสรจ

Alternate Course 2a. สนคาทตองการไมเพยงพอลกคายกเลกการซอขายทงหมด 2b. สนคาทตองการไมเพยงพอลกคายกเลกการซอขายสนคาในรายการทไมพอ 2c. สนคาทตองการไมเพยงพอลกคาทำการซอขายสนคาในรายการนนเทาทมทงหมด

Use case Description

Page 26: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object
Page 27: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

Use case Description

Use case Name สงซอ (Order)

Actor Manager, Supplier

Description กระบวนการสงซอสนคาเมอถงวงรอบของการสงซอหรอเมอสนคากำลงเรมขาดสตอค

Normal course 1. เมอถงกำหนดทกๆ สปดาหผจดการสนคาคงคลงจดทำรายงานการขาย และสรปยอดสนคาในคลง

สนคา 2. ผจดการสนคาคงคลงตรวจสอบและตดสนใจรายการสนคาทตองทำการซอเขา 3. ผจดการสนคาคงคลงออกใบสงของตามรายการจากขอ 2 4. ใบสงของทไดรบอนมตจะสงไปใหบรษทคคาเพอทำการซอสนคา

Alternate Course 1. ถาสนคาหมดกอนสนสปดาห จะมการแจงเตอนเพอทำการสงซอ 2. ถาเปนรายการสนคาใหมทไมมในคลงสนคา ใหเพมขอมลของสนคาใหมเขาไปในระบบ

Page 28: แบบจำลองเชิงวัตถุ(OBJECT ORIENTED ANALYSIS)wcalab.com/course/wp-content/uploads/2015/01/UseCase...แบบจำลองเช งว ตถ (Object

END