首页 > 范文大全 > 正文

基于UML 的DCS 数据库系统的建模与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于UML 的DCS 数据库系统的建模与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:DCS数据库系统在DCS中起着重要作用,通过对UML的分析,采用利用面向对象的建模方法和可视化建模工具Rational Rose对其建模。先是对DCS数据库系统进行了需求分析,然后从多方面建立了较为完整的UML模型,最后在Visual C++ 6.0平台下编程实现了DCS数据库系统的各项功能。UML图形化的建模方式,使用户更易了解系统并给以后的开发和维护带来了方便。

关键词:UML;Rational Rose;数据库系统;建模

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)18-4163-04

分散控制系统(Distributed Control System,DCS) [1]已经成为计算机工业控制系统的主流,并且在各种生产过程中得到了应用。对于一套DCS系统,数据库系统是整个DCS的核心,它负责所有的数据组态和数据管理[2],是DCS监控层和控制层能正确稳定运行的关键。数据库系统的开发是一项复杂的工程,在编程之前若建立清晰的模型则对开发将会有着重要的帮助作用,基于此采用uml建模的方法和Rational Rose工具来实现dcs数据库系统的功能。

1 UML与Rational Rose简介

UML即统一建模语言,是一种可视化的建模方法。UML建模主要是基于图的建模,UML为用户提供了多种视图表示方法,具有很好的直观性和可读性。 UML主要定义了五类图[3]:用例图、静态图、行为图、交互图和实现图。用例图主要是从使用者角度进行的需求分析;静态图是系统的静态模型,包括每个类的类图和对象图;行为图则是从动态属性方面绘制的活动图和状态图;交互图体现了对象间的交互关系,包括顺序图和协作图;实现图则是通过构件图和部署图描述整个系统硬件节点的结构。

Rational Rose是支持UML的建模的一种工具,它可以提供系统开发各个阶段的UML表达方法。它还支持模型和代码之前相互转换的功能。在代码或模型修改时,可以很好保证两者的一致性,而且对于以后系统的维护和再次开发保存了形象的的图形表示方式。

2 需求分析

软件开发的初始阶段就是系统的需求分析[4],需求分析展现了用户对目标软件系统在功能、行为、性能、约束等方面的期望,只有需求做的完善,后续的开发工作才能更顺利的进行。充分的需求分析可对软件初始阶段设计的缺陷和不足进行补充完善,软件的开发效率和软件质量也会提高。

本文所研究的DCS数据库系统的功能性需求主要包括以下内容:

1)增加、删除现场控制站:用户以离线组态权限登录DCS系统,此时可以在数据库执行对现场控制站的增加和删除操作。

2)增加、删除IO模件:用户登录系统后,在数据库离线的情况下,可以执行IO模件的增加和删除操作。

3)设置工程参数:用户以离线组态方式登录系统,可以对工程参数进行设置。

4)数据点的导入导出:将某个站的数据点信息导出到EXCEL表格中;在数据库离线的情况下,将外部EXCEL表格中数据点导入到数据库中。

5)站属性、模件属性、数据点属性的修改:数据库离线的情况下,可以对现场控制站、模件的属性进行修改,可以在线修改数据点的属性。

6)按条件查询数据点:可以查询数据库中符合条件的数据点,并显示在界面。

7)显示站配置信息、模件配置信息:用户可以查看当前数据库的站配置信息、模件配置信息。

8)文件的保存:可以对当前数据库的站信息、模件信息、数据点信息进行保存,保存到硬盘的文件上。

9)响应其他软件的消息:可以对DCS其他软件发来的消息进行响应,与其他软件进行通信。

10)切换到DCS的其他上位软件:用户可以切换到DCS系统的其他上位软件。

3 DCS数据库系统可视化建模

3.1创建系统用例模型

进行系统分析和设计的第一步是创建系统的用例模型。用例是根据需求分析得来,系统的整个开发过程就是实现各个用例[5]。

