1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng phân tích thiết kế phần mềm chương 6 trường đh ngoại ngữ tin học tp hcm

12 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 1 MB

Nội dung

2/28/2019 Content     Introduction Interactions and interaction partners Messages Combined fragments  Branches and loops  Concurrency and order  Filters and assertions  Further language elements  Further types of interaction diagrams Introduction Interaction Diagrams  Modeling inter-object behavior (mơ hình hóa hành vi objs)  Dùng để biểu diễn tương tác  Mơ hình hóa kịch chắn  Mô tả chuỗi giao tiếp mức độ chi tiết khác = interactions between objects  Interaction (tương tác)  Specifies how messages and data are exchanged between interaction partners  Interaction Diagrams show the following:  Interaction partners (đối tượng tương tác)  Giao tiếp hệ thống môi trường  Giao tiếp thành phần hệ thống để thể cách use case thực  Giao tiếp tiến trình thành tố thực giao thức  Giao tiếp cấp lớp (phép gọi hàm, hành vi tương đối tượng)  Human (lecturer, administrator, …)  Non-human (server, printer, executable software, …)  Examples of interactions      Conversation between persons Message exchange between humans and a software system Communication protocols Sequence of method calls in a program … 2/28/2019 Sequence Diagram Interaction Partners  Two-dimensional diagram  Interaction partners are depicted as lifelines  Head of the lifeline  Horizontal axis: involved interaction partners  Vertical axis: chronological order (thứ tự thời gian) of the interaction  Rectangle that contains the expression roleName:Class  Roles are a more general concept than objects  Object can take on different roles over its lifetime  Interaction = sequence of event specifications  Body of the lifeline  Vertical, usually dashed line  Represents the lifetime of the object associated with it Head of the lifeline Body of the Lifeline Exchanging Messages (1/2) Exchanging Messages (2/2) Order of messages:  Interaction: sequence of events  Message is defined via send event and receive event  Execution specification … on one lifeline  Continuous bar  Used to visualize when an interaction partner executes some behavior Send event … on different lifelines »Happens before« … on different lifelines which exchange messages Receive event Execution specification 2/28/2019 Messages (1/3) Messages (2/3)  Synchronous message (thông điệp đồng bộ)  Object creation (tạo obj)  Sender waits until it has received a response message before continuing  Syntax of message name: msg(par1,par2)  Dashed arrow  Arrowhead points to the head of the lifeline of the object to be created  Keyword new  msg: the name of the message  par: parameters separated by commas  Asynchronous message (thông điệp bất đồng bộ)  Sender continues without waiting for a response message  Syntax of message name: msg(par1,par2)  Object destruction (hủy obj)  Object is deleted  Large cross (×) at the end of the lifeline  Response message (thông điệp phản hồi)  May be omitted if content and location are obvious  Syntax: att=msg(par1,par2):val     att: the return value can optionally be assigned to a variable msg: the name of the message par: parameters separated by commas val: return value 10 Messages (3/3) Combined Fragments  Found message (thông điệp từ vô danh)  Model various control structures  12 predefined types of operators  Sender of a message is unknown or not relevant  Lost message (thông điệp bị mất) Combined Fragment  Receiver of a message is unknown or not relevant  Time-consuming message (thông điệp tốn thời gian)  "Message with duration"  Usually messages are assumed to be transmitted without any loss of time  Express that time elapses between the sending and the receipt of a message Operator Operand Operand 11 Operand 12 2/28/2019 alt Fragment Filters and assertions Concurrency and order Branches and loops Types of Combined Fragments Operator Purpose alt Alternative interaction (tương tác lựa chọn) opt Optional interaction (tương tác tùy chọn) loop Repeated interaction (tương tác lặp) break Exception interaction (tương tác ngoại lệ) seq Weak order (lệnh yếu) strict Strict order (lệnh mạnh) par Concurrent interaction (tương tác song song) critical Atomic interaction (tương tác đơn nguyên) ignore Irrelevant interaction (tương tác không phù hợp) consider Relevant interaction (tương tác phù hợp) assert Asserted interaction (tương tác chèn) neg Invalid interaction (tương tác không hợp lệ)  To model alternative sequences  Similar to switch statement in Java  Guards are used to select the one path to be executed  Guards  Modeled in square brackets  default: true  predefined: [else]  Multiple operands  Guards have to be disjoint to avoid indeterministic behavior 13 14 opt Fragment loop Fragment  To model an optional sequence  Actual execution at runtime is dependent on the guard  Exactly one operand  Similar to if statement without else branch  equivalent to alt fragment with two operands, one of which is empty  To express that a sequence is to be executed repeatedly  Exactly one operand  Keyword loop followed by the minimal/maximal number of iterations (min max) or (min,max)  default: (*) no upper limit  Guard  Evaluated as soon as the minimum number of iterations has taken place  Checked for each iteration within the (min,max) limits  If the guard evaluates to false, the execution of the loop is terminated Max Min Guard 15 loop is executed at least once, then as long as a

Ngày đăng: 31/07/2023, 11:03

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN