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

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
J2EE Architecture for Web Application & Enterprise Programming
Advertisements

E-COMMERCE WEBSITE Smartzap Co., Ltd.. Company Profile บริษัท สมาร์ทแซป จำกัด ก่อตั้งเมื่อปี 2543 (13 ปี ) ในช่วงยุค Internet เพิ่ง เริ่มต้น เป็นบริษัทที่ดำเนินงานทางด้าน.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
คำสั่ง DISPLAY รูปแบบที่ 1 DISPLAY identifier-1, identifier-2 … literal-1 literal-2 [ UPON mnemonic-name ]  ตัวอย่าง DISPLAY STUDENT-NAME. DISPLAY.
จำนวน สถานะ NUMBER OF STATES. ประเด็นที่ สนใจ The number of distinct states the finite state machine needs in order to recognize a language is related.
INTELLECTUAL CAPITAL : IC Group 3: Tipada Subhasean Nongluk Charoeschai Nerisa Wangkarat
Educational Objectives
Chapter 9 : Designing Approach
Graphical User Interface charturong.ee.engr.tu.ac.th/CN208
รู้จักกับเทคโนโลยี RFID เบื้องต้น
Database Management System
Marketing to Business.
VARIABLES, EXPRESSION and STATEMENTS. Values and Data Types Value เป็นสิ่งพื้นฐาน มีลักษณะเป็น ตัวอักษร หรือ ตัวเลข อาทิ 2+2 หรือ “Hello world” Value.
อาจารย์ มธ. อธิบายการใช้ โมเดลของ
Data Structures and Algorithms
ระบบการจัดเก็บในคลังสินค้า
ออโตมาตาจำกัด FINITE AUTOMATA
REGULAR EXPRESSION การบรรยายแบบสม่ำเสมอ
โปรแกรมการส่ง Tele-pathology ไปยังคอมพิวเตอร์ ส่วนบุคคลของแพทย์ผ่านทางเครือข่ายโรงพยาบาล (The Tele-pathology delivered to physician’s personal computer.
BUSINESS SYSTEM ANALYST Course Description. Role of a Business Analyst  A "Business Analyst" (BA). In some companies, the BA plays a technical role with.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Application Layer PART VI.
Inductive, Deductive Reasoning ผศ.( พิเศษ ) น. พ. นภดล สุชาติ พ. บ. M.P.H.
Course Software Engineering SE Overview and Introduction.
Computer Graphics.
INC 637 Artificial Intelligence Lecture 13 Reinforcement Learning (RL) (continue)
INC341 Steady State Error Lecture 6.
Stored Procedure.
การออกแบบและพัฒนาซอฟต์แวร์ บทที่ 7 การทดสอบโปรแกรม
CSE323 การวิเคราะห์และออกแบบระบบ (Systems Analysis and Design)
SPU Information Science Institute of Sripatum University Sripatum University CIS511 Information System Architecture สถาปัตยกรรมระบบสารสนเทศ Asst.Prof.Dr.Surasak.
Create the Knowledge Management Blueprint
บทที่ 2 งบการเงินพื้นฐาน BASIC FINANCIAL STATEMENTS 2.
Research Problem Research Question Research Hypothesis
Dynamic Link Library (DLL)
Page: 1 โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้ Gate & Karnaugh Map มหาวิทยาลัยเนชั่น จังหวัดลำปาง
Data Data are Raw material Data are values of qualitative or quantitative variables, belonging to a set of items. Sample 23, 36, 60 male, female like,
Chapter Four Making Connections. Objective สามารถระบุองค์ประกอบทั้ง 4 ของมาตรฐานการ เชื่อมต่อ สามารถอธิบายโอเปอร์เรชั่นพื้นฐานของ EIA- 232F และมาตรฐานการเชื่อมต่อแบบ.
Menu and Interactive with Powerpoint ให้นำเรื่อง Input /Output Technology มา จัดทำ การนำเสนอ โดยใช้หลักการ Menu and Interactive with powerpoint มาประยุกต์
Enhanced Entity-Relationship Model © Pearson Education Limited 1995, 2005.
Algorithm Efficiency There are often many approaches (algorithms) to solve a problem. How do we choose between them? At the heart of computer program.
Writing a research. Why Research?  To find whether the messages and the materials are appropriate to the target group  To modify the messages and the.
iWaLL โดย 1. นายวีกิจ สัจจะมโนรมย์
Java Programming Language สาขาวิชาระบบสารสนเทศ คณะบริหารธุรกิจ มหาวิทยาลัยเทคโนโลยีราชมงคลกรุงเทพ.
Thread Thread ส่วนของ process ที่ให้ CPU ประมวลผล.
STACK ADT By Pantharee S.. Stack Model  A list with the restriction that insertions deletions can be performed in only one position (LIFO)  Push – insert.
MIS: Pichai Takkabutr EAU DESIGN:- META DATA describe by Data Directory/ Data dictionary Architecture PWHW/SW DW/DB TABLE / FILE ROW / RECORD COLUMN.
1-1: Software Project Management การจัดการโครงงานซอฟต์แวร์ Software Project Management การจัดการโครงงานซอฟต์แวร์ ความหมายการจัดการโครงงาน.
วิธีการทำงานของ ตัวประมวลผลสารสนเทศมีการ ศึกษาวิเคราะห์ และออกแบบโครง สร้างหน้าที่ด้วยสถาปัตยกรรมองค์ประกอบ 6 ส่วน ในตัวประมวลผลสารสนเทศ ได้แก่……………..
วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec09 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last.
วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec10 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams State Diagrams Activity Diagram Last.
วิชาวิเคราะห์และออกแบบระบบเชิงวัตถุ Lec08 :: Behavioral Modeling with UML Behavioral Diagrams Interaction Diagrams Nattapong Songneam
ผัก. หน่อไม้ ฝรั่ง กะหล่ำ ปลี แค รอท กะหล่ำ ดอก.
การสร้าง WebPage ด้วย Java Script Wachirawut Thamviset.
ทุนทางปัญญา Intellectual Capital KM743 Session 3.1
เอกสารเรียนวันที่ 7 กันยายน 2555
Chapter 3 Simple Supervised learning
Chapter 1/1 Arrays. Introduction Data structures are classified as either linear or nonlinear Linear structures: elements form a sequence or a linear.
21 August ดรุณี ศมาวรรตกุล 1 2. ADT List - Unsorted list ADT - list implementation - Sorted List - Circular list - Doubly linked list.
Double loop learning Jirawit Yanchinda.
Object Oriented Technology
Object-Oriented Programming with Java Burapha University, 2001 Java Array and String Week #3 Jarungjit Parnjai.
An Online Computer Assisted Instruction Development of Electronics Devices Subject for Learning Effectiveness Testing By Assoc.Prof. Suwanna Sombunsukho.
 Mr.Nitirat Tanthavech.  HTML forms are used to pass data to a server.  A form can contain input elements like text fields, checkboxes, radio-buttons,
Modeling and Activity Diagram
การวิเคราะห์ซอฟต์แวร์
Class Diagram.
Object-Oriented Analysis and Design
Kapi’olani Community College
Elements of a Short Story
Description of Training
ใบสำเนางานนำเสนอ:

Burapha University, 2003 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 Sequence Diagram Collaboration Diagram

Burapha University, 2003 Object-Oriented Analysis and Design UML has 9 kinds of diagrams  Class Diagram  Object Diagram  Component Diagram  Deployment Diagram  Use Case Diagram  Sequence Diagram  Collaboration Diagram  StateTransition Diagram  Activity Diagram Structural Diagrams Behavioral Diagrams Functional Diagrams

Burapha University, 2003 Object-Oriented Analysis and Design UML(Unified Modeling Language) 5 มุมมองหลักของ UML Use-case view : หน้าที่การทำงาน ของระบบซอฟต์แวร์ โดยพิจารณา จากมุมมองของผู้ใช้ภายนอก หรือ ระบบภายนอก use-case diagram Logical view : หน้าที่การทำงานของ ระบบมีโครงสร้างอย่างไร มองในรูป ของ static structure และ dynamic behavior class diagram, object diagram, state, sequence, collaboration, activity diagrams

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

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

Burapha University, 2003 Object-Oriented Analysis and Design Behavioral Diagrams Behavioral Diagrams เป็นโครงสร้าง แบบ dynamic 4 diagrams ได้แก่ Sequence Diagram Collaboration Diagram State-transition Diagram Activity Diagram 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 use case อธิบายการติดต่อสื่อสารระหว่าง วัตถุ 2 รูปแบบ Time-based (Sequence Diagram) Organization-based (Collaboration Diagram)

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

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

Burapha University, 2003 Object-Oriented Analysis and Design A Sequence Diagram : Student registration form registration manager 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) math 101 section 1