首先确定系统的参与者,DCS数据库系统的主要参与者是工程师和操作员。登录DCS系统之后,可以进行的操作包括,对现场控制站、IO模件的增加、删除,设置工程参数,数据点的导入、导出,修改站属性、模件属性、数据点属性,按条件查询数据点,显示站配置信息、模件配置信息,切换到DCS的其他上位软件,对文件的保存等操作。根据需求得到数据库系统的用例图,如图1所示。

3.2创建系统的静态模型

系统的静态模型主要用类图来实现。通过设计类与类之间的关系体现系统的静态结构。类图并不描述系统是如何协作运行,而是描述了系统的构成方式。下面以数据库程序的共享内存部分为例展示系统的类图的创建。

图2反映了数据库共享内存类之间的结构关系,共享内存基类CSharedMem从CObject继承,它又派生了三个类:CMemSTNodeState, CMemRTNodeState, CSharedMemAVDV, 其中,CSharedMemAVDV又是CMemRTAV,CMemSTAV,CMemRTDV,CMemRTDV的基类,表示了动态数字量、静态数字量、动态模拟量和静态模拟量几种数据点类型。图3是对CSharedMem类的属性和方法的定义。

3.3创建系统的动态模型

动态模型包括行为图和交互图。

交互图包括顺序图和协作图,两种侧重不同[6],顺序图是对象之间基于时间顺序的动态交互,而协作图更侧重表示对象间的关系,如图4和图5为模件配置总览的顺序图和协作图,二者是可以相互转换的。

图4表示的是用户查看模件配置总览时的顺序图。该图中涉及到5个对象进行交互,分别是用户、界面、文档类、IO模件链表类、模件配置总览对话框类。整个过程共有8个步骤,图5表示的则是模件配置总览协作图,它是根据该用例的顺序图自动生成的,由图中可以看出,与序列图不同,协作图各侧重反应对象之间的相互关系。

行为图包括活动图和状态图,状态图以状态为中心,主要描述多个状态间的转换;活动图类似流程图,用于对计算流程和工作流程建模。

图6和图7,分别表示的是“查询”用例的活动图和状态图。图6活动图中,各圆角矩形各表示用户的一个活动,活动之间的转换用带箭头的实线段表示,箭头指向转向的活动。图7状态图中,圆角矩形表示一个状态,状态之间的转换用带箭头的直线表示,一端连接源状态,箭头指向目标状态,若转换上没有标注触发的事件,则表示此转换自动进行。

3.4创建系统的部署模型

对系统的实际结构建模就需要部署图和构件图[7]。它们之间不同在于:构件图用来帮助开发人员了解系统的物理组织结构,部署图则用来帮助安装、部署人员掌握系统的拓扑结构。图6和图7分别为系统数据库的构件图和部署图。

4 结论

本文通过介绍UML在DCS数据库系统建模中的应用,总结出使用UML进行系统建模的方法。系统建模是系统设计和开发过程中非常重要的部分,UML能够在尽可能简单的同时满足对实际开发的需要,并进行系统的各个方面的建模。UML作为一种定义良好、易于表达、功能强大且普遍适用的建模语言,融入了软件工程领域的新思想、新方法和新技术,成为面向对象技术学习中不可缺少的一部分,具有广泛的应用前景。

参考文献:

[1] 翟永杰,王学厚,张悦,等.火电厂分散控制系统原理及应用[M].北京:中国电力出版社,2010.

[2] 王常力,罗安.分布式控制系统(DCS)设计与应用实例[M].北京:电子工业出版社,2005.

[3] 鲁博,柴越廷.关于统一建模语言-UML[J].计算机工程与科学,2000,22(4):57-60.

[4] 蔡敏,等.UML基础与Rose建模教程[M].北京:人民邮电出版社,2006.

[5] 李磊,王养廷,杜启军.面向对象技术及UML教程[M].北京:人民邮电出版社,2010.

[6] 唐作其,李娜.基于UML的城市应急联动系统建模[J].计算机工程与设计,2010,31(9):2044-2051.

[7] 吴建,郑潮,汪杰.UML基础与Rose建模案例[M].北京:人民邮电出版社,2012.