Скачать презентацию Object-Oriented Analysis and Design Behavioral Modeling with UML Скачать презентацию Object-Oriented Analysis and Design Behavioral Modeling with UML

748057b002eef311a7cabfc95b7e1f83.ppt

  • Количество слайдов: 37

Object-Oriented Analysis and Design Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams Seree Chinodom Object-Oriented Analysis and Design Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams Seree Chinodom Burapha University, 2003

Object-Oriented Analysis and Design Lecture Outline • UML Behavioral Diagrams • Interaction Diagrams • Object-Oriented Analysis and Design Lecture Outline • UML Behavioral Diagrams • Interaction Diagrams • Sequence Diagram • Collaboration Diagram Burapha University, 2003

Object-Oriented Analysis and Design UML has 9 kinds of diagrams Class Diagram Object Diagram Object-Oriented Analysis and Design UML has 9 kinds of diagrams Class Diagram Object Diagram Structural Component Diagrams Deployment Diagram Use Case Diagram Functional Diagrams Sequence Diagram Collaboration Diagram Behavioral Diagrams State. Transition Diagram Activity Diagram Burapha University, 2003

Object-Oriented Analysis and Design UML(Unified Modeling Language) • 5 มมมองหลกของ UML • Use-case view Object-Oriented Analysis and Design UML(Unified Modeling Language) • 5 มมมองหลกของ UML • Use-case view : หนาทการทำงานของระบบซอฟตแ วร โดยพจารณาจากมมมองของผใชภ ายนอก หรอ ระบบภายนอก • use-case diagram • Logical view : หนาทการทำงานของระบบมโครงสร างอยางไร มองในรปของ static Burapha University, 2003

UML(Unified Modeling Language) • Component view : องคประกอบยอยในการ Object-Oriented Analysis and Design implement ทประกอบเปนระบบ UML(Unified Modeling Language) • Component view : องคประกอบยอยในการ Object-Oriented Analysis and Design implement ทประกอบเปนระบบ และ dependency ระหวาง องคประกอบเหลานน • component diagram • Concurrency view: การแบงแยก process และ processors โดยพจารณาทง communication และ synchronization • dynamic diagrams (state, sequence, collaboration activity) • implementation diagrams(component และ deployment) Burapha University, 2003

Object-Oriented Analysis and Design Static & Dynamic views • ระบบใดๆ มกประกอบดวยโครงสราง แบบ ไดแก • Object-Oriented Analysis and Design Static & Dynamic views • ระบบใดๆ มกประกอบดวยโครงสราง แบบ ไดแก • static และ dynamic • โครงสรางของ Use Case และ Class Diagram เปนแบบ static • แสดงองคประกอบของระบบ คลาส แอททรบวต เมทธอดและ ความสมพนธระหวางคลาส • ไมระบขนตอนการดำเนนงาน ลำดบการทำงานกอนหลง 2 Burapha University, 2003

Object-Oriented Analysis and Design Behavioral Diagrams • Behavioral Diagrams เปนโครงสรางแบบ dynamic • 4 diagrams Object-Oriented Analysis and Design Behavioral Diagrams • Behavioral Diagrams เปนโครงสรางแบบ dynamic • 4 diagrams ไดแก Interaction Diagrams • Sequence Diagram • Collaboration Diagram • State-transition Diagram • Activity Diagram Burapha University, 2003

Object-Oriented Analysis and Design Interaction Diagrams Burapha University, 2003 Object-Oriented Analysis and Design Interaction Diagrams Burapha University, 2003

