计算机环境下业务过程自动化软件设计
2021-10-29孙强强居昌英
孙强强,李 永,居昌英
(1.滨州学院 信息工程学院;2.滨州学院 教务处,山东 滨州 256603)
0 引言
《中国制造2025》指出中国的制造企业智能化转型之路任重道远。利用自动化软件可以为智能制造提供技术支撑,其发展前景广阔[1]。计算机环境下的业务过程自动化是计算机支持的协同工作的一部分,是一系列自动进行、相互衔接的业务或任务[2],也称为工作流,例如请假申请、加班、出差等日常业务流程,广泛应用于物业服务、教育、消费品、制造和电信服务等行业。由于行业发展限制,应用比较普及的还是在传统媒介上的工作流,比如纸质媒介、板报等。而在自动化软件上建立模型可以为整个业务流程的阅读、传输和展示等环节提供便利,能在时间和空间上提供一种超越传统的信息操作方式[3]。因此,本文基于模型-视图-控制器(MVC)设计模式,引入事件派发机制、事件流机制、组件式开发模式和代码分层技术,设计开发了一个既便捷又轻量的业务流程建模软件。该软件可满足业务过程的核心需求,有效提高企业中日常业务的效率。
1 需求分析
随着信息技术的发展,网络在企业信息化建设中的地位日益凸显[4]。在提高企业的工作效率以及降低运营成本方面,传统的、人工的纸质流程已无法适应事务流程在时间及空间的要求。现代企业迫切需要建立一套稳定、便捷、安全的基于计算机环境的电子化文件传输平台[5]。企业工作人员可以不受时间、地点束缚,开展协同办公,真正实现无纸化办公。这在提高工作效率的同时也降低了运营成本,从而提高企业的竞争力。
业务过程软件就是实现在计算机环境下业务过程自动化的软件,可以实现业务过程的部分或者实现全部的自动化[6]。业务流程的安排和执行仅仅依赖于计算机网络,企业、机关以及部门便能够有机的联系在一起,从而大大提高工作效率。根据需求分析,本软件的用例图如图1所示。用户可以在计算机上对业务过程实现基本的模型创建、模型保存、文件打开及修改、打印和动画展示功能。
图1 系统用例图
2 业务流程自动化软件设计
2.1 系统框架
根据总体结构和模块间的关系,定义了多个功能模块接口、控制接口并对其审核。功能包括:模型绘制、属性设置、文件保存、文件打开、打印功能和动画展示。其核心是模型绘制,可以通过图形的方式把用户需要的流程模型图进行设计和展示,并配以明确的图形和箭头。同时,为增加系统鲁棒性和易维护性,本软件使用了事件派发、事件流、组件式开发、代码分层等机制。
本软件各模块功能介绍如下:
(1)模型绘制。组件库提供大量模板,提供编辑面板对模型元件进行设计,可添加线路牵引并绘制完整的业务流程模型。
(2)属性设置。设置文字颜色和大小等。
(3)文件保存。把创建好的业务流程模型生成统一的xml文件。
(4)文件打开。重新编辑模型。
(5)打印功能。对xml文件和对业务流程图进行打印。
(6)动画展示。以动画的形式展示整个业务过程,通过角色走动的路线来表现业务的执行过程。
2.2 事件派发机制
在程序编写中应用事件派发机制,事件机制是ActionScript3.0的核心功能之一[7]。通过事件机制的应用可以完成大部分的功能。事件派发是事件机制的一部分,程序要侦听一个“事件”,那么就要存在这个事件。要让程序知道有这个事件,然后去侦听它,就用到了事件派发,事件派发的作用就是让整个程序知道某个对象派发了某个事件,当对那个对象注册监听时就可以注册自定义事件的监听。
2.3 事件流机制
在软件设计过程中,事件流机制如下:
(1)捕获阶段。从舞台到发送事件的目标对象的父节点之间的所有节点,对每个节点进行遍历,加入到达的节点是注册了本事件的节点,就达到了目标。
(2)目标阶段。仅包括目标节点,到达注册了所发生的事件的节点时就是目标阶段。
(3)冒泡阶段。从目标对象到舞台之间还回过程中所遇到的所有对象。默认情况下注册事件是没有冒泡的,也有一些事件不能添加冒泡。事件流模型如图2所示。
2.4 组件式开发
图2 事件流模型图
采用全组件式的模块化开发方式,将所有的模块开发成组件。在系统运行时,通过建立每个组件联系即实例化每个组件以实现想要的功能。通过组合模式实现递归和分级数据结构的优化处理[8]。
业务流程软件有个主要舞台,系统所有的模块都要呈现在主舞台上[9]。而舞台被划分为3个模块:
(1)节点面板。里面有所有类型的节点和线段。
(2)属性面板。可以对节点和线段的属性进行编辑。
(3)模型编辑面板。可以实现模型的编辑。此外,使用右键快捷菜单可以快捷添加牵引线段。
2.5代码分层
将系统按照功能的不同进行逻辑划分,可以降低系统开发及维护成本。在组件中集成数据访问和逻辑操作,可以使系统扩展性增强的同时提高系统的复用性。运用分层的思想可以抽象出代码的整体框架、脉络[10],有利于代码复用。要复用某段逻辑的前提是把该段逻辑单独作为一个模块封装出来,同时需要把模块封装得非常彻底,不能与其他模块过多地耦合,否则就不能“一处定义到处使用”。
代码的合理封装是代码分层的基础。只有封装才能产生层次结构,进而实现固定不变隔离变化,也只有封装才能实现代码复用[11]。在业务过程软件设计过程中就利用了代码分层的思想,将事件处理的事件类、元件类等不同功能的类分开编写,可以让代码有效利用MVC综合模式。MVC模式通常用来为软件应用程序创建接口,由3个元素组成:一是模型,包含应用程序数据和逻辑来管理程序的状态;二是视图,在屏幕上呈现用户接口和应用程序状态;三是控制器,处理用户输入来改变应用程序状态。
3 功能实现
3.1 开发与运行环境
计算机环境下的业务过程自动化软件的开发平台有Adobe Flash Professional CS 5.5和Flash Develop两个。
(1)Adobe Flash Professional CS 5.5,在此平台上进行组件皮肤的开发和动画在时间轴上的编写。主要的皮肤文件包括菜单按钮的皮肤、滚动条的皮肤等。在此平台上设计的文档最后要输出swc格式的文件,它可以包含一些class文件、图片以及css样式文件,也可以选择包含其他文件,这个文件就可以作为一个类库在代码编写的时候进行调用。
(2)Flash Develop平台有很好的代码提示功能,将代码编写都在这个平台上进行,软件最后编译成swf的形式。编程语言为ActionScript 3.0。软件运行的最低硬件需求为Intel Pentium 4或AMD Athlon 64处理器,1 GB内存和配备了OpenGL硬件加速技术的图形卡。操作系统需要Windows 7及以上操作系统,也可以兼容IOS操作系统。
3.2 模型编辑模块的实现
通过在节点栏将需要的节点拖到主编辑面板,能够向面板添加新点选的元件。开始前需要添加开始和结束节点,然后添加中间节点和牵引路线。在编辑面板里面的元件可以任意的拖动,并且之间的牵引线段会根据前后节点的位置进行重新绘制,还能自动选择连接的点。如图3,右边是属性面板,可以对节点的属性进行改变。
3.3 文件打开和保存的实现
文件的打开功能可以实现打开本地保存的xml格式的模型文件、展示、再编辑等。文件的保存功能采用统一的数据格式,有读写方便和在远程传送时数据量低的优点。编辑完的业务过程模型化后,系统会生成xml模型的源文件。把生成的xml格式的文件保存到本地计算机,能够实现模型的保存以备下次查看和执行其他操作。而文件的保存和打开都是使用了FileReference类的功能,文件打开和保存见图4。
图3 模型编辑面板编辑视图
图4 文件打开和保存
3.4 模型打印模块的实现
本软件实现了对生成xml文件的打印和对生成业务流程图的打印功能。通过获取编辑面板上的业务过程的模型或者xml代码,将其转换成像素。然后把像素生成图片调用本地的打印机程序进行打印。打印功能是计算机媒介与传统媒介的结合,提高了业务过程的人性化使用,文件打印如图5所示。
3.5 动画展示模块的实现
绘制模型的整个业务过程可以通过动画的形式进行展示,然后通过动画中角色的走动路线来表现业务的执行过程。此处人物角色是选择的一款游戏里面的八面人物,根据走动路径的角度来选择角色使用的面来更好地展示动画。每次节点位置的改变都会派发一个位置更改事件,注册了监听的对象就会做出更新,同时节点之间的线段会重绘。其中,角色走动的方向是根据线段两端的点进行判断的,动画展示功能如图6所示。
图5 文件打印
图6 动画展示业务过程
4 结语
本文研究了业务过程软件在如今企业管理和发展中的作用和意义,业务过程自动化软件的开发有效地实现了基于网络的文件传输。在软件开发过程中,运用了系统工程的流程思想,提高了软件开发的效率和以后维护的可能性。该软件能够在计算机环境下实现业务过程的模型创建、修改、保存、打印、动画展示等功能。将来可以在互联网上建立一个专门的传输平台,进行定向定时的高效推送,进一步提高系统的智能化程度。