intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng: Chương 4 - TS. Trương Quốc Định

Chia sẻ: Thanh Hoa | Ngày: | Loại File: PPT | Số trang:46

66
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Lập trình hướng đối tượng - Chương 4: Sơ đồ tương tác" cung cấp cho người đọc các kiến thức: Interaction Diagrams, a First Look at Sequence Diagrams, Synchronous Messages, Lost Message,... Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng: Chương 4 - TS. Trương Quốc Định

  1. Chương 4 : Sơ đồ tương tác GV : TS. Trương Quốc Định
  2. Interaction Diagrams  A series of diagrams describing the dynamic behavior of  an object­oriented system.  A set of messages exchanged among a set of objects within a  context to accomplish a purpose.  Often used to model the way a use case is realized through a  sequence of messages between objects. 2 Sequence Diagrams
  3. Interaction Diagrams (Cont.)  The purpose of Interaction diagrams is to:  Model interactions between objects  Assist in understanding how a system (a use case) actually  works  Verify that a use case description can be supported by the  existing classes  Identify responsibilities/operations and assign them to classes 3 Sequence Diagrams
  4. Interaction Diagrams (Cont.)  UML   Collaboration Diagrams  Emphasizes structural relations between objects  Sequence Diagram  The subject of this tutorial 4 Sequence Diagrams
  5. A First Look at Sequence Diagrams  Illustrates how objects interacts with each other.  Emphasizes time ordering of messages.  Can model simple sequential flow, branching, iteration,  recursion and concurrency. 5 Sequence Diagrams
  6. Object  Object naming:  syntax: [instanceName][:className] myBirthday  Name classes consistently with your class diagram  :Date (same classes).  Include instance names when objects are referred to  in messages or when several objects of the same  type exist in the diagram.  The Life­Line represents the object’s life  during the interaction  Lifelines are drawn as a box with a dashed line  descending from the center of the bottom edge.  The lifeline's name is placed inside the box. 6 Sequence Diagrams
  7. Messages  An interaction between two objects is performed as a  message sent from one object to another (simple  operation call, Signaling, …)   If object obj1 sends a message to another object obj2  some link must exist between those two objects 7 Sequence Diagrams
  8. Messages (Cont.)  A message is represented by an arrow between the life  lines of two objects.  Self calls are also allowed  The time required by the receiver object to process the  message is denoted by an activation­box.  A message is labeled at minimum with the message  name.  Arguments and control information (conditions, iteration)  may be included. 8 Sequence Diagrams
  9. Return Values  Optionally indicated using a dashed arrow with a label  indicating the return value.  Don’t model a return value when it is obvious what is being  returned, e.g. getTotal()  Prefer modeling return values as part of a method invocation,  e.g. ok = isValid()   Model a return value when you need to refer to it elsewhere,  e.g. as a parameter passed in another message. 9 Sequence Diagrams
  10. Synchronous Messages  Nested flow of control, typically implemented as an  operation call.  The routine that handles the message is completed before the  caller resumes execution. :A :B doYouUnderstand() return Caller yes (optional Blocked ) 10 Sequence Diagrams
  11. Asynchronous Messages  If a caller sends an asynchronous message, it can continue  processing and doesn’t have to wait for a response.  We can see asynchronous calls in multithreaded  applications and in message­oriented middleware.  Asynchrony gives better responsiveness and reduces the  temporal coupling but is harder to debug.  11 Sequence Diagrams
  12. Object Destruction  An object may destroy another object via a   message.  An object may destroy itself.  Avoid modeling object destruction unless memory  management is critical. :A :B 12 Sequence Diagrams
  13. Found Message  A found message is a message where the receiving event  occurrence is known, but there is no (known) sending  event occurrence.   We interpret this to be because the origin of the message  is outside the scope of the description. This may for  example be noise or other activity that we do not want to  describe in detail.
  14. Lost Message  A lost message is a message where the sending event  occurrence is known, but there is no receiving event  occurrence.   We interpret this to be because the message never reached  its destination.
  15. Self Message  A message defines a particular communication between  Lifelines of an Interaction.  Self message is a kind of message that represents the  invocation of message of the same lifeline.
  16. Recursive Message  A message defines a particular communication between  Lifelines of an Interaction.  Recursive message is a kind of message that represents the  invocation of message of the same lifeline. It's target  points to an activation on top of the activation where the  message was invoked from.
  17. Object state and Constraint  Sequence diagrams can show how an object changes state  overtime.   We do this by placing the object state on the lifeline at the  appropriate point. This allows we to see very clearly  which events give rise to state changes.
  18. Object state and Constraint (cont.)
  19. Object state and Constraint (cont.)  The message acceptPayment(…) causes a state transition  on the :Order object from state unpaid to paid.   The message deliver( ) sent from the :DeliveryManager  object to the :Order object causes a state transition in  :Order from state paid to delivered.  The timing constraint says that there must be 28 days or  less between time A and time B. Time A marks the point  at which the :Order object undergoes transition into the  state paid, and time B marks the point at which the :Order  object undergoes transition into the state delivered.
  20. Combined Fragment  Combined fragment is an interaction fragment which  defines a combination (expression) of interaction  fragments. A combined fragment is defined by an  interaction operator and corresponding interaction  operands. Through the use of combined fragments the  user will be able to describe a number of traces in a  compact and concise manner.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2