unit05 case - system analysis uml
TRANSCRIPT
![Page 1: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/1.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย1
กรณศกษา หนวยท 5: การสรางแบบจาลองความตองการ
ดร.สขสถต มสถตยการวเคราะหและออกแบบเชงวตถ1/2550
![Page 2: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/2.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย2
วตถประสงค
เพอใหนกศกษาฝกสรางยสเคสโมเดลเพอใหนกศกษาไดฝกเขยนขอกาหนดอนเตอรเฟสของระบบเพอใหนกศกษาไดฝกหาออบเจคในขอบเขตปญหา
![Page 3: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/3.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย3
แบบจาลองความตองการ(Requirements Model)
ใชจากดขอบเขต กาหนดหนาท และพฤตกรรมภายนอกของระบบ แสดงภาพของระบบทลกคาตองการ จากมมมองของผพฒนาเปนเสมอนสญญาระหวางผพฒนาและผสงทาระบบถอเปนศนยกลางตลอดการพฒนาระบบ เพราะควบคมการพฒนาแบบจาลองอนๆ ดงนน
ตอ
![Page 4: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/4.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย4
แบบจาลองความตองการ
ประกอบดวยยสเคสโมเดล (use case model)– กาหนดงานทระบบตองมจากมมมองของผใช และขนตอนการปฎบตงานทเกดขนภายในระบบ
ขอกาหนดอนเตอรเฟส (Interface descriptions) [เลอกทา]– กาหนดรายละเอยดของสวนตดตอผใช (User
interface) และสวนตดตอระบบ (System interface) อน
ตอ
![Page 5: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/5.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย5
แบบจาลองความตองการ
แบบจาลองขอบเขตปญหา (problem domain model)– แสดงออบเจคทเกยวของภายในระบบ
![Page 6: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/6.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย6
การสรางแบบจาลองความตองการ
ความตองการของระบบใหม
ขอกาหนดอนเตอรเฟส
แบบจาลองขอบเขตปญหา
การปฏบตงานในระบบเดม
การวเคราะหความตองการ
ยสเคสโมเดล
![Page 7: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/7.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย7
ขนตอนการสรางแบบจาลองความตองการ
1. สรางยสเคสโมเดล1.1 กาหนดแอคเตอร1.2 กาหนดยสเคสหลก1.3 เขยนคาอธบายยสเคส1.4 กาหนดความสมพนธระหวางยสเคส1.5 ปรบปรงยสเคสโมเดล
ตอ
![Page 8: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/8.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย8
ขนตอนการสรางแบบจาลองความตองการ
2. สรางขอกาหนดอนเตอรเฟส (เลอกทา)2.1 กาหนดรายละเอยดของสวนตดตอผใช
(User interface)2.2 กาหนดรายละเอยดของสวนตดตอระบบ
(System interface) [เลอกทา]2.3 ทดสอบและปรบปรงขอกาหนด
ตอ
![Page 9: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/9.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย9
ขนตอนการสรางแบบจาลองความตองการ
3. สรางแบบจาลองขอบเขตปญหา3.1 กาหนดออบเจค3.2 กาหนดแอททรบว [เลอกทา]3.3 กาหนดความสมพนธระหวางออบเจค
4. ตรวจสอบแบบจาลองเทยบกบความตองการ
![Page 10: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/10.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย10
กรณศกษา
เครองรบคนบรรจภณฑ (recycling machine)
เรมทางาน
พมพบนทกรายการ
กระปอง ลงขวด
![Page 11: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/11.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย11
เครองรบคนบรรจภณฑ
รบคนขวด กระปองนา และ ลงใสขวด จากลกคาตรวจสอบประเภทของบรรจภณฑทรบ และบนทกจานวนทบรรจภณฑทลกคาแตละคนคนพมพบนทกรายการแสดงรายการบรรจภณฑและมลคาใหลกคาพมพบนทกรายการบรรจภณฑทรบมาทงหมดในวนใหผดแลเปลยนแปลงขอมลสงสญญาณแจงผดแลเมอเกดปญหา
![Page 12: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/12.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย12
กจกรรม
สรางยสเคสโมเดลสรางแบบจาลองขอบเขตปญหา
![Page 13: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/13.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย13
สรางยสเคสโมเดล
![Page 14: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/14.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย14
กาหนดแอคเตอร
แอคเตอร (actor)– ชนดของผใช (บคคล หรอ ระบบ) คลาส– อยภายนอกระบบ– มการแลกเปลยนขอมลกบระบบประเภทของแอคเตอร– primary actor ใชระบบโดยตรง อาจเพอปฏบตภาระกจประจาวน
– secondary actor ดแลให primary actor สามารถใชระบบได
ตอ
![Page 15: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/15.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย15
กาหนดแอคเตอร
ลกคา =Primary actor
ผดแล =Secondary actor
ตอ
![Page 16: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/16.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย16
กาหนดยสเคสหลก
ยสเคสโมเดล– แสดงกลมของยสเคส– แสดงลกษณะเฉพาะของพฤตกรรมของระบบทงหมด และแอคเตอรภายนอก
ยสเคส– แสดงวธการใชระบบ โดยใชบางสวนของความสามารถของระบบ
– ลาดบการกระทาทสมบรณของการทางาน
ตอ
![Page 17: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/17.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย17
กาหนดยสเคสหลก
ยสเคส– กาหนดการปฏสมพนธระหวางระบบและแอคเตอร– ประกอบดวย 1 normal flow และ 0..* exceptional
flows
ซนารโอ (Scenario) เปนลาดบการกระทาเฉพาะ ทขนกบเหตการณเรมตนและสนสดทกาหนดในยสเคส
ตอ
![Page 18: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/18.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย18
กาหนดยสเคสหลก
ตอ
OperatorCustomer
Return Item Generate daily Report
Change item information
* * * *
*
*
![Page 19: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/19.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย19
กาหนดยสเคสหลก
1. เขยนรายชอยสเคส2. เขยนคาอธบายยสเคสแบบยอ (Brief description)3. แยกแยะยสเคสเพอตดยสเคสทไมเหมาะสมออก
ยสเคสทซากนยสเคสทไมคอยเกดขนยสเคสท Exceptional flow
4. เขยนคาอธบายยสเคสแบบละเอยด (Detailed description)
ตอ
![Page 20: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/20.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย20
รายการยสเคส
Change item information (เปลยนขอมลบรรจภณฑ)
Generate daily Report (สรางรายงานประจาวน)
Operator (ผดแล)
Return items (คนวตถ)Customer (ลกคา)
ยสเคสแอคเตอร
![Page 21: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/21.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย21
คาอธบายยสเคสแบบยอ
Return Itemsลกคานากระปอง ขวด หรอ ลง ใสในเครองรไซเคล ระบบจะเพมจานวนของบรรจภณฑประเภททรบจากลกคา และจานวนรวมของวน เมอลกคาคนบรรจภณฑหมดแลวจะกดปมพมพบนทกรายการ เพอรบใบบนทกรายการซงพมพรายการบรรจภณฑทคนและมลคารวม ถาวตถทใสเขามาเกดตดในชอง ใหเรยกผดแล
![Page 22: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/22.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย22
คาอธบายยสเคสแบบละเอยด
Basic course:1. ลกคากดปมเรมตนบนพาเนลของลกคา2. ลกคาคนบรรจภณฑผานพาเนล3. เซนเซอรตรวจสอบบรรจภณฑทรบเขามา4. เซนเซอรแจงผลแกระบบ5. ระบบประเมนชนดของสงทรบมา (กระปอง ขวด หรอ ลง)6. ระบบจะเพมจานวนของบรรจภณฑประเภทนนสาหรบลกคา และสาหรบวนนน
Use case name: Return Items
ตอ
![Page 23: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/23.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย23
คาอธบายยสเคสแบบละเอยด
Alternative course:2a. วตถตดในชอง ระบบสงสญญาณเรยกผดแล
7. เมอคนบรรจภณฑหมดแลว ลกคากดปมพมพบนพาเนลของลกคา
8. ระบบประมวลผลขอมลทจะพมพบนใบบนทกรายการ9. ระบบพมพประเภท มลคาและจานวนของบรรจภณฑแตละประเภททลกคาคน รวมทงมลคาทงหมดออกทางเครองพมพ
ตอ
![Page 24: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/24.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย24
การเขยนคาอธบายยสเคส
เขยน Normal flow เปนลาดบการกระทาทแยกกนเปนขนๆ แตละขนเขยนแยกบรรทดใชลาดบของการกระทาเปนตวระบลาดบทบงคบเขยนใหชดเจนวาใครเปนผเรมการกระทาขนนนๆเขยนโดยใชรปแบบ Subject-Verb-Direct object (or Indirect object) = Actor/System-Action-Object)เขยนคาแนะนาระบการทาซาหลงชดขนตอนทตองทาซา
ตอ
![Page 25: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/25.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย25
การเขยนคาอธบายยสเคส
ใหมความซบซอนนอยทสด– แยกสวนระหวาง Normal flow และ Exceptional flow– แตละขนใน Normal flow ควรสามารถอธบายไดในประโยค– ถาขนตอนใดซบซอนใหแยกเปนขนตอนยอย แลวเขยนไวในสวน
Sub flowใชคาเดมในการอางถงสงสงหนงในยสเคสเสมอ รายละเอยดตองเปนระดบเดยวกนสาหรบทกขนเขยนจากมมมองของผสงเกตการณอสระเรมจากเขยน Normal flow กอน
![Page 26: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/26.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย26
การหา Exceptional flow
พจารณาการกระทาทถกเลอกปฏบต แทนการกระทาตามขนตอนใน Normal flowพจารณาพฤตกรรมทเกดขน ในกรณเกดสถาวะไมปกต (อาจเกดจากความผดพลาดของผใช ความผดปกตของเครอง หรอสภาพแวดลอมอนๆ )
![Page 27: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/27.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย27
กาหนดความสมพนธระหวางยสเคส
• หาความสมพนธแบบ Extend
• Extend ยสเคส แสดงพฤตกรรมทอาจถกเลอกกระทาโดยอกยสเคสหนง
![Page 28: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/28.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย28
การหาความสมพนธแบบ extend
1. พจารณาแยก Exceptional flow ออกมาเปนยสเคส แลวกาหนดใหยสเคสใหม extend ยสเคสเดม
2. พจารณาสภาวะทอาจแทรกเขาไปในยสเคส หรอหยดการทางานของยสเคส
3. ปรบปรงยสเคสไดอะแกรม และคาอธบายยสเคส
![Page 29: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/29.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย29
คาอธบายยสเคส
Alternative course:2a. วตถตดในชอง ทายสเคส Item is stuck
![Page 30: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/30.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย30
ปรบปรงยสเคสโมเดล
หาความสมพนธแบบ include และ generalization
![Page 31: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/31.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย31
การปรบปรงยสเคสโมเดล
1. ความสมพนธแบบ includeพจารณาการกระทาทซากนในหลายๆ ยสเคสแยกการกระทานนออกมาเปนยสเคส แลวกาหนดใหยสเคสเดม include ยสเคสใหม
2. ความสมพนธแบบ generalizationพจารณาการ inheritance ของยสเคสและแอคเตอร
3. ปรบปรงยสเคสไดอะแกรม และคาอธบายยสเคส
![Page 32: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/32.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย32
ยสเคสโมเดลสมบรณ
![Page 33: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/33.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย33
ขอกาหนดอนเตอรเฟส
เปลยนขอมลขวด
มลคา
ชนด
ขนาด
![Page 34: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/34.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย34
ขอกาหนดอนเตอรเฟส
อธบายสวนตดตอผใชสาหรบยสเคสยสเคสมแบบทดสอบทมประโยชนสาหรบความตองการตอระบบทดสอบกบผใชหลก ถาจาเปนใชการจาลองสถานการณหรอตนแบบ (simulations orprototypes)
ตอ
![Page 35: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/35.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย35
แบบจาลองขอบเขตปญหา
แสดง logical view ของระบบโดยใชออบเจค ทอยในขอบเขตปญหา (Problem domain object)รายการออบเจคในขอบเขตปญหา– รายการของออบเจคทระบบตองเกบขอมล– จดเรมตนของโมเดลของระบบเอง (class diagram)– ไดมาจากคาอธบายยสเคส
![Page 36: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/36.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย36
ตวอยาง problem domain objects
total cans: int, total bottles: int, ...Receiptwidth: cm, height: cm, length: cmCratewidth: cm, height: cm, bottom: cmBottlewidth: cm, height: cmCan
name: string, total: integer, value:baht
Deposit item
ATTRIBUTEScharacteristic / information : type
OBJECT name
![Page 37: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/37.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย37
ระดบรายละเอยดของออบเจค
Object nounLogical attributesStatic associationsInheritanceDynamic associationsOperations
![Page 38: Unit05 Case - System Analysis UML](https://reader031.vdocuments.mx/reader031/viewer/2022020110/546a4d57b4af9f8e2c8b4647/html5/thumbnails/38.jpg)
OOAD 1/2550 ดร.สขสถต มสถตย38
สรป
การพฒนาระบบ โดยการสรางโมเดลUse case driven approachพนฐานการพฒนาระบบโดยใชการทาพฒนาซอฟตแวรเชงวตถ และ ยเอมแอลรายการออบเจคในขอบเขตปญหา นาไปสคลาสไดอะแกรม