รหัสวิชา 30204-2003 การวิเคราะห์ และออกแบบระบบ ผู้จัดทำ นางสาวปัทมาวดี ปรางทอง ปวส.1/2 ธุรกิจดิจิทัล เลขที่26
OVERV ▪ IEส่Wวนประกอบของ use case ▪ diagram Use caseSกcับeัnario ▪ ตัวัอย่า่งการเขียน use case ▪ diagram ข้อ้ควรรuะวsังeัในcกaาsรeเขdียiaนgram ▪ Use case description 2
โกดายรวใิชเ้คU้ รsาะeห์คc์วaาsมeต้Dอ้งiaกgารraขอmงระบบ ▪ มีีวัตัถุุประสงค์เ์พื่ออธิิบายเร่ื่องราวของ Problem Domainทั้งหมด ▪ บอกความสัมัพันัธ์ข์องส่วนต่่าง ๆ ในระบบ ▪ เป็็นการเร่ิ่มต้น้การวิเคราะห์ร์ะบบงานว่า่สามารถทา อะไรให้ก้ับัผู้ใ้ช้ไ้ด้บ้้า้ง ▪ ช่ว่ยให้ผู้้พ้ัฒันาระบบสามารถแยกแยะกิิจกรรมท่ี่อาจเกิิดข้ึ้ นในระบบ ▪ แcaต่่sลeะสถานการณ์ท่ี์ี่ระบบสามารถบริิการให้ผู้้ใ้ช้ส้า เร็็จลุุล่วงตามท่ี่ต้อ้งการได้Uเ้ รsีียeก ว่า่ ▪ แต่่ละ Use caseจะแสดงสถานการณ์(์Scenario)ท่ี่สามารถบรรยายได(้วA้่า่cผูtใ้oช้r)้ โต้ต้อบกับัระบบอย่า่งไร 3
Use Case Diagram ▪ Use Case ความสามารถ/หน้า้ท่ี ่ของระบบ ใน 1 Use Case Diagram มักัมีหลาย Use Case ▪ Acผูู้tกo้รrะทา /ผูู้ใ้ช้ง้าน Use Case น้ั้นๆ Actor ไม่จ่า เป็็นต้อ้งเป็็นคนเสมอไป อาจจะเป็็นส่ิ่งอ่ื่นหรืือระบบอ่ื่นๆ ก็็ได้ เ้ ช่น ระบบบัญัชีี ระบบโทรศัพัท์ เ์ ป็็นต้น้ 4
Use Case Diagram ▪ Relationshi ▪pเSส้นy้แsสteดmงความสัมัพันัธ์ร์ะหว่าU่งse Case กับั Actor ระบบท่ี่กา ลังัพัฒันา 5
Use Case Modeling : Core Elements Construct Description Syntax use case A sequence of actions, including UseCaseName variants, that a system (or other ActorName actor entity) can perform, interacting with actors of the system. system A coherent set of roles that users boundary of use cases play when interacting with these use cases. Represents the boundary between the physical system and the actors who interact with the physical system. 6
Use Case Modeling : Core Relationships Construct Description Syntax association The participation of an actor in a use case. i.e., instance of an actor and generalization instances of a use case communicate extend with each other. A taxonomic relationship between a more general use case and a more <<extend>> specific use case. A relationship from an extension use case to a base use case, specifying how the behavior for the extension use case can be inserted into the behavior defined for the base use case. 7
Use Case Modeling : Core Relationships Construct Description Syntax include An relationship from a base use case to an inclusion use case, specifying how the behavior for the inclusion use <<include>> case is inserted into the behavior defined for the base use case. 8
Use Cases V.S. Scenario ▪ Use Case (Class) หรือ หน้าท่ีี่การทา ความสามารถ แต่่ละ UstreanCsaactsioens ท่ีี่ระบบทา งานโต้ต้อบกับั ผูู้ใ้ช้ง้าน หรือระบบอ่ื่ นๆ งานของระบบ ▪ แทนชุุดของ Scภenายarนioอก(Object) สถานการณ์ ์หรือตัวัอย่า่งเร่ื่องราวการใช้ง้านระบบ Scenario จัดัเป็็นinstance ของuse case เช่น a user withdrawals $200 withdrawal cash 9
Use Cases V.S. Scenario S▪U▪▪UจcsseะeeแnCCสaaarดssiจoงeeุดถึึปจทUซง่ึัึ่้ะรงเsงอหะeอหสธติาุมCิุงบจกaดคาจาs์วยขระe่์าไทณอ่มุมDุ์่ีกงไสiจดaก่์ก้รวgิเาิร้งนกrรณิaทป่ีดเีีmีข่เรทีท่กุียีุะิ่เกดกนกิกอขดึ้เรนบพขืึณ้่ภอีนอีะาทไเ่ีไยดีล่ร่ร้่ใทาบะ้ตั้้เบ้งุารุ่ื้เ้่ไงหงอืว่อมงใแ้ นนรดลาไ ะUวขเกขตs่ี่ี่่อยeางงวCขๆ้aอ้sงขeกอักงน็ัได้ Pเปr็็oนbรleะบmบDไดo้อm้ยa่าi่nงไร 10
ตัวอย่าUงse Case ▪เห(MใผบผููชภัR้้้นญใใa้้ง้ทชชeั้าi้้าnงงบชจjี้้นัeีาามญMอcไนนัาดetห้ชสสก)ีจnี้แาึอากงuกมอลดวเ่Aใอาขะาบช้่รจัT้หกาตง้ถาสM้ัรม่าูืรนอนานจAเไาวะทม่หเถTนู่่งาูไาิกMกดนกั้เปบบงอบ้ัิัเลัจน่ตอขต่ั้อาัทการ่ร้ียีส่นจต่ใู้คชเืาว้อคืไ้นกน้ดงรื้เ่ทก่อคีี่ราง้ผรู่ืะร่้รอใบ้ัถุชบุง้ัองบ้ัAานตนัTรตหM้หอา้กางไกดมร้ีบะเังบุติุันปรใรนะ 11
ตัวอย่าSงcenario Scenario ท่ีี่ 1 ▪บันตัารยจึสงมถููชกาrยeสjeอcอดtอAบกัTตMมัราของ ธ.กรุุงเทพ สาขาหาดใหญ่ แต่่บัตั รเสีี 12
ตัวอย่าSงcenario Scenario ท่ีี่ 2 ▪ AขTอMง .ธ ทหารไทย สาขาบางเขน บัตั รสามารถ นางสมใจสอดบัตัร การได้แต่่เงินในบัญัชีีไม่พ่อจ่า่ยจึงไม่ส่ามารถน าเงินไปใช้ไ้ด้ 13
ตัวอย่าSงcenario Scenario ท่ีี่ 3 ▪AนTาMยส. มบัติัิสอดบัตัร ของ ธ ทหารไทย สาขาบางเขน บัตั รสามาร บใเชัค้ญกัร้ื่าชอีรีมงไีดเ้งAิแนTลจMะามีนเไงปิวนในชใ้นไ้2ดบ้5ัญ0ัชบีีเาพทียดงังพัน้ัอั้นเขนาาตย้อส้งมกบัาติรัิจถึงอสนาม1า0ร0ถบนาาทเงแินล 14
Actors ▪ A cสร่ิtิ่ะงoบใrดบหกแ็มตลาาะมยมีท่กถีีึ่ึมsางีoรคใmวช้างUe้มาsoตนe้nอC้eงaหกsรeาืืรอขใsนอoกงmารรeะiบnแtfบลohกrimnเปgaล่tทีี่่ีiยีo่มีนnีกกัาบัรรปะบฏิบสัหมรัือพัส่ินิ่งัใธด์ก็์ ตโตา้มต้ท่ีี่ออยบู่ภก่ัาบยันรอะกบบ ▪ ตัวัอย่า่งขAอcงtors Customer --maintain their account Cashier --verify withdrawal amount Customer Cashier 15
Actors ▪ Actors สามารถอธิิบายโดGยeใnชe้ r้ alization/Specialization Relationship Generalization Customer relationship ▪ ATM Customer Cashier Customer คอรณาลจาาพสิิมจีา Actors เป็็นคลาส UในML เน่ื่ องจากreมีีlationshipsเช่น่ เดีียวกับั ท่ีี่ 16
Actors ▪ Aเใหชืs้่อแs้มoกc่ต่กi่aัอtนกiััoบnแั ลu=ะsกโคeัดนวัยcา)มใaชs้สเั้eสม้ัsนพ้ัแนัสธ์ดท่ี์ีง่มีคีกวาารมติเิดกี่ตย่่วอขส่้ื่ออ้งสาปรฏกิัสนััมaั(sพทัsั้นoงัmcธก์ieaา(์ sรtisรoัaบnัg)eแsละส่ง ▪ Customer withdrawal cash ▪ ไลมะ่เจ่อีาียดเขป็็อนงต้อ้ขงอองธิิบาAยcรtาoยrAssociationเน่ื่ องจากไม่มี่ีIกmารplementส่วน ในระบบ 17
System ▪ Uวรอัะตsะับไeถรุบุcบป้ทa่ีารี้่sกงะeสางลัคuง์ัใs์พนeัฒ-scัyaนsstาee(mmobdoeulnindgaryคื)อว่าเ่พจื่ะอต้รอะ้บงุุปขอระบกเอขบตดข้อว้ยง ▪ ใช้ส้ัญัลักัษณ์เ์ป็็นรูปส่ีี่เหล่ีี่ยมทU่ีี่ลs้eอ้cมaรsอeบไว้ System 18
ความสัมพันัธ์ขUอseงCase ▪ Extend ทUเททUU่่่ีีีกีีี่่่ิsถมsิsูEดูeeeกาขxึCCC้EtนEaaeaxใsxssnนteeetedeกnหnรจdน่dณึาึ่ีงกีน้ถัเัไู้อดูนปีกีีกยจมรีะวบผUมกีกลัsผนวตัe่ลแ่นอทcตห่ก่aาเราืปsื็ใอร็หeนท้มกหีก้ากานร่ึาึงร่ณงรีดาีสนจทา่ีะีต่ะพดเเุินุาปิด็เิ็มศนนปUหษกsกรามืืeรอตUาิขิมCกขsีอaกeกอUsงาวงces่ราaอe่ีเีsหกปCeน่ลึ่aึี่ีท่่งยีsี่ eนกิิจกรรมไ 19
ตย.Use Case Diagraทm่ีี่มีExtend ▪ใทU่ีหี่้รsตั้บe้ัอโ้ทcงaรมีศsกัeพาัรทdร์ัiบaปัgสกrาตaยิิmเหรีียาท่ีกีก่แมซสี้สอด้านงยกก่เอราียรนรกับซั้โซ่อึทึ้่งนรทเศขาั้พา้ัมท์ใาหซ์้ึก่อง้าาขรจณรทับาะั สายโทรศัพัท์ต์ามปกติิต้อ้งชะงักัชั่ว่คราว 20
ขั้นตอนท่ีี่ 1 : Uหsาe CaseและActorของระบบ ▪Use case ของระบบคือ 21 กการารรับรัับสัาโทยรเรศีีัยพกัทซ์้อ้น ▪ ของระบบคืือ actor ผู้ร้ับัโทรศัพัท์
ขั้นตอนท่ีี่ :2เขีียนScenariขoองระบบ ▪sเcมืe่อnเaกิิrดioสาท่ยีี่เ1รีีย: กเกซิ้อด้นสusาทeยาcเใรaีหีs้ยe้ กกซา้อร้รนับัโทรศัพัท์เกิิดการชะงักังันัซ่ึึ่งผูู้ร้ับั อาจหยุุดการสนทนาชั่ว่ ขณะ ▪sหcรeืือnผaูู้rร้ัioบั เทป่ีี่ล่2ีี่ย:นไไมป่เร่ักบิัดสสาายยท่ีี่เเรรีีียยกกซซ้้ออ้้นนแทน 22
ขั้นตอนท่ีี่:3เขีียนUse Case Diagram รัับโทรศัพัท์ <<extend>> รัับสายเรี ยกซ้อ้น ผู้รั้ั บโทรศัพัท์ การรัับโทรศัพัท์ 23
ความสัมพันัธ์ขUอsงe Cas(eต่่อ) ▪▪ Include/Us งานเข้า้ไว้ก้ั บUั se ceทท่่ีีีีa่่เถUsปู็ก็seนeiตncัวacัหslueลัdกeัดs้ว้จยะเถสููกมรอวมการทา ▪ คล้า้ ยกับั การเรีียกใช้ง้ านโปรแกรมย่อ่ ยโดยโปรแกรมหลักั 24
ตย.Use Case Diagrท่aีี่มmีInclude/Use ▪use case diagram เพื่ออธิิบายการตรวจสอบ user ท่ีี่เข้า้ รมหาัใสนัผ่ร่าะนบรบวคมออมยูพ่ดิ่ว้ว้เยตขอโอดรง์ขย์รอะaบงcอบtงoน้ีี้คrค์ืืกอ์รผููต้่จ่้ัาดงักๆารตร้อะ้บงบมีการตรวจ 25
ขั้นตอนท่ีี่ 1 : Uหsาe CasแeละActoขr องระบบ ▪Use Case ของระบบคือ 26 กการาตรตรวรจวสจอสUบอsบรeหrัส(ั(VผC่a่าhlนiedcaktePUasssewr)ord) ▪ Actor ของ(รSะyบstบeคmืือAdministrator) ผู้จ้ั ดัการระบบ
ขั้นตอนท่ีี่ :2เขีียนScenariขoองระบบ ▪scenario ท่ีี่ 1 : user ทใป้น้าอuในsห้peก้vaิcจasalกsisdรweaรชotืม่eอrใdcuนhsท่eeีี่crถูkูกดpตาa้อเsน้sิงิwนตo่่rอdไปได้ การตรวจสpอaบssword ตรวจสอบได้ถู้กต้อ้ง 27
ขั้นตอนท่ีี่ :2เขีียนScenariขoองระบบ ▪scenario ท่ีี่ 2 : user ป้้ อนpassword ท่ีี่ไม่ถูู่กต้อ้ง ทา ใหu้s้ e case ชืห่อรcือheจcนk p3asคsรัw้งoจึrงdตถัuูดกัseเรrียคกนใน้ชัั้้อี้นีกอหอลกายจาคกรั้ง จนกว่า่ จะถููก กว่า่ จะครบ ระบบ 28
ขั้นตอนท่ีี่:3เขีียนUse Case Diagram Validate Users <<include>> Check Password System User Authorization Administrator 29
ความสัมพันัธ์ขUอsงe Cas(eต่่อ) Validate client ▪ Generalization Check Finger C hild Use case รับัถ่ายทอดคุุณสมบัตPิัิaมrาeจnาtก password scan Use Case C hild สามารถเปล่ีี่ยนแปลงพฤติิกรรมPทa่ีี่rรeับnัจtาก หรืือเพิ่มเติิมพฤติิกรรม Child อาจน าไปแทนท่ีี่ ใPนaท่rีี่eๆnt ปรากฏ 30
ตัวอย่าง การเขีUียsนe Case Diagram ▪ซจร่ึึ่างงยสเกกริ้ดาา้รงuจไs าดeก้ด้ผcั aลงัsขeน้ีอี้dงiaกgาrรaวmิเิคเรพืา่ะอหอ์คธ์ิวิบาามยตก้อา้งรกลงารทเะบ้ืเ้ บอีีงยตน้นข้อสงานมััการเรถียเขนี 31
ความต้อ้งการ ▪ ในแต่่ละภาคการศึึกษานัักศึึกษาจะมีการลงทะเบีียน ▪ กซ่ึึ่งารกลางรลทงะเทบีีะยเบนีียในนแเรตี่ีย่ลนะคจะรัเ้งสจร็็ะจมสี้ิก้นาไรด้เกก็็้็็ บต่ห่อลัเกมืั่ฐอาหนลแักลัะฐชาานรท่ีะี่ไคด่้ารล้ั งบัทมะเาบีคียรนบ ▪ ▪ และในขณะเดีียวกันัเงิินค่่าลงทะเบีียนเรีียนท่ีี่เรีียกเก็็ บได้ก็้็ ต้อ้งมีจา นวน ▪ เจ้า้ หน้า ท่ีี่ของสถาบันั การศึึกษาจะเป็็นจัดั เก็็ บหลักั ฐาน 32
ความต้อ้งการ... ▪ไสด้าร้ับหัทุรุันบัเนรัีัยกนศึฟึกรีษาบางคนท่ีี่ได้ร้ับัสิิทธิิพิเศษเช่น เป็็ นนัักกีฬาของสถาบันั จหะรืมอีสเิิปท็็นธิิผไูด้ท้้ร้ัาบัช่ยื่ อกเเสวีี้ยน้งค่ใาห้เสล่้่ถาเารีบียันนั ในบางภาคการศึึกษา 33
หา Use Casขeองระบบ ▪กuาsรeลcงaทsะeเบีขียอนงเรรียะบนบคืื อ การเก็บหลักัฐาน การชา ระค่าเล่่าเรีียน 34
หา Use Casอ่ืe่ นท่ีี่เกี่ยวข้อ้ง ▪หา use case อ่ื่ นท่ีี่เก่ีี่ยวข้อ้งคืือ กกมไหาดาีรล้เรังรเ้ิกัิชกบนั็ัฐากบไามา่หรนพระไลยมคัอ่่กกพชาั่ฐเเารวล้้า่อรน่้นา้ะมคเ่ค่ร่ าีาียเเล่ลน่่า่าเเรีรีียียนน 35
หา Actoขr องระบบ ▪Aเจ้cา้tหoนr้า้ทข่ีี่องระบบคืื อ นัักศึึกษา 36
เขียนUse Case Diagrกaาmรลงทะเบีียนเรีียนของนัักเรีีย มีเงินิไม่่พอชา ระ ค่่าเล่่าเรียน <<extend>> ได้รัับยกเว้้นค่่า เล่่าเรียน ลงทะเบียนเรีียน <<include>> ชา ระเงินิค่่า ลงทะเบียนเรีียน <<extend>> นัักศึกษา <<include>> เจ้าหน้้าที่ เก็บหลัักฐาน <<extend>> หลัักฐานไม่่พร้้อม 37
Use Case Diagrทaาmเมื่อไรและทา อย่างไร ▪ Requirements capture ใช้ใ้นการกา หRนeดquirementของระบบ ด้ว้ยUse Case สร้า้งแบบจา ลMอoงde(l) ของUser requirements ▪ Test Scenarios ▪ สร้า้งแบบจา ลMอoงde(l) ของสถานการณ์ก์ารทดสอteบsรtะsบcบen(arios)ด้ว้ยUse Case U sตเัeข้ีงยCช่ืน่ aอคsใUหาe้s:อ้ eธริCิบะaบาsุุยeส่ิสิ่ัง้นท่ีๆี่ต้อ้งการให้มี้ีในระบบ เพิ่มรายละเอีียดในภายหลังั 38
สรุุปการสร้Uา้งse Case Diagram ระบุุ actors ท่ีี่มีปฏิสัมัพันัธ์ก์ับัระบบ ▪ พิจารณาแนวทางของระบบ ในการปฏaิิcสัtมoัrพsันัธ์ก์ับั ▪ ▪ จเป็า็นแuนseกcพaฤseติิsกโรดรยมกขาอหงนระดบคบวใานมกสัามัรพปัaนฏcัิธtUส์oัรsม์rะัesพหัใวนห่ัา้ธ่ง์ก์ับั Case 39
ข้อ้ควรระวังัในการเUขีีsยeนCase Diagram ▪▪▪จโไใUมหดา้่sงคย้่่นeาวท่ียวีร่ไCนทใม่ีช่ีa่้สจUุุ่<้sาดe<sเเeiทปn่็ใ็่าชนcC้ทl่เีu้ีaป่จ็d็sนะeeเท>ค>ไารม่ื,่่ไ<อคด่<้งวeมรืxอเtกeสิ่ื่นnอdส2>า0>รกUแับลsัะผeู้iใn้Cชh้ ae้ดrัsiงetัaน้ััn้โนดcตeย้อ้ง นัับจาก Use 40 Case ท่ีี่ไม่ม่ีความสัมัพันัธ์
Use case Description กพ▪เ▪UUUเเนั่พพืา่ฒิsssีอ่รัมยeeeงเนcccงเขจีตaaaาิภยิาsssเมาขนกeee้พสRาร่้Dใวeราจeนqยวsuไมทล่cีดีi่้rขะเrดปieเี็pอ้อ็ีmียนีtิงย่iงoeร่Uดขnnะึ้ทบไs่tนีีม่eปSบ่ไp่cรดแ้eaาเ้Uกตcปs็่็่isฏeนยfiัecใมงDcนัaไาatมeตis่oมseร่nีcฐคDrใาาiiหนap้อสgขt้iธrมoอิaิบบnงmูาเรเUูยขปณ้็M็าก์้นไจาLป์ระเทพื่าองใหา้ทนี้ีมข ▪ 41
Use case Description ▪ ช่ื่ อของ Use Case ▪ ภาพรวมOขอveงrกviาeรw) ▪ ทา งาน (Primary Actor) ▪ Actor หลัSกัe(condary Actor) ▪ Actor รอSงt(arting Point) ▪ จุุดเร่ิิ่มต้น้ ( ▪ จุุดส้ิ้นสุุดUse (CEansed(Flow of Events) ▪ point) UseกCาaรsทeาเม่ื่ อมีีปััญหาเกิิดข้ึ้ น (Alternative flow of Events) ▪ งผกาาลนรขทขอาองงงกาานรขทอางงาUนsขeอCงase (Measurable Result) 42
Use Case : Create Order ▪ ภ าจุพดรปวรมะสขงอค์งห์กลักาUัรขsอทeงาOCavงseาerนvน้ีีi้e(เwพื่อ) ทา การลงข้อ้มูลูในใบสั่ง่ซ้ื้ อสิินค้า้จากลูกค้า้ ▪ Acหtoลัrกั ( Primary Actor) ▪ ตัวัแทนฝ่่ ายขายสิินค้า้ Acไtม่oม่rีรอง (Secondary Actor) ▪ ▪ จุุดUเsร่ิิe่มCตตa้ัASนsวั้cteน้aีtี้(oเrร่rtิิ่มinตg้น้Pเมoื่อint) ตัวัแทนฝ่่ ายขายสิินค้า้ขอให้ร้ะบบทา การลงข้อ้มูลูการสั่ง่ซ้ื้ อสิินค้ จุุดคส้าิ ้ นขสอุุเดEพื่nอ(dทาpoกiาnรtล)งข้อ้มูลการสั่ง่ซ้ื ้ อสิินค้า้เสร็จส้ิ ้ นสมบูรูณ์ห์รือไม่ก็ถููกยกเลิิก 43
Use Case : Create Order ▪ กาจDทไAขั้หร้าองca้นกทมหttูoeามล(Ur)Sเดงsกส่ปhีีาe่ายถรiนิ้pมrิวมา้VUาIขกาnAัรiอณsบatถัceeงก)tเท่roีลาีืตCf่ืตa้รrอ้อaสอc้เกั้sง่ลeงงืทื่e่กีอซกี้่ืจ้บากอ(าะรนFรททใเlจสหาปัาo็่อ็งใ้นw่กกหเซ้ื้้พตาาสือ้้่oร่รนอง้บบf(ทวัมัQ่นEนาาัอั่vททuึึวบกึึeัaกกนสาnัิnขิทรน่ใ้ีttีบอ่ลลisค้tูม้สงy)กัูาู่้งขล)ทค่่้ี้ีซอล้่ตืไา้้้้หอมงตอู้้นใไลองบป้กกง(ใไหSวาการรใม้hาน่สใรักiห็่pฐ็งใ้จ่หสAา้ซ้้ื่ะ้นสงิอถd้ิูมขนdก้Aออคr้ส้ecมบารู้tsส้ลสาo่ิ้sิงงนrห)มข้คึจ้รห้ือนืาะอ้ลตบโมัย้ดงถอาัึก้ยึจใงงนเาบทมลืกิฐืิริากอิานษ้ััันก้กัน(ทา 44
Use Case : Create Order ▪ FกlาoรwทาofงEาvนeUขnอstesง)Case เมื่อมีปััญหาเกิดAขึl้tนer(native ▪ ผ ถกรล้ะกาข้บไาอมบร่มงจท่ีสกะาิติน้างอรค้า้งทนา้แท่าที่ีีจ่ีต่้เ้งงหอ้้ใาUลงหืนื้sอกขeขาอรอCองงaยูก้sU่ัใ่eนนsันค(้eััM้นลัCeกง็ั็aสaติ้ิssนอe้uคง้rนาย้aี้ี้กbเlลeิิ ARcetosruทltร)าบพร้อ้ม จะมีใบสั่ง่ซ้ื้ อสิินค้า้ใหม่ ่1ใบข้ึ้ นมาในระบบ 45
Search
Read the Text Version
- 1 - 46
Pages: