这篇文章将介绍用例图的一个案例——图书馆借阅系统。
案例结合某校实际情况,但数据和背景纯属虚构,仅为了说明问题。
S校共有在职教职员工1500余人,退休职工300余人,在校学生20000余人。S校图书馆拥有各类图书150万余册。
在职教师每人可借阅40册,可借阅60天;本科生可借阅25册,可借阅60天;研究生,包括硕士生和博士生,可借阅30册,可借阅60天;退休职工,可借阅10册,可借阅30天;所有人可续借2次,每次可以续借30天。
S校图书馆目前使用的借阅系统已有10年的历史,其存在的主要问题有:
(1)未实现校内互联:读者的图书查询只能在馆内实现;
(2)功能单一:只有借还和续借功能,且续借功能需要读者到图书馆工作人员处完成;
(3)无超期查询统计功能:超期查询与统计需借助人工对借阅记录查询汇总。随着学校学生和职工人数的增加和每日借阅量的增加为统计带来更大的困难;
(4)无法实现超期罚款:现有的超期罚款由图书馆工作人员统计计算,易出错且无法实现使用一卡通支付,读者只能缴纳现金给工作人员,工作人员需要定期将罚款明细和现金上缴学校财务处理。
(5)无法实现在线续借;
(6)无法实现在线预约借阅;
(7)读者无法及时获取超期信息;
(8)没有超期预警或提醒功能。
S学校已经改造了现有的网络,实现了校园内网络互通,读者也可以使用学校提供的VPN访问学校内的资源。为适应发展,图书馆的借阅系统也亟待升级改造。
(1)读者随时可以在校园内查询图书信息、借阅信息;
(2)图书馆工作人员使用借阅功能可以帮助读者借阅图书,也可以使用还书功能帮助读者还书或缴纳罚款,读者也可以使用这些功能完成相应的操作;
(3)读者借阅的图书信息在超期前7天和3天给出超期提醒;
(4)自动计算超期金额,读者可以到图书馆工作人员处或在线使用一卡通缴纳罚款,系统自动扣除相应金额,并与学校财务系统通信,实现罚款上缴财务系统;
(5)读者可以在线预借图书信息,每次只能预借1本;
(6)读者的借阅的书籍即将超期时,要提前3天进行提醒,系统可以自动发送提醒消息给读者,图书馆工作人员也可以手动提醒;
(7)读者在图书超期前一周内,可以在线自行续借图书信息,续借次数最多2次;
(8)读者使用系统绑定一卡通后可以使用系统的所有功能,否则只能进行查询图书操作。
获取好的需求的五个关键步骤:
(1)找到可以帮助你理解这个系统的人。
(2)倾听这些相关人员的描述,并从他们的角度来理解系统。
(3)利用一个容易理解的模型来描述用户希望如何使用这个系统以及为他们提供的什么价值。
(4)详细地描述系统和客户以及系统和外部系统之间的交互。
(5)重构(refactor)这个详细描述以保证它是可读且易懂的。
在该案例中,项目组成员与图书馆馆长、图书馆工作人员和典型读者进行了充分沟通,确定了图书借阅系统的相关功能。
系统的边界是指一个系统的所有系统元素与系统以外的事物的分界线。
在本系统中,从系统目标中可以分析出主要包括以下功能:
借书、还书、查询图书、查询借阅记录、缴纳罚款、超期提醒等。
而缴纳罚款的财务系统是系统之外的一个参与者,而非系统提供的功能。
该系统的参与者包括读者(本科生、研究生、教职工、退休职工、教职工家属),这些读者的不同种类只是在可借阅的册数、时间上有区别,而在功能需求上并无区别,所以应该把他们合并为一个参与者:读者。除此之外,参与者还有图书馆工作人员、财务系统和定时器。
经整理,该系统包含的用例有:
借阅图书、归还图书、缴纳罚款、绑定一卡通、预借图书、查询图书、续借图书、查询借阅记录、提醒超期等。
这一季使用在线绘图工具draw.io来绘制用例图。
关于draw.io在线工具的使用方法,可以参见本站中的下一篇文章《在线绘图工具draw.io的使用》。
(1)画布中添加“读者”、“图书馆馆员”、“财务系统”、“定时器”参与者。
(2)在画布中添加“借阅图书”、“归还图书”、“查询图书”、“缴纳罚款”、“查询借阅记录”、“预借图书”、“提醒超期”、“续借图书”等用例。
注:添加完某个图形后,鼠标在图形上变为“四向箭头”时,双击该图形可以修改其名称。
(3)选中所有用例,在右侧属性栏中,切换到“Arrange”选项卡,修改Size属性,修改Width(宽度)值改为90,Height(高度)值修改为40.
(4)由参与者向用例画箭头,设置箭头的线为直线。
(5)绘制用例之间的关系。
最终得到的用例图如下图所示:
对各个用例进行详细描述,以让我们更好的了解系统。下面只给出一个例子。
这篇文章使用了一个例子讲解了用例图的绘制过程。
如有不妥之处,请批评指正。
新闻热点
疑难解答