Burapha University, 2003 Object-Oriented Analysis and Design A Collaboration Diagram : Registrar course form : CourseForm theManager : CurriculumManager aCourse : Course 1: set course info 2: process 3: add course 4: new course

Burapha University, 2003 Object-Oriented Analysis and Design Interactions : Core Elements name attr values 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. CreateAction, CallAction, DestroyAction, and UninterpretedAction. ConstructDescription Syntax textual

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

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

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

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

Burapha University, 2003 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 ไม่ระบุรายละเอียดของวิธีการ ติดต่อสื่อสารระหว่างวัตถุ Synchronous เรียกใช้ Operation ของวัตถุ โดย Sender/Caller รอจน สิ้นสุด Operation Receiver จัดเป็น passive object Asynchronous ไม่มีการ return กลับไปยัง Sender/Caller Sender ทำงานต่อทันที่ที่ส่ง message Receiver จัดเป็น active object

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

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

Burapha University, 2003 Object-Oriented Analysis and Design Example: Different Arrows callerexchangecallee Flat Flow lift receiver dial tone dial digit ringing tone ringing signal lift receiver telle r : Order : Article Nested Flow getValue price getName applerr handlalarm Asynchronous Flow unknown alarm

Burapha University, 2003 Object-Oriented Analysis and Design Example: Sequence diagram Object creation course form : CourseForm theManager : CurriculumManager aCourse : Course : Registrar SetCourseInfo process AddCourse(aCourse) >

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

