目录
一、UML 活动图概述
(一)定义与作用
UML 活动图(Activity Diagram)是统一建模语言(UML)中的一种行为图,用于描述系统的动态行为。它主要展示了系统中的一系列活动(Activity)以及这些活动之间的流转关系,能够直观地展现业务流程和操作流程,帮助我们理解系统的行为逻辑,便于进行系统分析、设计和文档化。
(二)基本构成元素
-
活动(Activity)
-
定义 :活动是系统中的一个操作或功能,它通常包含多个具体的操作步骤,是一个相对完整的业务流程或功能模块。例如,在电子图书馆管理系统中,“查找书籍” 是一个活动,它涵盖了用户输入关键词、系统检索书籍等操作步骤,其目的是帮助用户找到想要的书籍。
-
表示方法 :用一个圆角矩形表示,内部写上活动名称,名称应简洁明了,能够准确概括该活动的主要内容和目的,方便读者快速理解活动的大致功能。
-
-
动作状态(Action State)
-
定义 :动作状态是活动的具体执行步骤,是最小的不可再分的动作单位。它是系统中实际执行的某个操作,如 “输入关键词”“显示书籍详情” 等。每个动作状态代表一个单一的、具体的动作,在系统运行过程中,只有完成当前动作状态的操作后,才会流转到下一个动作状态。
-
表示方法 :用小矩形框表示,框内写上该动作的具体描述,描述应清晰、准确,避免产生歧义,以便于开发人员和其他相关人员能够明确理解该动作的具体含义和实现方式。
-
-
转换关系(Transition)
-
定义 :转换关系表示活动之间的流转方向和顺序,它是活动图中各个元素之间相互连接的纽带,用于指导系统在不同活动、动作状态、决策节点等之间的流转路径。当某个活动或动作状态完成时,系统会沿着转换关系指向的下一个元素继续执行相应的操作。
-
表示方法 :用带箭头的线表示,箭头的起点是当前元素,终点是下一个要执行的元素。箭头上可以标注触发条件或事件,这些条件或事件决定了系统是否沿着该转换关系进行流转。例如,“找到书籍”→“显示书籍详情”,这里的转换关系就表示在 “找到书籍” 这个动作完成后,系统会自动流向 “显示书籍详情” 这个动作状态。
-
-
决策节点(Decision Node)
-
定义 :决策节点用于根据不同的条件或判断结果,将活动流转分为多个分支路径。它代表了系统在执行到此处时,需要进行某种条件判断,根据判断结果的不同,选择不同的后续执行路径。例如,在借阅书籍的过程中,系统需要判断书籍是否可借阅,这就是一个决策节点,根据判断结果 “可借阅” 或 “不可借阅”,系统会分别进入不同的处理流程。
-
表示方法 :用菱形表示,内部写上判断条件或问题。菱形的每个出口分支都对应着一种可能的判断结果,分支上通常会标注相应的条件表达式或结果描述,以便清晰地展示不同分支的触发条件。
-
-
合并节点(Merge Node)
-
定义 :合并节点将多个分支路径合并为一个后续活动的流转路径。当系统中存在多个并行的分支流程时,这些分支流程在完成各自的操作后,可能需要汇合到一个共同的后续流程中继续执行。合并节点的作用就是将这些分支流程进行整合,使系统能够顺利地从多个分支路径过渡到后续的统一路径上。
-
表示方法 :用实心圆圈表示,它通常位于多个分支路径的交汇处,将各个分支路径的转换关系汇聚到该节点上,然后从合并节点引出一条转换关系流向后续的活动或动作状态。
-
-
开始节点(Initial Node)
-
定义 :开始节点表示活动的起点,它标志着系统某个流程或功能的开始。在整个活动图中,通常只有一个开始节点,用于明确整个流程的入口位置。系统从开始节点启动,沿着后续的转换关系逐步执行各个活动和动作状态。
-
表示方法 :用实心圆圈加一个外围圆圈表示,开始节点一般位于活动图的左上角或相对靠上的位置,以直观地展示流程的起始点。
-
-
结束节点(Final Node)
-
定义 :结束节点表示活动的终点,当系统执行到结束节点时,意味着该活动或流程已经完成,系统将停止执行当前流程中的操作。结束节点可以有多个,分别对应不同的结束情况或条件。例如,在用户登录过程中,成功登录和多次登录失败被锁定等情况都可以用结束节点来表示。
-
表示方法 :用实心圆圈加一个外围圆圈,内部有一个实心圆点表示,通常位于活动图的右下角或相对靠下的位置,以清晰地展示流程的结束位置。
-
二、电子图书馆管理系统活动图分析
(一)整体流程概述
整个电子图书馆管理系统的活动流程以用户登录为起点,登录成功后进入主界面,在主界面有多种功能可供选择,包括查找书籍、借阅书籍、归还书籍、查看个人信息等,用户完成相应操作后可以选择退出系统,系统返回到初始状态,等待下一次登录。
(二)各主要功能模块详细分析
-
用户登录
-
开始于 “用户登录” 节点,用户输入登录信息后,系统进行认证判断。若认证成功,则流入 “进入主界面” 活动;若认证失败,则显示登录失败信息,之后系统回到初始状态,用户可重新尝试登录。
-
这体现了活动图的分支结构,根据不同的条件(认证成功或失败)触发不同的后续活动。
-
-
查找书籍
-
在主界面选择 “查找书籍” 活动后,进入 “输入关键词” 动作状态,用户输入相关书籍的关键词,接着系统执行 “检索书籍” 操作。
-
然后通过 “找到书籍” 和 “未找到书籍” 两个决策分支来决定后续动作。若找到书籍,则显示书籍详情;若未找到,则显示无书籍信息并返回主界面。
-
-
借阅书籍
-
从 “借阅书籍” 开始,用户 “选择书籍” 后,系统 “检查借阅状态”。若可借阅,则办理借阅手续;若不可借阅,则显示不可借阅信息并返回主界面。
-
在办理借阅手续之后,会进一步检查借阅权限,若有权限则继续完成借阅流程,若无权限则显示无权限信息。
-
-
归还书籍
-
选择 “归还书籍” 后,进行 “扫描书籍” 操作,接着 “检查借阅记录”。若存在记录,则判断是否逾期。若逾期,则计算滞纳金并进入支付滞纳金流程;若未逾期,则直接办理归还手续。若不存在记录,则显示无记录信息并返回主界面。
-
-
查看个人信息
-
进入 “查看个人信息” 活动后,显示个人信息。然后根据用户是否选择修改信息,分为 “修改信息” 和 “不修改” 两个分支。若修改,则进入修改个人信息流程;若不修改,则直接返回主界面。
-
三、活动图绘画
四、总结
UML 活动图是一种直观展现系统动态行为的工具。它通过活动、动作状态、转换关系等元素,清晰描绘系统流程。活动图以直观的图形化方式,帮助我们更好地理解系统的动态行为,对于系统的设计、开发和维护都具有重要的指导意义。在实际系统开发过程中,我们可以通过活动图对系统流程进行详细分析和优化,提高系统的可靠性和易用性。活动代表系统功能模块,如 “查找书籍”;动作状态是具体执行步骤,像 “输入关键词”。转换关系指引流程方向,决策节点依据条件分叉,合并节点整合分支,开始和结束节点界定流程范围。