时序图和协作图是都是交互图的一种,他们等价的,可以任意转换,而不丢失信息;
转换示例:
--场景介绍:学生毕业管理;
--对象介绍:教务人员,学位评价,成绩管理,奖惩管理,信息打印;
--控制流介绍:①教务人员输入学号进入学位评价模块,②学位评价模块会向成绩管理模块查询成绩,③向奖惩管理模块查询奖惩记录,④学位评价模块会将结果打印到信息打印模块,⑤信息打印模块将结果返回给教务人员;
时序图:
协作图:
时序图和协作图对比
时序图和协作图共同点:都是有消息和类角色组成;
--规定责任:时序图和协作图都规定了消息发送对象和消息接收对象的责任,每个接收对象都有消息对应的接口,这个接口方法由消息发送对象触发;
--支持消息:时序图和协作图都支持消息;
--衡量工具:时序图和协作图可以作为衡量系统耦合性的工具,耦合性就是系统中模型之间的依赖性,两个模型之间的依赖关系通过查看两个模型之间的消息数量和类型就可以看出,消息交互少的耦合性高;
时序图和协作不同点:
--链接侧重点:时序图中的链没有表示出来,可以随意绘制消息,有些逻辑交互可能不会发生;协作图的消息是映射在链上的,消息和链平行放置,如果想要通过消息查看对象之间的关联使用协作图最好;
1.管理员为图书添加类别
控制流说明:
--涉及到的对象:Admin(管理员),BookInfoWindow(图书信息窗口),Tittle(图书类别),Item(图书条目);
--流程:管理员查询图书信息窗口,查看有没有相应的图书类别,如果有插入该图书条目;
\
2.管理员删除图书
--控制流程:管理员登陆图书信息窗口删除图书,查表图书类别是否存在,查找图书是否存在,如果都返回true,删除图书条目;
3.管理员借书时序图
--参与的对象:Admin(管理员),BookInfoWindow(图书信息窗口),Tittle(图书类别),Borrower(借阅者),Loan(借书记录),item(图书条目);
--流程:管理员登陆图书信息窗口,查询图书类别是否存在,查询图书条目是否存在,查询借阅者是否存在,创建借书记录;