浅谈UML全程建模在公安禁毒软件开发中的应用
2014-09-17,
,
(1.天津市公安局禁毒总队,天津 300240;2.天津市南开区职工大学,天津 300100)
一、引言
对于公安禁毒专业软件开发,禁毒业务人员与开发人员一直都在不断的尝试和探索。但如何才能开发出一套贴合禁毒业务实战型的软件,是一个重大的课题。正确而有效的开发方法是在开发前一定要有总体蓝图,有整体设计思路、总体的开发走势的把握。
设计一个大型软件系统,就像设计一座高楼大厦,需要各种各样的“图纸”。在软件设计中,一般把类似于“图纸”的部分称为“模型”,并把设计软件模型的过程称为“软件分析建模”。软件设计全程建模,就是从软件开发自始至终都要遵循标准,俗话说:“没有规矩不成方圆”。UML(Unified Modeling Language) 统一建模语言,是国际上流行的先进的软件开发标准建模语言。它具有很多开发优势,采用UML全程模开发软件它的互动性使行业人员与开发人员建起了一座沟通的桥梁。它以模型图来描述用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。这是一个软件开发设计的思路的飞跃,让禁毒行业专家与软件开发专业人员之间通过模型图来互动,这一方法对开发出一套贴合专业实战的公安禁毒专业软件奠定了一个很好的基础。
二、公安禁毒专业软件的开发面临的问题及解决之道
目前公安行业软件开发虽已日趋成熟,且其中并不乏好的业务软件。但面对新警种且业务发展迅速的禁毒行业,却有些力不从心。这对于软件开发人员与禁毒专业人员来说也是一个新的尝试与探讨。作为公安业务中的禁毒业务,它有着自身的特点,虽脱身于刑侦业务,但有着有别于传统刑侦业务特点具有其业专特质性。这就为业务软件的开发带来了很大的困难。如大量的套用已开发成熟刑侦业务软件,这样开发出来的禁毒专业软件往往没有自身的特点,不能适应灵活多变的禁毒业务。有些开发人员在开发中用公式性的程序块来搭建,这也不能开发出好的、贴合实战的禁毒业务软件。一些开发公司的软件开发没有连续性,如一位前期开发的人员离开这一项目后,后续的开发人员得到的技术资料多是文字资料及程序代码,读起来晦涩难懂,对前任开发人员的设计思路不甚了解,这样开发出来的软件的质量难免不受影响。面对诸多问题,如何开发出具备禁毒业务自身行业特点的软件呢?全程建模的软件开发概念的应用使这一问题迎刃而解,它强大的软件工程开发理念及模型图在全程开发过程中的应用,使禁毒业务软件的开发有了新的定义及趋势。也是禁毒业务软件开发走向成熟与规范化的标志。
三、禁毒业务软件全程建模与实现。
(一)禁毒软件全程建模
图1 全程建模整体视图
图2 禁毒业务需求分析工作流程
在软件工程的全部实施过程中都采用模型的方式而非文字的表达方式来进行描述,这样的实现过程称之为全程建模。全程建模的特点是:模型相互之间是有关联的,模型成为软件工程过程各阶段展现的主体而不是文字描述作为主体存在。通过建模的方式将原来纯文字加图形描述的各种文档模型化,使得从需求到代码能够统一起来,实现需求的变动直接影响到代码的变化。提高代码对需求的有效性联系,同时,解决过去经常出现的:编码改动,文档就失效的问题。
全程建模整体视图如图1所示。
(二)禁毒软件全程建模的实现
1.禁毒业务需求分析
用户方与开发方双方的意愿性需求驱动一切。在这一价段开发方主要对禁毒业务进行深入的了解,知道为什么要开发、为谁开发、谁在用、要达到什么目地。开发方要与禁毒专业人员一起组成联合开发小组,深入的了解禁毒工作的业务流程。认真了解禁毒工作业务的每一个细节,双方深入探讨达成共识。了解双方关心的问题。创建软件模型,分析研究,多次讨论再修改模型,逐步完善。 需求分析工作流程图如图2所示。
2.禁毒软件建模
完成需求分析工作后,将开始对需求进行分类和整理。然后,通过UML绘制的模型来完整、适当地对需求进行描述。统一建模语言(UML)是一种用来对真实世界物体进行建模的标准标记,这个建模的过程是开发面向对象设计方法的第一步。UML规范用来描述建模的概念有,类(对象的)、对象、关联、职责、行为、接口、用例、包、顺序、协作,以及状态。
UML提供的基本模型图包括:(1)、用例图 (2)、类图 (3)、对象图 (4)、包图 (5)、状态图 (6)、时序图/顺序图(7)、协作图 (8)、活动图 (9)、构件图 (10)、配置图。现在就从用例图、时序图、协作图在禁毒专业软件中的开发中的应用来说明UML全程建模的作用。
3.用例图的建立与说明
用例图是对一个活动者使用系统的一项功能时所进行的交互过程的一个文字描述序列。用例图的使用是禁毒专业软件建模重要的一步,它关系到整体禁毒业务在前期需求分析中的图型体现,用例图的直观易读性使繁索的业务文字描述变得生动而易懂,即使是从未学过软件工程的禁毒专业民警,在通过软件设计人员对用例图的简单介绍后也能在设计人员的解释下,看懂用例图对业务的表达。这是一个非常有效的方法。它的使用不会使禁毒业务人员与软件开发专业人员之间对禁毒业务的理解产生歧意。下面就通过一个例子来阐明。
民警登录系统如图3所示。
图3 禁毒业务用例图
禁毒办案民警直接关联的用例可分为涉毒人员查询、涉毒案件录入,以及涉毒情况统计。
禁毒办案民警通过登录系统验证后,可进行涉毒人员查询、涉毒案件录入,并根据工作需要通过涉毒情况统计获取相关情况。用例图可以使业务关系直观清楚,一目了然。
4.时序图与协作图的建立与说明
时序图描述了对象之间传递消息的时间顺序,它用来表示例中的行为顺序,是强调消息时间顺序的交互图。时序图描述类系统中类和类之间的交互,它将这些交互建模消息并交换。也就是说,时序图描述了类以及类间相互换以完成期望行为的消息。
系统对禁毒人员评估时序图如图4所示。
图4 禁毒人员评估时序图
图4所示是禁毒民警对涉毒人员是否列入重点工作对象的时序图,它可以转换成图5所示的协作图。两者所描述的控制流相同,只是所强调的内容有所不同。对涉毒人员是否列入重点工作对象的流程如下:禁毒民警将要研究判断的涉毒人员编号输入涉毒人员评估模块,涉毒人员评估模块会查询相应涉毒人员所有信息和是否有参与过重大涉毒案件的前科记录为作为是否列为重点工作对象的依据。涉毒人员评估模块将结果反馈给禁毒民警,控制流结束。
系统对如图5所示。
图5 禁毒人员评估协作图
时序图与协作图的描述的主要元素都是两个,即消息和类的角色。
四、结束语
本文探讨了禁毒软件开发中“全程建模”概念的引入,与UML在开发应用中发挥了巨大的作用。它的应用使得软件开发变得简单而高效。这种开发方法也是团队软件开发的趋势。“古语有云:工欲善其事,必先利其器”,高效的开发工具必将开发出高效的软件。
参考文献:
[1]白尚旺,党伟强等编著.软件分析建模与POWERDESIGNER实现[M].北京:清华大学出版社,2010.
[2]青润著.软件工程之全程建模实现[M].北京:机械工业出版社,2010.
[3]张龙祥.UML与系统分析设计(第二版)[M].北京:人民邮电出版社,2007.
[4]吴建,郑潮等.UML基础与ROSE建模案例(第三版)[M].北京:人民邮电出版社,2012.