时序图

    时序图(Sequence Diagram)是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其对象之间消息交互的顺序。时序图中包括的建模元素主要有:对象(Actor)、生命线(Lifeline)、控制焦点(Focus of control)、消息(Message)等等。

时序图的主要元素

  1. 生命线 (Lifeline):

    • 表示参与交互的对象或参与者,通常以一条垂直虚线表示,并在顶部标注对象的名称和类型。如果对象是匿名的或者其具体实例不重要,则可以只用类名来标识。
  2. 激活期 (Activation):

    • 生命线上的一段水平矩形,表示该对象在一个特定时间段内处于活跃状态,即正在执行某个操作或处理消息。
  3. 消息 (Message):

    • 消息是从一个对象发送到另一个对象的动作,用带箭头的线连接两个生命线,箭头指向接收消息的对象。消息可以是同步的(实心箭头),也可以是异步的(开口箭头)。此外,还可以有返回消息,用来表示方法调用的结果。
  4. 创建和销毁:

    • 可以显示对象的创建(通过构造函数调用)和销毁(如垃圾回收)时刻,这通常会出现在生命线的开始或结束位置。
  5. 自我消息 (Self Message):

    • 对象内部的方法调用,可以用箭头指向同一个生命线来表示。
  6. 条件分支 (Conditional Branches):

    • 使用框内的文字(如altopt)来表示选择性执行的消息序列。例如,alt用于表达互斥条件,而opt则表示可选操作。
  7. 循环 (Loop):

    • 当需要重复执行某些消息时,可以在框内标记出循环条件。
  8. 组合片段 (Combined Fragment):

    • 用于组织复杂的交互模式,比如并行执行、选择性执行等。组合片段包括但不限于par(并行)、loop(循环)、opt(选项)、alt(替代)。
  9. 注释 (Comment):

    • 为图表中的元素添加说明文字,帮助理解复杂的行为逻辑。

时序图的应用场景

  • 设计阶段:帮助开发团队理解系统内部的工作流程,特别是不同对象之间的通信机制。
  • 文档化现有系统:作为逆向工程的一部分,记录已有软件系统的交互细节。
  • 测试计划:基于时序图制定详细的测试案例,确保所有预期的行为都被验证。
  • 需求分析:与利益相关者沟通,确保对系统功能的理解一致。

时序图示例

 

posted @ 2024-12-29 22:27  平安喜乐×  阅读(187)  评论(0)    收藏  举报