Object-Oriented Analysis and Design Interaction diagrams • แสดงการปฏสมพนธระหวาง กลมของวตถ • มกใชอธบายสถานการณของ use case 1 Object-Oriented Analysis and Design Interaction diagrams • แสดงการปฏสมพนธระหวาง กลมของวตถ • มกใชอธบายสถานการณของ use case 1 use case • อธบายการตดตอสอสารระหว างวตถ • 2 รปแบบ • Time-based (Sequence Burapha University, 2003

Sequence & Collaboration Diagrams Object-Oriented Analysis and Design • ทง 2 diagrams แสดง message Sequence & Collaboration Diagrams Object-Oriented Analysis and Design • ทง 2 diagrams แสดง message ทถกสงผานระหวางวตถท ทำงานรวมกน เพอประกอบเปนหนาทการทำ งานของระบบ • Sequence diagrams เนน message ทเกดขนตามลำดบของเวลา • Collaboration diagrams เนน การเชอมตอทางดานโครงสร Burapha University, 2003

Sequence & Collaboration Diagrams Object-Oriented Analysis and Design • ทง 2 diagrams สามารถใชในการจำลองการปฏสม พนธระหวางวตถ Sequence & Collaboration Diagrams Object-Oriented Analysis and Design • ทง 2 diagrams สามารถใชในการจำลองการปฏสม พนธระหวางวตถ กบระบบ ทงหมด • หรอ อาจใชในการจำลองปฏสมพนธ ทเกยวของใน Use Case ใด Use Case หนงโดยเฉพาะ Burapha University, 2003

Object-Oriented Analysis and Design A Sequence Diagram : Student registration form registration manager math Object-Oriented Analysis and Design A Sequence Diagram : Student registration form registration manager math 101 section 1 math 101 1: fill in info 2: submit 3: add course(joe, math 01) 4: are you open? 5: are you open? 6: add (joe) 7: add (joe) Burapha University, 2003

Object-Oriented Analysis and Design A Collaboration Diagram 1: set course info 2: process course Object-Oriented Analysis and Design A Collaboration Diagram 1: set course info 2: process course form : Course. Form 3: add course : Registrar the. Manager : Curriculum. Manager a. Course : Course 4: new course Burapha University, 2003

Interactions : Core Elements Object-Oriented Analysis and Design Construct Description Instance (object, data value, Interactions : Core Elements Object-Oriented Analysis and Design Construct Description Instance (object, data value, componen t instance etc. ) An entity with a unique identity and to which a set of operations can be applied (signals be sent) and which has a state that stores the effects of the operations (the signals). Action A specification of an executable statement. A few different kinds of actions are predefined, e. g. Create. Action, Call. Action, Destroy. Action, and Uninterpreted. Action. Syntax name attr values textual Burapha University, 2003

Object-Oriented Analysis and Design Interaction : Core Elements (cont’d) Construct Description Syntax Stimulus A Object-Oriented Analysis and Design Interaction : Core Elements (cont’d) Construct Description Syntax Stimulus A communication between two instances. Operation A declaration of a service that can be requested from an instance to effect behavior. textual Signal A specification of an asynchronous stimulus communicated between instances. «Signal» Name parameters Burapha University, 2003

Interaction: Core Relationships Object-Oriented Analysis and Design Construct Description Link A connection between instances. Interaction: Core Relationships Object-Oriented Analysis and Design Construct Description Link A connection between instances. Attribute Link A named slot in an instance, which holds the value of an attribute. Return Syntax A return from method call textual Burapha University, 2003

Object-Oriented Analysis and Design Sequence diagrams • แสดงการปฏสมพนธระหวางวต ถตามลำดบเวลา (time sequence) • ประกอบดวย • Object-Oriented Analysis and Design Sequence diagrams • แสดงการปฏสมพนธระหวางวต ถตามลำดบเวลา (time sequence) • ประกอบดวย • actor หรอ object ทมปฏสมพนธกบวตถอ นๆ • เสนชวต (lifeline) • Message ทสงผานระหวาง Object หรอ actor Burapha University, 2003

Content of sequence diagrams Object-Oriented Analysis and Design • Actor หรอ วตถ (Objects) • Content of sequence diagrams Object-Oriented Analysis and Design • Actor หรอ วตถ (Objects) • แลกเปลยน messages ให แกกนและกน • เสนชวต (Lifeline) • แสดงวาวตถถกสรางขน และยงไมถกทำลาย • Messages • Synchronous : “call events, ” แทนดวย full arrow • Asynchronous: “signals, ” แทนดวย half arrow Burapha University, 2003

Object-Oriented Analysis and Design Messages • message ทสงผานระหวาง objects สนบสนนการปฏสมพนธระหว างวตถ • เปนวธการท object Object-Oriented Analysis and Design Messages • message ทสงผานระหวาง objects สนบสนนการปฏสมพนธระหว างวตถ • เปนวธการท object ใชในการขอรบบรการจากวตถ อนๆ • object ใดๆ ตดตอสอสารกบ object อนๆ ผานทาง operation Burapha University, 2003

Object-Oriented Analysis and Design Message Types • Simple • Sender / Receiver • ไมระบรายละเอยดของวธการต Object-Oriented Analysis and Design Message Types • Simple • Sender / Receiver • ไมระบรายละเอยดของวธการต ดตอสอสารระหวางวตถ • Synchronous • เรยกใช Operation ของวตถ โดย Sender/Caller รอจน สนสด Operation • Receiver จดเปน passive object • Asynchronous • ไมมการ return กลบไปยง Sender/Caller Burapha University, 2003

Object-Oriented Analysis and Design Message Notation Simple Synchronous Asynchronous (Message return) Burapha University, 2003 Object-Oriented Analysis and Design Message Notation Simple Synchronous Asynchronous (Message return) Burapha University, 2003

Notation : Sequence Diagram Object-Oriented Analysis and Design object symbol name : Class lifeline Notation : Sequence Diagram Object-Oriented Analysis and Design object symbol name : Class lifeline activation other stimulus name (…) new (…) message : Class delete create return Burapha University, 2003

Object-Oriented Analysis and Design Example: Different Arrows Flat Flow Nested Flow teller : Order Object-Oriented Analysis and Design Example: Different Arrows Flat Flow Nested Flow teller : Order : Article get. Value caller exchange Asynchronous Flow callee lift receiver err handl alarm unknown alarm dial tone price appl dial digit get. Name ringing tone ringing signal lift receiver Burapha University, 2003

Example: Sequence diagram Object-Oriented Analysis and Design : Registrar course form : Course. Form Example: Sequence diagram Object-Oriented Analysis and Design : Registrar course form : Course. Form the. Manager : Curriculum. Manager Set. Course. Info Object creation process Add. Course(a. Course) <> a. Course : Course Burapha University, 2003

Example: Sequence diagram Actor Object-Oriented Analysis and Design : Customer : Computer : Printer Example: Sequence diagram Actor Object-Oriented Analysis and Design : Customer : Computer : Printer Server : Printer : Queue Print(file) Message [Printer free] Print(file) [Printer busy] Print(file) Lifeline Burapha University, 2003

Object-Oriented Analysis and Design http: //www. visual-paradigm. com/ VPGallery/diagrams/Sequence. html Burapha University, 2003 Object-Oriented Analysis and Design http: //www. visual-paradigm. com/ VPGallery/diagrams/Sequence. html Burapha University, 2003

Interaction & Collaboration Diagrams Object-Oriented Analysis and Design Sequence Diagram x y Collaboration Diagram Interaction & Collaboration Diagrams Object-Oriented Analysis and Design Sequence Diagram x y Collaboration Diagram 1. 1: a 1. 2: c z x a y b c 1. 1. 1: b z Burapha University, 2003

Object-Oriented Analysis and Design What is a collaboration? • Collaboration • กำหนดบทบาท (role) ของกลมของวตถทกระทำต Object-Oriented Analysis and Design What is a collaboration? • Collaboration • กำหนดบทบาท (role) ของกลมของวตถทกระทำต องานใดงานหนง เชนเดยวกบ operation หรอ use case • Interaction • ปฏสมพนธทระบรปแบบก ารสอสาร (communication pattern) Burapha University, 2003

Content of Collabaration diagrams • วตถ (Objects) Object-Oriented Analysis and Design • แลกเปลยน messages Content of Collabaration diagrams • วตถ (Objects) Object-Oriented Analysis and Design • แลกเปลยน messages ให แกกนและกน • Messages • Synchronous : “call events, ” แทนดวย full arrow • Asynchronous: “signals, ” แทนดวย half arrow • «create» และ «destroy» messages Burapha University, 2003

Object-Oriented Analysis and Design Collaboration diagrams • หมายเลขกำกบ แสดงลำดบของ messages ระบโดย • 1, 2, Object-Oriented Analysis and Design Collaboration diagrams • หมายเลขกำกบ แสดงลำดบของ messages ระบโดย • 1, 2, 3, 4, …. . • 1, 1. 2, 1. 3, 2, 2. 1. 1, 2. 2, 3 (แสดง operation calls ทเปนสวนยอยของ operation อนๆ ) Burapha University, 2003

Object-Oriented Analysis and Design Collaboration diagram basics : Professor. Course. Manager 1 : Add Object-Oriented Analysis and Design Collaboration diagram basics : Professor. Course. Manager 1 : Add professor (Professor) Math 101 - Section 1 : Course. Offering Burapha University, 2003

Example : Collaboration diagram Object-Oriented Analysis and Design 1 : set course info 2 Example : Collaboration diagram Object-Oriented Analysis and Design 1 : set course info 2 : process : Registrar course form : Course. Form 3 : add course the. Manager : Curriculum. Manager a. Course : Course 4 : <> Burapha University, 2003

Example : Collaboration diagram Object-Oriented Analysis and Design 1 : Print(ps-file) my. Computer/Print. Client Example : Collaboration diagram Object-Oriented Analysis and Design 1 : Print(ps-file) my. Computer/Print. Client : Computer : Customer 2 : Print(ps-file) a. Printer : Printer a. Queue : Queue [printer free] 2. 1 : Print(ps-file) The. Print. Server : Print Server [printer busy] 2. 1 : Print(ps-file) Burapha University, 2003

Comparing sequence & collaboration diagrams Object-Oriented Analysis and Design • collaboration diagrams อาจแสดง static Comparing sequence & collaboration diagrams Object-Oriented Analysis and Design • collaboration diagrams อาจแสดง static connections ของวตถ เหมาะสำหรบการแสดงการไหลของการคว บคมการทำงาน • Sequence diagrams เหมาะสำหรบการแสดง กระแสการไหลของเหตการณทเกดข นตามลำดบเวลา • อาจเขาใจไดยากกวาใน collaboration diagrams Burapha University, 2003

Object-Oriented Analysis and Design When to Model Interactions • To specify how the instances Object-Oriented Analysis and Design When to Model Interactions • To specify how the instances are to interact with each other. • To identify the interfaces of the classifiers. • To distribute the requirements. Burapha University, 2003

Object-Oriented Analysis and Design Interaction Modeling Tips • ใชเฉพาะสวนขอ งวตถ Include only those features Object-Oriented Analysis and Design Interaction Modeling Tips • ใชเฉพาะสวนขอ งวตถ Include only those features of the instances that are relevant. • แสดง flow จากซายไปขวา และจากบนลงลาง • ใช sequence diagrams • เพอแสดงลำดบระหวางสงท มากระตนใหเกดปฏสมพนธ ระหวางวตถ • มกใชใน real-time modeling Burapha University, 2003

Object-Oriented Analysis and Design Summary • UML Behavioral Diagrams • Interaction Diagrams • Sequence Object-Oriented Analysis and Design Summary • UML Behavioral Diagrams • Interaction Diagrams • Sequence Diagram • Collaboration Diagram Burapha University, 2003