张玙,张佳萍
(1.河海大学商学院,江苏南京211100;2.山东大学计算机科学与技术学院,山东济南250101)
基于SVG-JS技术的项目任务管理设计
张玙1,张佳萍2
(1.河海大学商学院,江苏南京211100;2.山东大学计算机科学与技术学院,山东济南250101)
针对组织人与任务互动过程任务管理部分,在总结模拟方法和手段的基础上,通过可缩放矢量图形技术(SVG)与JavaScript脚本代码技术(JS)相结合的方式,将基于SVG技术的模拟方法应用到企业任务管理过程中,并试图利用JS技术在B/S架构下实现基于WebService的任务管理模拟程序和网站服务平台,根据处理项目任务量的不同确定调度次数的划分,同时实现项目信息跨域传递。各项目进度信息分别利用Exce1、Word、PDF和PPT四种格式任务信息传输到企业用户过程中,Exce1格式的信息丢失率仅为2.38%。说明在企业的项目任务进度管理过程中,通过Exce1格式的传输是综合调度信息的最佳传输途径。
项目任务管理;可缩放矢量图形技术;JavaScript脚本代码技术;B/S架构;信息跨域传递
随着科技的进步和互联网的快速发展,基于单一系统的项目任务信息的综合调度已经远远不能满足企业用户的需要[1_3]。在此期间,越来越多的以各区域项目进度信息的点对点,点对多的跨域信息传递技术涌现出来[4_6]。可缩放矢量图形技术(SVG)可以用任何文本编辑器创建[7],但它往往是与一个绘图程序一起使用[8],而JavaScript脚本代码技术(JS)作为一种动态类型的直译式脚本语言,广泛用于客户端的脚本语言在HTML网页上使用,用来给企业信息HTML网页增加动态功能[9]。
本研究利用可缩放矢量图形技术(SVG)与JavaScript脚本代码技术(JS)相结合的方式,即SVG_JS技术完成项目任务信息的管理。在引入模拟来进行项目中任务或者活动的管理过程中,对于组织管理中人与项目任务的互动进行模拟,然后将其集成。考虑到多企业项目管理者的多用户交互的特点,以及为方便技术开发人员维护和企业管理者使用的目的。系统可以采用B/S架构进行开发,其中模拟的交互可以用Web Service在服务器端实现[10],结合客户端HTML5技术引入信息机制postMessage来现实不同源的脚本的异步方式进行任务信息提取和项目信息实时跨域传递。
1.1模拟平台发展趋势
现在较为常用的网络模拟器是NS2网络模拟器,尤其是在网络协议研究方便它发挥着重要的作用。由于学习难度大,缺乏远程模拟功能,通过利用拖放式建模方法取代常见脚本编写能够很大程度降低NS2的使用难度。在系统中利用Mode1ica,Repast等软件通过用户界面实现模型库共享,利用Emu1ab模拟技术实现实物仿真以满足无线模拟技术研究的需求,其优点是仿真度高,方便实现各种应用,协议,网络服务的模拟,但是由于缺乏多用户的动态交互,因此在研究上遇到一些瓶颈。首先多用户交互需通过互联网技术加强,通过C/S平台实现用户界面,图元的传递可通过JavaBeans的形式实现。随着技术的发展,利用Java WebStart的开发已经变得容易实现。再者通过整合Javis和ptp1ot实现模拟过程的动态表述,方便研究人员理解其中的原理和操作。再者在使用B/S架构的情况下也无需进行额外的投入能够减少成本。pfmon相对于Si1verLight/F1ash/App1et来说能够监测缓存的命中率,具有跨平台的特点,高速缓存感知算法使仿真计算加速利于全球用户通过互联网协作。
使用GNS3、Xen和NetEm开发源时的优点在于不但能够提高平台的可扩展性,还可以确保用户的使用质量,保证平台在模拟与仿真方面的真实性,这样,当通过哑铃模型实验后就能够验证了模拟平台的真实性和实用性。当同时使用双数以上的模拟程序时就实现了模拟的集成从而形成模拟云,能够为用户提供真实的模拟服务[12]。
1.2当前模拟软件分析
流程模拟仿真,首先需要建模。模型需要控制仪表、单元模块、流程系统、数据协调以及语言等多项技术。通过利用MATLAB系统仿真技术并利用RePast建立模块,可以直接实现现实工程的应用和并能够提供仿真平台,导入类库到编程软件JAVA,以动静结合模拟的形态实现了对现代化工厂仿真平台的模拟与开发,利用RePast的优点是能够根据需求进行自由定制,为面对的即时性的问题迅速编程模拟。在java中同时也可以利用AnyLogic的模型,为了方便也可以结合RePast的C#语言形式或者直接使用来进行模拟仿真。还有一种能够通过互联网站分享模块从而实现多用户交互功能的模块语言,最初由一位欧洲学者发现创立的Mode1ica。一般模拟的仿真过程结束后,在工作存储空间中保存好所有的变量和数据,再利用MATLAB软件的数据库(Database)结合onto1ogy方法构建模型并存储仿真的数据,后台采用Microsoft Access 2000存储。一般有多种模拟软件可供选择,可以根据实际情况的需要选择擅长领域的模拟软件或者通用软件进行仿真实验实现效率的提高。
目前模拟软件中AnyLogic是通用的多功能模拟软件,再结合外部软件Aspen P1us实现对重要装备动态仿真的过程进行了细致的表达。模拟仿真系统由于集成Emu1ab的开源系统,充分利用了本地的硬件资源,且集成了SEER等功能架构,实际效果比NS2等仿真软件有更加全面全面真实的效果,范围更广,更易成功达到预期计划的目标。建模者通过JavaBeans实现图形化界面操作,在后台形成代码源构建一个基于Emu1ab的模拟平台,并集成DETER1ab SEER架构的无线模块。相对于晦涩难懂的语言和复杂的逻辑,建模者还需要Java代码和C#语言,利用AnyLogic进行编程存在诸多缺点不如擅长专门领域的开发系统环境,在中模拟中遇到问题时需要进行调试却存在瓶颈[13]。在编程过程中通过使用离散事件模拟软件Arena并使得Moda1ica系列软件与Simu1ink软件实现多用户交互模块共享,采用可以使用SIMAN运行,值得注意的是在使用Arena的同时为了方便观察运行的效果开发者可以在生产模拟仿真的过程中控制好资源的变量,对其分布加以限制[14]。
2.1传统项目管理的缺点
在企业中各项目任务的处理广泛应用现代计算机技术,并且计算机网络技术对企业的各项目实际研究具有可操作性。但在任务处理的方面,计算机技术存在着高度复杂性,尤其是项目任务的进度信息传递需要进一步结合实际项目工期进行研究。由于企业的项目分散在各个区域,并且任务进度的时间具有不确定性,使得传统的模型求解困难增大。传统的项目任务管理方法估计整个项目的项目工期,最终实现项目的综合调度管理。而当前的项目任务管理软件对不确定性时间进度的处理存在的一些不足,比如Microsoft Project软件对任务完成时间依据概率分布取期望计算求解,这种处理并没有考虑项目进度在信息传输中的时间差,一项任务的开始时间并非是所有任务的结束时间的期望。而运用模拟求解的优势如下:
1)模拟方法可通过多次模拟计算得出贴近实际的期望,而传统方法只估计一个期望值,不符合管理者对项目任务工期期望的动态性。模拟方法可以根据给出的各项目任务分布条件情况,得到符合管理者期望的项目运行情况,而且可以在多次模拟的结果中看到整个项目运行的各项任务指标的分布。
2)经过多次计算对每个任务进行抽样,模拟方法可根据整个项目工期的分布来计算项目任务工期的最终估计值,再对每个抽样计算各区域项目综合调度策略和工期期望。
3)模拟的方式可以引入计算机传输信息机制,实现智能化的项目任务管理。其中JavaScript脚本代码技术实现项目信息的传输和企业终端控制系统的操作,从而实现企业对各区域项目的跨域信息传递和综合调度管理。
2.2模拟方法
本研究采用朴素贝叶斯项目任务分类的算法进行模拟。根据贝叶斯公式[9]:
其中任意两个项目工期期望看做是两个随机事件tm、tn,tmi代表第m个项目的第i个任务的工期期望。整个项目总工期期望样本空间记为T,根据贝叶斯公式有:
而样本空间中项目子集的任务量是相同的,故P(tm)=P(tn)=0.5,又令ft(Ω)=P(Ω tm)、ft(Ω)=P(Ω tn)、,由此推到出一个项
mn目的任务调度划分,则两个项目是否重新进行调度的概率[10]:
当两个项目的所有任务工期期望在贝叶斯分类过滤的情况下,则两个项目采用SVG技术进行远端调度管理。
2.3模拟方法中的技术支持
采用SVG技术可依据数据运行趋势实现图形化表达[17],并且可在浏览器的Web运行。在验证数据时采用B/S架构,远端采用SVG技术实现数据的直观展示。同时,采用JS技术来实现数据的复杂性验证[18]。最后,在服务器端运行C++开发核心逻辑运算部分。SVG_JS技术结合B/S架构实现项目任务信息的模拟程序步骤如下:
Step.1:对每个任务建立对应的概率分布模型。将初始工期固定为0,采用Mat1ab软件来计算每两个项目任务之间的工期期望条件概率分布。由于期望分布的计算产生的doub1e类型值不是精确值[19],则贝叶斯条件概率分布使其任务信息抽样只产生精确的有理数值;
Step.2:按照项目中的任务先后关系建立整个项目的任务调度关系模型;
Step.3:根据所有项目任务工期计算项目的调度路径,模拟每个项目任务在其分布中抽样得到的实际工期最可能的期望值;
Step.4:对项目工期的经验分布进行多次模拟,得到经验分布的概率密度函数上离散点的坐标点,即项目的期望工期;
Step.5:采用B/S架构实现核心模拟程序,在HTML5中引入的信息机制postMessage来现实项目任务信息跨域传递,最终在网站服务器供项目管理者综合调度。
本文实验的硬件环境为Inte1 i7_4850HQ处理器(4核,单核主频3.5 GHz),物理内存4 GB,操作系统为64位Windows7,算法基于Visua1 C++2013编译器构建。使用项目管理中的模拟求解方法。设计两组不同的实验对所提出的SVG_JS技术在项目任务管理中效率进行深入分析,每项实验的结果均采用重复5次操作的平均值。
如图1所示,整个项目包含7个子项目。第一个实验中采用朴素贝叶斯项目任务分类的方式对每子个项目包含不同的任务量计算工期期望,对SVG_JS技术执行过程中的项目任务先后关系和项目调度的时间花费进行分析。实验结果如表1所示。
图1 项目管理中任务之间关系图示例
表1 不同项目任务量对SVG-JS操作用时的影响
表2 项目任务指示信息发送前后的数据大小
通过以上实验可以看出,项目任务管理调度次数应根据项目任务量确定,不能过大或过小。实验表明当项目任务量小于50时,SVG_JS操作用时不到2min,因此整个项目调度5次比较理想;当项目任务量达到100时,SVG_JS操作用时不到6min,因此整个项目调度6次比较理想。由此作为参考,根据处理项目任务量的不同确定调度次数的划分。
第二个实验采用B/S架构实现,通过记录把任务序号就可以连成一个线段,把这些线段拼起来就是一副任务关系图。期间通过C++程序实现。核心模拟程序完成后,需要给客户端返回一个“成功”信号,让客户端去获取结果加载到网站服务器上。本系统在HTML5中引入的信息机制postMessage来现实。postMessage允许来自不同源的脚本采用异步方式进行任务信息提取,实现项目信息跨域传递。在服务器端ConverterSer1et部分,response时加上postMessage的JS标签即可。在客户端部分,如图1所示,对项目任务进度进行监测,收到转换完成的信息后,客户端发出任务指示信号的异步跨域请求。与postMessage不同的是,SVG_JS连接是由客户端发出的,而且可以多次发送,最重要的是相对于字符串类型的指示消息,SVG_JS技术发送的解析不易出错。不同格式的项目任务信息经过发送和接收后生成的指示信息并不一致,如表2所示。
客户端通过项目任务位置向存储请求转换结果,对项目任务管理进行统一指示调度。在发送和接收的指示信息支持各种项目任务的信息类型。如表2所示,Exce1格式与Word格式的传输误差率有效的控制在15%以内,且接收文件大小占用空间将缩小,而Exce1格式信息丢失率仅为2.38%;PDF格式与PPT格式传输误差率有效的控制在18%以内,且接收文件大小占用空间将变大,而PDF格式的信息丢失率为_7.63%。这是由于Exce1格式。因此选用Exce1格式和PDF格式传输项目任务信息可减小用户统一调度的误差,传统的项目任务信息存储在Exce1格式下,也说明了本研究的合理性。同时,客户端的调度指示信息需要根据要加载的信息进行动态调度,并向同步服务器发送syn信息。总之,以上的各种指示信息对项目管理者都是透明的,用户只需要上传本地项目任务信息就可以在网站服务中进行编辑了。
本文在现有的网络模拟器发展的基础上,利用SVG技术和JS技术相结合的方式,给出了基于SVG_JS技术的项目管理模拟方法。针对企业管理者与项目任务进度信息管理过程中实时调度的问题,将SVG_JS技术模拟方法与项目管理方法结合起来,使得各区域项目者与企业管理者可以分享和集成项目管理中的实时进度信息。在SVG_JS技术的基础上引入B/S构架下的HTML5信息机制postMessage来现实核心模拟程序和网站服务。对模拟的8个项目任务指示信息,SVG_ JS技术可以有效的估计整个项目的工期,在分别建立的4种格式的项目任务信息传输过程中,结果显示出Exce1格式的信息在跨域传递中信息丢失率最低。
[1]陈瑜.建设工程信息化管理探讨[J].电脑知识与技术,2009 (22):6081_6082.
[2]李晓飞.论述计算机网络技术在项目信息管理中的运用[J].河南科技,2014(1):6.
[3]包锐.工程项目信息化管理成熟度模型研究[J].工程管理学报,2012(6):70_74.
[4]王宇静.基于项目信息门户(PIP)的工程项目信息管理研究[J].建筑管理现代化,2007(2):44_47.
[5]张冲.浅谈计算机网络技术在项目信息管理中的运用与发展[J].电子制作,2015(1):55.
[6]吴洪.计算机网络技术在项目信息管理中的运用[J].科技致富向导,2013(14):24.
[7]何欣,王蛟,党倩.SVG技术在用电信息采集系统中的应用[J].电力信息与通信技术,2011,9(12):64_67.
[8]吴树霖,阙佳凯.基于SVG技术的室内地图设计与实现[J].现代计算机,2013(24):75_78.
[9]王宜晓,张建.基于工作流的协同管理系统的研究与设计[J].计算机技术与发展,2014(7):233_236.
[10]王俊杰,蔡智聪,朱群雄.虚拟工厂安全仿真系统设计与实现[J].计算机与应用化学,2011,28(3):338_342.
[11]吴江,马瑞芳.事件驱动的B/S系统开发框架Echo研究[J].微电子学与计算机,2004,21(2):10_14.
[12]袁源.Windows server 2008服务器进程隐藏机制的研究与实现[J].数字技术与应用,2013(3):110.
[13]桂寿平,丁郭音,张智勇,等.基于Any1ogic的物流服务供应链牛鞭效应仿真分析[J].计算机应用研究,2010,27(1):138_140. [14]蒋晓阳,陈伟鹏,马丽华,等.基于Arena的应急预案优化结构设计与实现[J].计算机工程与设计,2010(9):2116_2119.
Project and task management based on SVG-JS technlcal
ZHANG Yu1,ZHANG Jia_ping2
(1.Business School,Hohai University,Nanjing 211100,China;2.Computer Science and Technology School,Shandong University,Jinan 250101,China)
For organizer and task management task interaction,simu1ation methods and means in summary,based on the sca1ab1e vector graphics through techno1ogy(SVG)and JavaScript scripting code techno1ogy(JS)combination,it wi11 be based on SVG techno1ogy simu1ation app1ied to business task management process,and trying to use techno1ogy based on WebService JS task management simu1ation program and Web services p1atform,according to the division number of different schedu1ing process to determine the amount of project tasks,whi1e achieving cross_project information in the B/S architecture domain transfer.Each project progress information respective1y use Exce1,transfer Word,PDF and PPT format four task information to business users process information 1oss rate was 2.38%in Exce1 format.Description of project task progress in enterprise management process,transmission Exce1 format through integrated schedu1ing is the best way to transmit information.
project and task managementj SVGj JSj B/S architecturej cross_domain information transfer
TN914
A
1674_6236(2016)10_0135_04
2016_02_26稿件编号:201602156
国家自然科学基金资助项目(61303005);国家社会科学基金资助项目(10bzx73)
张玙(1991—),女,安徽淮北人,硕士研究生。研究方向:企业管理。