近年来,自适应软件是软件工程领域的研究热点.研究者们从不同角度对如何促进和提高软件系统的自适应进行了大量研究,有的以体系结构为中心研究软件的自适应,有的则从需求的角度进行研究.但是,从软件系统的流程片段自适应重用的角度来研究软件自适应,类似的研究工作还很少.借鉴软件控制论中的思想来研究流程片段的自适应重用,基于受控的Markov链模型来探讨流程片段的最优查询策略.提出了针对流程片段查询特殊应用环境下的CMC(controlled Markov chain)模型,并对该模型进行了优化处理.基于逐次最小二乘法,进一步提出了流程自适应查询策略,该策略充分利用流程片段的历史查询信息,通过在线参数调整,能够帮助查询人员及时调整和优化查询策略.Matlab环境下的仿真实验和真实流程数据集下的实验,共同验证了该模型和算法的有效性和可行性.
Recent research on the self-adaptive software is one of the new focuses in the field of software engineering. The researchers pay more attention on how to improve the adaptation of software from different angles. While some focus on the architecture information, others pay more attention to the requirement. However as of now, there is little work about the process fragments reuse in self-adaptive software. This paper employs the idea of software cybernetics to study the process fragments reuse, and searches the optimal query method based on the model of controlled Markov chain. Firstly, a CMC model in the context of process fragments query is proposed, followed by subsequent optimizations. Then, a self-adaptive query strategy is addressed based on the iterative least square method. With the on-line parameter adjustment, this strategy utilizes the history of process fragment query to help people adjust strategies. The experiments in the context of Matlab and real process dataset validate the efficiency and feasibility of the model and algorithm presented in this paper.