摘要
针对业务流程管理中的建模问题,本文提出了一种贯穿流程的挖掘、分解、重组与验证四类业务流程核心管理环节的ADCV方法,阐述了该方法的组成结构,设计了相应算法,利用其对软件测试工作流进行管理与监控,并基于Petri网实现了相应的分析工具,同时将该工具应用于软件测试工作流的案例处理。具体完成以下工作: (1)基于ADCV方法,按照流程获取(Acquisition)、流程分解(Decomposition)、流程组合(Combination)以及流程验证(Verification)的方式依次地建立工作流模型。首先,在经典α算法的基础之上扩展了一种基于事件状态的αS算法,以从日志数据中挖掘流程模型;其次,提出了一种基于T-不变量的流程分解算法,实现流程模型的自动化分解;然后,使用加权时间Petri网完成流程的组合与重组建模,改进了传统覆盖树算法来构建覆盖树模型,并采用库所差异验证算法对比重组前、后两个模型析的库所变化;最后,利用可达性分析算法对重组模型进行验证分析。 (2)按照ADCV方法,对RSA计时攻击任务的软件测试工作流展开实例分析。利用随机Petri网(Stochastic Petri Net,SPN)对软件测试工作流进行建模与分析,并将SPN模型转换为同构马尔可夫链模型,以发现测试过程中存在的瓶颈环节。 (3)将基于ADCV方法并采用MVC设计模式和Java Swing技术开发的分析工具应用于软件测试工作流的实例中,实现对测试过程的建模与管理。进而,可以保障相关软件可靠性增长模型(Software Reliability Growth Models,SRGMs)参数估计的准确性,最终提高软件产品的质量。