◆陈 亮 戴连丰
陈 亮 戴连丰
江苏省苏北人民医院 江苏 扬州 225001
UML (Unified Modeling Language 的缩小)统一建模语言,是对软件密集系统进行可视化建模的一种语言。UML 为面向对象开发系统产品进行说明、可视化和编制文档的一种标准语言[1]。它是 由Grady Booch、Jim Rumbaugh和Ivar Jacobson 提出,得到了世界知 名 公 司 如Microsoft、HP、IBM、Rational 等的使用和支持,并于1997年11月17日,被对象管理组织(OMG)采纳,成为面向对象建模的标准语言。UML 代表了面向对象方法的软件开发技术的发展方向,具有巨大的市场前景和经济价值。
本研究以医院总务科报修管理系统为例,具体介绍UML 的实际建模过程,所用建模工具为Rational Rose。
医院总务科报修管理系统是一个面向全院员工的管理信息系统。该系统方便职工及时对故障设施进行报修,可减轻维修人员的工作负担,提高维修质量和工作效率。其功能性需求分析包含3 个方面:(1)公共信息查询模块。系统的所有用户(含未登录)均可以查询以下信息:最新报修信息、最新维修信息及最新反馈信息;(2)报修管理模块。报修部门的用户登入系统后对故障设施进行报修、修改和查询报修信息,并反馈维修意见等;(3)维修管理模块。维修中心用户登入系统后对汇总后的报修信息按水、电、中央空调等进行分类,并打印相关报修信息,以便安排不同维修人员到现场施工[3]。
在对系统功能需求进行分析的基础上,系统设计了5 个功能模块,分别是系统登录设置、信息查询、报修管理、维修管理和系统管理。这5 个模块基本涵盖了报修维修管理的各环节。以系统登陆流程为例,用户使用浏览器打开网站的Web 页面后,无需登录系统即可查看公共信息。公共用户可以查看系统公告、最新报修和最新维修等系统信息。除进行登录操作外不可以进行其它操作。用户登录除需输入用户名和密码外,还必须正确地选择身份。系统设置了3种身份,分别是普通用户、员工和管理员,3 种身份的操作权限不同,系统对不同身份的用户登录后的可操作菜单进行了设定[4]。
2.3.1 创建系统用例模型 进行系统设计的第一步就是创建系统用例模型。创建系统用例的前提是确定系统的参与者[5]。医院总务科报修管理系统的参与者包含一般用户和管理员。确定参与者以后根据其不同分别制作出各个参与者的用例图。一般用户在本系统中可以报修、查询、评价、修改密码及退出系统,通过这些活动创建的一般用户用例图如图1 所示。管理员在本系统中处理报修信息、统计查询、修改密码及退出系统,根据这些活动创建的管理员用例图如图2 所示。
图1 一般用户用例图
图2 管理员用例图
2.3.2 创建系统静态模型 从上面的需求分析中,可以确定主要的6 类对象:一般用户、报修记录、反馈记录、管理员、维修记录及数据库,如图3 所示。
2.3.3 创建系统动态模型 (1)创建序列图。序列图(Sequence Diagram)是由对象(Object)、生命线(Lifeline)、激活(Activation)和消息(Messages)等构成的。序列图的目的就是按照交互发生的一系列顺序显示对象之间的交互。一般用户故障报修的时序图如图4 所示。(2)创建协作图。协作图(Collaboration Diagram)是由对象(Object)、消息(Messages)和链(Link)等构成的。协作图通过各个对象之间的组织交互关系以及对象间彼此的链接,表达对象之间的交互。一般用户故障报修的协作图如图5 所示。(3)创建状态图。状态图用于描述模型元素的实例(如对象或交互)行为。它适用于描述状态和动作的顺序,不仅可以展现一个对象拥有的状态,还可以说明事件如何随着时间的推移来影响这些状态。在医院总务科报修管理系统中,有明确状态转换的类是系统用户,在整个验证过程前后有各种不同的状态。系统用户的状态图如图6 所示。
图3 系统类图
图4 一般用户故障报修时序图
图5 一般用户故障报修协作图
图6 参与者状态图
(4)创建系统部署模型。对系统的实现结构进行建模的方式包括构件图和部署图。医院总务科报修管理系统的构件图通过构件映射到系统的实现类中,说明该构件物理实现的逻辑类。在本系统中,可以对一般用户类、管理类、报修类、维修类、反馈类和系统数据库分别创建对应的构件进行映射,系统构件图如图7 所示。医院总
图7 系统构件图
务科报修管理系统的部署图描绘的是系统节点上运行资源的安排,它包括5 个节点,分别是:数据库服务器、应用服务器、公共查询管理、报修管理、维修管理,系统部署图如图8 所示。
图8 系统部署图
本研究应用面向对象分析和设计的技术,通过UML 建模,简单介绍了医院总务科报修管理系统的设计与实现过程。通过使用用例驱动创建系统用例模型、获取系统的需求,并使用系统的静态模型创建系统内容,然后通过动态模型对系统的内容进行补充,最后通过部署模型完成系统的部署情况。
[1]谢星星.UML 基础与Rose 建模实用教程[M].北京:清华大学出版社,2011.22.
[2]吴 建,郑 潮,汪 洁.UML 基础与Rose 建模案例[M].3 版.北京:人民邮电出版社,2012:8.
[3]张 峰,张莉莉.基于WEB 的小区报修管理信息系统的流程分析与设计[J].电脑学习,2007(6):12-13.
[4]隋西凤.基于Web 架构的学校后勤报修维修信息管理系统的分析与设计[J].中国科技信息,2009(23):110-111.
[5]吕伟臣,周 涛.Delphi 7.0+Rose 项目开发实践[M].北京:科学出版社,2005.2.