Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
แบบจำลองเชงวตถ (OBJECT ORIENTED ANALYSIS)
แบบจำลองเชงวตถ (Object Oriented Analysis)
มงทนยามของคลาสและลกษณะทคลาสทำงานรวมกน แทนทเราจะมองปญหาใน
ลกษณะอนพต โพรเซส เอาทพตแบบดงเดม ซงเปนลกษณะของกระแสขอมล เรา
จะมองปญหาในแงของโครงสรางขอมลตามลำดบชน
แบบจำลองเชงวตถ UML (Unified Modeling Language) เปนเสมอนพมพเขยวท
แสดงภาพรวมของระบบทงหมด โดยจะแสดงในรปแบบของแผนภาพ (Diagram)
เพอใหเกดความเขาใจทตรงกนระหวางผออกแบบระบบ, โปรแกรมเมอรและผใช
งาน ม 9 แผนภาพ
แบบจำลองเชงวตถ (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
แบบจำลองเชงวตถ (Object Oriented Analysis)
Structural Diagram เปนกลมแผนภาพทแสดงใหเหนโครงสรางเชงสถต (Static)
ของระบบ คอ โครงสรางในสวนทไมมการเปลยนแปลงหรอเคลอนไหวแมจะมเหต
การณใดๆ เกดขน
Behavioral Diagram เปนกลมแผนภาพใหเหนภาพเชงกจกรรมของระบบ
(Dynamic) คอแสดงใหเหนถงพฤตกรรมของระบบทมการเปลยนแปลงในเมอม
เหตการณใดๆ เกดขน และแสดงใหเหนถงความสามารถของระบบทดำเนนการใน
หนาทบางอยางได
คำอธบายเพมเตม
USE CASE DIAGRAM
Use Case Diagram
Use Case Diagram เปนแผนภาพทใชทแสดงปฏสมพนธระหวางระบบงานและสงทอยนอกระบบงาน Use Case Diagram ประกอบดวย
¤ Actor คอ ผทกระทำกบระบบ อาจเปนผททำการสงขอมล, รบขอมล หรอ แลกเปลยนขอมลกบระบบนนๆ เชน ลกคากบระบบสงซอสนคาทางโทรศพท
¤ Use Case คอ หนาทหรองานตางๆในระบบ เชน การเชคสตอค การสงซอสนคา เปนตน
¤ Relationship คอ ความสมพนธระหวาง Use Case กบ Actor
สญลกษณ
วงร แทน use case
คน แทน actor
ความสมพนธใน Use Case Diagram
แบงออกเปน 2 ประเภท ไดแก
1. ความสมพนธระหวาง Actor
2. ความสมพนธระหวาง Use case
การเชอมระหวาง Actor กบ Use Case จะใชเสนแสดงความเกยวของ
ปฏสมพนธ (Association)
! Association หมายถง ความสมพนธทมการตดตอสอสารกน (ทงการรบ
และสง Messages ใหแกกนและกน)
ความสมพนธระหวาง Actor
ความสมพนธ(Relation) ระหวาง Actor แบงเปน 1. ความสมพนธระหวาง Actor กบ Use Case ซงแบงไดเปนความสมพนธแบบทศทางเดยว แบงได 3 กรณดงน
Actor เปนผทรบขอมลจาก Use Case จะใชสญลกษณ Actor เปนผสงขอมลใหกบ Use Case จะใชสญลกษณ Actorเปนทงผรบและสงขอมลใหกบ Use Case จะใชสญลกษณ
ความสมพนธระหวาง Actor
2. ความสมพนธระหวาง Actor กบ Actor
จะมความสมพนธในรปแบบทสามารถทำการสบทอดคณสมบต
บทบาทและหนาทของ Actor จาก Actor Superclass ไปยงActor Subclass ซง
เรยกวา Generalization(/Specialization) Relationship
Worker
ตวอยาง Geralization (/Specialization)
Relationship
คนคมงาน (Supervisor) เปนคนงานพเศษ
ทมหนาทพเศษมากกวาคนงาน (Worker)
Supervisor
ความสมพนธระหวาง Actor
ความสมพนธระหวาง Use Case
3. ความสมพนธระหวาง Use Case กบ Use Case
แบงออกเปน 3 แบบ ไดแก
1. Includes หรอ Use
2. Extends
ความสมพนธแบ Includes / Use
ความสมพนธในกรณท Use Case หนงเรยกไปใชหรอดงเอากจกรรมของอก Use Case หนง เพอใหกจกรรมนนเกดขนจรงในตนเอง เรยกความสมพนธระหวาง Use Case ในลกษณะนวา “Includes” หรอ “Use”
สญลกษณของ Includes หรอ Use จะเปนเสนปะพรอมหวลกศร ชไปยง Use Case ทถกเรยกใชงาน มคำวา <<include>> หรอ <<uses>> กำกบอยบนเสน ดงรป
<<include>>
Include Use Case Base Use Case
ตวอยาง ความสมพนธแบบ 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>>
ความสมพนธแบบ Extends
Extends หมายถง การท Use Case หนงไปมผลตอการทำงานปกตของอก Use Case
หนง
Use Case ทมา extend นนจะมผลใหการดำเนนงานของ Use Case ทถก extend ถก
รบกวนหรอมการสะดด หรอมการเปลยนกจกรรมไป
สญลกษณของ extend จะเปนเสนปะพรอมหวลกศร ชไปยง Use Case ทถก extend ม
คำวา << extend >> กำกบอยบนเสน ดงรป
<<extends>>
Extending Use Case Base Use Case
ตวอยาง ความสมพนธแบบ Extends
1. USE CASE การทำรายการขาย ซงในบางโอกาสอาจมเหตการณททำใหการทำรายการขายไมสมบรณ เชน สนคาหมด ลกคายกเลก ใ นกรณน จะถอวาการยกเลกรายการขาย เปน Base Use Case ใ นขณะทการทำรายการขาย เปน Extending Use Case
ทำรายการขาย ยกเลกรายการขาย<<extends>>
รบสนคา สงคนสนคา<<extends>>
การสราง Use Case Diagram
ขนตอนการสราง Use Case Diagram • ระบ Actors ทมปฏสมพนธกบระบบ • พจารณาแนวทางของระบบ ในการปฏสมพนธกบ Actors • จำแนกพฤตกรรมของระบบในการปฏสมพนธกบ Actors ใหเปน Use cases และกำหนดความสมพนธระหวาง Use Case ระบสงท User ตองการใหมในระบบ ตงชอให Use Case เขยนคำอธบายสนๆ เพมรายละเอยดในภายหลง (Use Case อะไรทตองมใน ระบบเพอใหระบบสมบรณ)
การหา Actor
สามารถระบ Actor ไดโดยตอบคำถามตอไปน - ใครเปนคนใชงานหนาทการทำงานหลกของระบบ (Primary Actors) ?
- ใครตองการการสนบสนนการทำงานจากระบบ ? - ใครตองการบำรงรกษา และบรหารระบบ (Secondary Actors) ? - Hardware Devices ใดทตองการใหระบบจดการดแล ? - ระบบภายนอกระบบใดท ตองการใหระบบมปฏสมพนธดวย ? - ใครหรออะไรทตองการไดรบผลประโยชน จาก Output ของระบบ?
คำแนะนำ ไมควรพจารณาเฉพาะ Users ทใชงานระบบโดยตรง ตองพจารณา Users อนๆ ทตองการใชบรการจากระบบดวย
Actor & Use case
ระบบจดการหอพก List of Actor :
✓ ผดแลระบบ
✓ เจาของหอพก
✓ พนกงาน
✓ ผเชา
!List of use case :
✓ เขาสระบบ
✓ จดการขอมลพนฐาน
✓ จองหอพก
✓ ทำสญญา
✓ ชำระเงนคามดจำ
✓ บนทกคาใชจาย
✓ ชำระเงนคาเชา
✓ ปดสญญาเชา
Use case diagram
“ÒœËûÑʃÒÊœñ
เขาสระบบ
จดการขอมลพนฐานจองหอพก
ทำสญญา
ชำระเงน
คนหองพก
บนทกคาใชจาย
é–á–” óñı ççó–ÊÍ œ
จายคาเชาออกใบเสรจ
ตรวจสอบหองวาง<<include>>
<<include>>
<<includ
e>>
<<include>>
ปรบปรงสถานะหองพก
<<include>>
ผดแลระบบ
เจาของกจการ
ลกคา
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
Use case Name จดการขอมลพนฐาน
Actor ผดแลระบบ
Description ผใชตองการเพม ลบ แกไข ขอมลพนฐาน
Normal course 1. ผใชเขาตองการเขาสระบบกอน 2. ระบบแสดงฟอรมเพอเพม ลบ แกไข ขอมลพนฐาน
3. ผใชทำการกรอกขอมลพนฐาน แลวบนทก 4. ระบบทำการเพมขอมลใหม ปรบปรง และลบขอมล 5. ระบบแสดงผลรายการทเพมและแกไข
Alternate Course 4a. ถาขอมลใหมทเพมมรหสซำกบขอมลทมอยแลว จะไมสามารถเพมขอมลได 4b. รหสหลก จะไมสามารถแกไขได 4c. ถาขอมลทผใชทำการลบ มการเชอมโยงกบขอมลอนอยจะไมสามารถลบได
Use case Description
Use case Name ทำสญญา
Actor เจาของกจการ
Description เจาของกจการทำสญญาเชาหองพก
Normal course 1. ผใชเขาตองการเขาสระบบ 2. ผใชเลอกหองทตองการทำสญญา 3. ระบบตรวจสอบสถานะหอง 4. ผใชกรอกขอมลในการทำสญญาเชา 5. บนทกขอมลสญญาเชา และขอมลผเชา 6. ปรบปรงสถานะหองเชา 7. พมพใบสญญา
Alternate Course 2a. ถาสถานะไมวาง ใหกลบไปยงหนาเลอกหองใหม
Use case Description
Use case Name ขาย (Sell)
Actor Manager, Customer, Cashier
Description การขายหนารานทลกคาสงซอสนคาและไดรบใบสงสนคากอนนำไปเบกสนคาทคลงสนคา
Normal course 1. ลกคาเขามาทหนารานและทำการเลอกสนคา หรอบอกรายการสนคาทตองการกบพนกงานขาย 2. พนกงานขายตรวจสอบจำนวนสนคาในคลงสนคาเพอทำการขายในแตละรายการ 3. พนกงานทำรายการสงสนคา ลกคาชำระเงนและรบใบเสรจ
Alternate Course 2a. สนคาทตองการไมเพยงพอลกคายกเลกการซอขายทงหมด 2b. สนคาทตองการไมเพยงพอลกคายกเลกการซอขายสนคาในรายการทไมพอ 2c. สนคาทตองการไมเพยงพอลกคาทำการซอขายสนคาในรายการนนเทาทมทงหมด
Use case Description
Use case Description
Use case Name สงซอ (Order)
Actor Manager, Supplier
Description กระบวนการสงซอสนคาเมอถงวงรอบของการสงซอหรอเมอสนคากำลงเรมขาดสตอค
Normal course 1. เมอถงกำหนดทกๆ สปดาหผจดการสนคาคงคลงจดทำรายงานการขาย และสรปยอดสนคาในคลง
สนคา 2. ผจดการสนคาคงคลงตรวจสอบและตดสนใจรายการสนคาทตองทำการซอเขา 3. ผจดการสนคาคงคลงออกใบสงของตามรายการจากขอ 2 4. ใบสงของทไดรบอนมตจะสงไปใหบรษทคคาเพอทำการซอสนคา
Alternate Course 1. ถาสนคาหมดกอนสนสปดาห จะมการแจงเตอนเพอทำการสงซอ 2. ถาเปนรายการสนคาใหมทไมมในคลงสนคา ใหเพมขอมลของสนคาใหมเขาไปในระบบ
END