《基于UML的小型图书管理系统的分析与设.pdf》由会员分享,可在线阅读,更多相关《基于UML的小型图书管理系统的分析与设.pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于 UML 的小型图书管理系统的分析与设计摘要:以 UML 面向对象的建模技术为基础,对图书管理系统的典型业务流程进行了分析,采用 UML 用例图对各个业务进行了描述,并给出了系统整体的用例框图,系统的包图,并对后续的软件设计给出了简单介绍。关键词:图书管理系统;UML;用例图;1 引言随着微电子、计算机科学、信息技术的不断进展,计算机应用已渗透到了社会生活的方方面面,给人们的工作、生活带来了极大的便利。在信息管理领域,科学、高效、规范、简约的计算机信息管理已使人们从以往繁复砸碎的人工管理工作解放了出来。图书管理工作中,涉及到众多的信息管理,传统的人工管理方式不仅费时费力,而且效果也不好。使
2、用基于计算机的图书管理系统来管理图书馆,有着很大的实际应用价值,目前已基本得到普及。本文试以UML 面向对象的建模技术为基础向读者介绍简单小型图书管理系统的软件建模过程。2 系统需求分析2.1 UML 简介UML(Unified Modeling Language统一建模语言)是 20 世纪 90 年代中后期诞生并迅速成熟的一种面向对象的可视化建模语言,它整合了Booch、OMT 等多种面向对象的分析设计技术,为用户提供了一种稳定统一、可重用性好、表达能力强的分析方法。UML 的目标是以面向对象图的方式来描述任何类型的系统,可对任何具有静态结构和动态行为的系统进行建模。UML 用视图构造系统模
3、型,共定义了十种视图来刻画软件模型,分别是用例图、类图、对象图、包图、状态图、序列图、协作图、活动图、部署图、构件图,每个视图代表系统不同侧面,全部视图共同构成系统的完整架构。视图由相互关联的模型图来表示,这些图抽象层次不同、所描述内容各有侧重。图与图之间的关联使系统成为一个有机整体。2.2 图书管理系统功能分析图书管理系统涉及读者信息管理、借阅信息管理、图书信息管理等多方面的信息管理,系统的使用对象为图书管理员和读者。他们在使用系统时,各拥有不同的权限,以完成各自需要的工作。下面对图书管理系统中主要的业务流程进行简要分析:在图书管理系统中,图书管理员要为每个读者建立借阅账户,记录读者的个人信
4、息和图书借阅信息。读者个人账户建立成功后,给读者发借阅卡,可以通过图书管理员借阅、归还图书,也可以通过相应的终端查询个人的借阅信息,检索图书。读者借阅图书时,先输入借阅证卡号、密码,验证借阅证的有效性及是否可续借,无效则向读者提示原因,如“卡号不对”、“密码不对”、“已借满,不能再借”等;有效则显示读者的基本信息,例如读者的个人资料、已经借阅的图书信息等;读者通过图书管理员向系统提出借阅请求,管理员操作管理终端,登记读者新借阅图书的相关信息。相应地,读者归还图书时,也需验证借阅卡号、密码等信息,验证借阅证的有效性,若不对,系统给出相关的提示;通过系统验证后,显示读者基本信息及图书借阅信息;读者
5、向图书管理员递交归还的图书,管理员验证无误后,删除读者该书的借阅信息;若读者超期归还,则先向管理员递交图书滞纳费用,归还图书;另外,图书馆图书资料变更,如新购进图书或图书被损毁不能再使用时,图书管理员要相应的将图书信息入库或注销;同理,若有新增读者帐号或需要注销读者帐号的,图书管理员应通过系统管理终端进行记录。综上所述,一个典型的图书管理系统应包含图书信息管理、借阅信息管理、读者信息管理三部分数据管理,其中图书管理员可实现如下操作:(1)增加、删除图书;(2)增加、删除读者;(3)借出、归还图书记录;(4)查询读者信息、图书信息;普通读者可以实现如下操作:(1)修改个人信息(如登陆密码,或其他
6、个人信息等)(2)查询个人借阅信息和检索图书;如下图 1 示,简要的表达了上述图书管理系统的基本功能。图 1 图书管理系统整体功能图示3 图书管理系统重要用例的实现Use Case图即用例图,是从外部用户的角度来描述系统功能的一种需求表达方式。一个系统常常包含了众多的用例,每个用例表达了用户对系统的一项需求或描述了人们使用系统某项功能的途径。使用系统的不同功能,其操作的场景不同。而使用相同的功能,其场景则相似。将同一用例的场景用文字描述出来就得到了系统用例描述。完整的描述用例,通常包括用例名称、参与执行者、前置条件、事件流、后置条件等。若用UML 图形机制表达,便是系统的用例图。通常,我们将二
7、者相结合,能清晰的表达出系统的用例。下面将对图书管理中常见的借书、还书、新增入库书、注销图书、新增读者、删除读者等典型的用例进行详细描述,并给出用例图。3.1 借阅图书用例3.1.1 借阅图书用例描述从图书馆借阅图书,是图书馆提供的一项基本服务。在图书馆里系统的建模过程中,将这一行为抽象为一个用例。在不考虑软件的具体实现细节基础上,给出如下的用例描述。Use Case 名称借书执行者读者图书管理系统图书借阅管理读者信息管理书籍信息管理借出超期丢失增加读者删除读者新书入库注销图书正常归还前置条件读者通过系统验证后,成功登陆借阅系统事件流A输入读者的借阅证号;若输入不正确,则提示“您输入的借阅证号
8、码有误,请重新输入!”输入正确,则提示“请您输入您的密码!”B输入借阅证密码;若输入不正确,则提示“您输入的密码有误,请重新输入!”成功登陆系统后,显示读者已借阅图书信息,提示超期未归还的图书;C输入要借阅图书的编号;若读者已借满,提示“您已借满,请先归还部分图书再来借,谢谢!”若读者可以正常借阅,提示“您确定要借阅这本书吗?是,请点确定!”D.读者点击“确定”,借阅证号增加一条借阅信息记录;读者点击“放弃”,回到步骤C.重新选择图书;E.借阅完成,点击“退出”,退出系统。后置条件读者成功借阅图书,图书管理系统保存借阅记录并修改库存图书数量,读者借出数量。3.1.2 借阅图书用例图根据 3.1
9、.1 的用例描述,画出借阅图书用例图,见图2。图 2 借阅图书用例图3.2 归还图书用例3.2.1 归还图书用例描述如同借阅图书一样,归还图书同样是图书馆的一项业务,将其抽象为一个用例,并对此用例的外部实现过程进行描述。Use Case 名称还书执行者读者前置条件读者通过系统验证后,成功登陆借阅系统事件流A输入读者的借阅证号;若输入不正确,则提示“您输入的借阅证号码有误,请重新输入!”输入正确,则提示“请您输入您的密码!”B输入借阅证密码;若输入不正确,则提示“您输入的密码有误,请重新输入!”成功登陆系统后,显示读者已借阅图书信息,提示超期未归还的图书;有超期未还的图书,调用“计算超期罚款金额
10、”丢失图书,调用“计算丢失罚款金额”C输入要还的图书编号;若输入错误,提示“您未借阅该图书!”若输入正确,提示“您确定要归还这本书吗?”D读者点击“确定”,读者借阅的图书信息记录消失;读者点击“放弃”,返回到步骤C.E完成还书,点击“退出”,退出系统;后置条件若读者成功完成还书,在图书管理系统中删除借阅记录,并修改图书库库存图书数量和读者借出数量。3.2.2 归还图书用例图基于 3.2.1 的用例描述,画出其用例图,见图3 示。图 3 归还图书用例图3.3 新增入库图书用例3.3.1 新增入库图书用例描述图书馆里的图书根据馆藏需求进行更新是一项日常业务,因此在设计图书管理系统时,也要为此设计用
11、例。Use Case 名称新增图书入库执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统事件流A.点击“新增”;B.登记图书的信息,作者,出版社;C.给图书进行编号,并记录条形编码信息;D.张贴“条形码”;E.检查图书编号是否入库;F.完成,退出系统。后置条件新增图书入库成功,图书管理系统可以查询到图书信息。3.3.2 新增入库图书用例图基于 3.3.1 的用例描述,画出用例图,见图4 示。图 4 新增入库图书用例图3.4 注销库存图书用例3.4.1 注销库存图书用例描述当图书馆里藏书,由于受到毁损或其他意外的破坏而无法再使用的情况下,需要对馆藏图书进行注销。下面给出其用例描述
12、。Use Case 名称注销库存图书执行者管理员前置条件管理员成功登陆图书管理系统的书籍信息管理子系统事件流A.点击“注销图书”B.查询要注销的图书借阅信息;若该书借阅出库,则暂时不能注销,提示“该书借阅中,不能注销”;若该书未被借阅,提示“确定要注销此书吗?”C.点击“确定”注销图书;若不能肯定是否该注销,点击“放弃”,返回上级界面;后置条件成功注销图书后,图书管理系统中不能查询到图书信息。3.4.2 注销库存图书用例图基于 3.4.1 的用例描述,画出用例图,见图5 示。图 5 图书注销用例图3.5 新增读者用例3.5.1 新增读者用例描述读者第一次来办理图书借阅业务,应当办理图书借阅卡,
13、图书管理员将其读者信息登记入读者数据库,便于对读者借阅信息进行统一管理,其用例描述如下。Use Case 名称新增读者执行者管理员前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.点击“创建读者”;B.将读者姓名,年龄,单位,联系电话等基本信息记录;C.将以上信息存入读者信息库,并发放借阅卡,卡上记录读者个人信息;D.创建完成,退出系统;后置条件成功创建读者,读者信息可以被管理员查询到,读者可以正常借阅图书。3.5.2 新增读者用例图基于 3.5.1 的用例描述,画出其用例图,见图6 示。图 6 增加读者用例图3.6 删除读者用例3.6.1 删除读者用例描述当读者由于工作地点变化或
14、其他原因,无需再使用图书馆的图书资料时,应当为其办理注销,即从读者数据库中删除其信息。对此业务抽象出用例,并给出用例描述。Use Case 名称删除读者执行者管理员前置条件管理员成功登陆图书管理系统读者信息管理子系统事件流A.查询读者的借阅信息记录;读者有未归还的图书,提示“读者有借阅图书未还,暂时不能删除”B.点击“删除读者”;提示“删除读者后,将不能借阅本馆图书,您确定吗?”C.点击“确定删除”;若不确定,点击“放弃”,返回上层界面;D.注销读者的借阅卡;E.删除完成,退出系统;后置条件成功删除读者,读者信息从数据库中删除,不能借阅图书。3.6.2 删除读者用例图基于 3.6.1 的用力描
15、述,画出用例图,见图7 示。图 7 删除读者用例图3.7 整体用例框图结合以上典型用例图及用例图之间的关系,画出如下系统的整体框图见图8。图 8 图书管理系统的整体用例框图4 系统的设计在以外部用户的角度对图书管理系统进行了初步需求分析之后,得到了系统各个业务的用例图,系统的顶层架构,初步得到了目标系统的模型。不难想象,一个大型的软件系统,其具体的用例必然会众多而复杂,为了进一步简化分析,依据具体用例之间的关系,对用例进行分类。经过分类之后,系统化为了各个更小的子系统。在 UML 中,采用包图的语言机制来实现这种子系统的描述。图9 所示,即用包图描述了本文所述的图书馆里系统的基本功能。图书管理
16、系统新 增 入库图书借书还书借 阅 情况查询包含包含包含丢失罚款读者管理借阅管理注销图书管理员超期罚款扩展扩展读者图 书 信息查询删除读者增加读者图书管理包含图书管理系统查询与借阅子系统借阅管理子系统信息管理子系统图 书 检索图 书 新增/注销借书还书读 者 增加/删除借 阅 情况查询图 9“图书管理系统”包图接下来需要对各个子系统中的具体用例的实现进行更深层次的刻画,即考虑到软件的具体实现。一个系统用例,对外部用户而言是系统为其提供的一项“服务”,而为了实现这个“服务”,则需要系统内部众多对象之间相互合作来共同完成。如何精确刻画这些幕后的软件行为,顺序图便是UML 描述软件行为图的一种,它可
17、以对对象之间消息传递的先后的动态交互过程进行精确描述。选择本文所述目标系统的典型用例“借阅图书”,画出其顺序图,见图10 示。图 10“借书”顺序图由以上顺序图,能较容易的理解“借书”的过程的背后的对象之间的协作关系。在从系统的角度描述了用例实现之后,需要进一步考虑系统的技术支撑方案,并将其与用例的实现相结合。在此基础上,从人机交互的角度考虑,设计友好的用户界面。至此,已基本完成了软件的分析与设计过程。当然,仅有这些还不够,设计出性能优良的软件系统,还必须在以上初步的分析与设计的基础上,按照软件工程的相关指导原则,进一步精化、优化软件系统的整体架构、系统的静态模型和动态行为模型。读者借阅记录图
18、书1:获取读者信息7:获取图书信息对话框2:显示读者信息8:显示图书信息4:显示借阅记录3:查找某个读者借阅记录5:判定某个读者能否继续借阅6:提 示 能 否 继续借阅9:添加借阅记录10:显示借阅记录5 结束语本文以 UML 建模语言为基础,介绍了图书管理系统的典型业务流程的用例,并给出了系统整体的用例框图,并对后续的软件设计给出了简单介绍。鉴于作者水平有限,请读者不吝批评指教!6 参考文献1 齐治昌.谭庆平.宁洪.软件工程.北京:高等教育出版社2 张海藩.软件工程.北京:人民邮电出版社3 Thomas McConnell,Carolyn Edberg.Database Solution:A Step by Step Guide to Building Databases.Pearson Education Limited Publishers.2002 4 张维民,刘忠,肖卫东等.信息系统建模 M.北京:电子工业出版社.2002,3 5 Jim Aglow,Ilea Nested.UML and the Unified Process Practical Object-Oriented Analysis&Design.Pearson Education Limited Publishers.2002 6 Pave Ruby著,widen.用 UML描述工作流管理EB.