Burapha University, 2003 Object-Oriented Analysis and Design VPGallery/diagrams/Sequence.html

Burapha University, 2003 Object-Oriented Analysis and Design Interaction & Collaboration Diagrams xyz Sequence Diagram a b c Collaboration Diagram xy z 1.1: a 1.2: c 1.1.1: b

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

Burapha University, 2003 Object-Oriented Analysis and Design Content of Collabaration diagrams วัตถุ (Objects) แลกเปลี่ยน messages ให้แก่กัน และกัน Messages Synchronous : “ call events, ” แทนด้วย full arrow Asynchronous: “ signals, ” แทน ด้วย half arrow « create » และ « destroy » messages มีการระบุหมายเลข Message ตามลำดับที่เกิดก่อน - หลัง และการ อาจมี Loop ของ Message

Burapha University, 2003 Object-Oriented Analysis and Design Collaboration diagrams หมายเลขกำกับ แสดงลำดับของ messages ระบุโดย 1, 2, 3, 4, ….. 1, 1.1, 1.2, 1.3, 2, 2.1, 2.1.1, 2.2, 3 ( แสดง operation calls ที่เป็น ส่วนย่อยของ operation อื่นๆ )

Burapha University, 2003 Object-Oriented Analysis and Design Collaboration diagram basics : ProfessorCourseManager Math Section 1 : CourseOffering 1 : Add professor (Professor)

Burapha University, 2003 Object-Oriented Analysis and Design Example : Collaboration diagram : Registrar course form : CourseForm theManager : CurriculumManager aCourse : Course 4 : > 3 : add course 1 : set course info 2 : process

Burapha University, 2003 Object-Oriented Analysis and Design Example : Collaboration diagram : Customer myComputer/PrintClient : Computer ThePrintServer : Print Server aPrinter : Printer [printer free] 2.1 : Print(ps-file) 2 : Print(ps-file) 1 : Print(ps-file) aQueue : Queue [printer busy] 2.1 : Print(ps-file)

Burapha University, 2003 Object-Oriented Analysis and Design Comparing sequence & collaboration diagrams collaboration diagrams อาจแสดง static connections ของวัตถุ เหมาะ สำหรับการแสดงการไหลของการควบคุม การทำงาน Sequence diagrams เหมาะสำหรับการ แสดง กระแสการไหลของเหตุการณ์ที่ เกิดขึ้นตามลำดับเวลา อาจเข้าใจได้ยากกว่าใน collaboration diagrams ปฏิสัมพันธ์ที่ซับซ้อน ยากแก่การทำ ความเข้าใจ ไม่ว่าจะใช้ diagram แบบใด

Burapha University, 2003 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 InteractionModeling Tips Interaction Modeling Tips ใช้เฉพาะส่วนของวัตถุ Include only those features of the instances that are relevant. แสดง flow จากซ้ายไปขวา และจากบน ลงล่าง ใช้ sequence diagrams เพื่อแสดงลำดับระหว่างสิ่งที่มา กระตุ้นให้เกิดปฏิสัมพันธ์ ระหว่างวัตถุ มักใช้ใน real-time modeling ใช้ collaboration diagrams เมื่อโครงสร้างของระบบ มี ความสำคัญ

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