电子学报 ›› 2016, Vol. 44 ›› Issue (11): 2688-2694.DOI: 10.3969/j.issn.0372-2112.2016.11.018

• 学术论文 • 上一篇    下一篇

一种基于规则的软件体系结构层性能演化优化方法

倪友聪1,2, 叶鹏3, 杜欣1, 陈明4, 肖如良1   

  1. 1. 福建师范大学软件学院, 福建福州 350117;
    2. 伦敦大学学院计算机科学学院, 英国伦敦 WC1E 6BT;
    3. 武汉纺织大学数学与计算机学院, 湖北武汉 430200;
    4. 湖南师范大学数学与计算机科学学院, 湖南长沙 410081
  • 收稿日期:2016-02-02 修回日期:2016-04-27 出版日期:2016-11-25 发布日期:2016-11-25
  • 通讯作者: 杜欣
  • 作者简介:倪友聪,男,1976年8月出生于安徽省肥西县.现为福建师范大学软件学院副教授、硕士生导师.主要研究领域为基于搜索的软件设计,软件体系结构等.E-mail:youcongni@foxmail.com;叶鹏,男,1976年12月出生于湖北省武汉市.现为武汉纺织大学数学与计算机学院讲师.主要研究领域为基于搜索的软件设计,软件体系结构等.E-mail:whuyp@126.com
  • 基金资助:

    国家自然科学基金(No.61305079,No.61370078,No.61402481);武汉大学软件工程国家重点实验室开放基金(No.SKLSE 2014-10-02);福建省自然科学基金(No.2015J01235);福建省教育厅JK类项目(No.JK2015006);湖南省教育厅资助科研项目(No.14C0680);河北省自然科学基金(No.F2015403046)

An Approach for Rule-Based Performance Evolutionary Optimization at Software Architecture Level

NI You-cong1,2, YE Peng3, DU Xin1, CHEN Ming4, XIAO Ru-liang1   

  1. 1. Faculty of Software, Fujian Normal University, Fuzhou, Fujian 350117, China;
    2. Department of Computer Science, University College London, London, WC1E 6BT, UK;
    3. College of Mathematics and Computer, Wuhan Textile University, Wuhan, Hubei 430200, China;
    4. College of Mathematics and Computer Science, Hunan Normal University, Changsha, Hunan 410081, China
  • Received:2016-02-02 Revised:2016-04-27 Online:2016-11-25 Published:2016-11-25

摘要:

目前基于规则的软件体系结构(Software Architecture,简记为SA)层性能优化方法大多未充分考虑优化过程中规则的使用次数和使用顺序的不确定性,导致了搜索空间受限而难以获取更优的性能改进方案.针对这一问题并以最小化系统响应时间为优化目标,文中首先定义一种基于规则的SA层性能优化模型RPOM,以将SA层性能优化抽象为求解最优规则序列的数学问题;然后设计一种支持SA层性能改进规则序列执行的框架RSEF;进一步提出一种采用约束检查、修复及统计学习机制的演化求解算法EA4PO;最后以Web应用为案例与已有方法进行实验对比.结果表明:(1)本文方法较已有方法可以获取更短的系统响应时间;(2) EA4PO所引入的统计学习机制可显著提高演化求解算法的收敛速度和解质量.

关键词: 性能评估, 性能优化, 软件体系结构, 基于搜索的软件工程

Abstract:

In the existing rule-based performance optimization approaches at software architecture (SA) level,it has not been fully concerned that the count and the order of each rule usage are uncertain in the optimization process.As a result,the search space for performance improvement is limited and the better solutions are hard to find.Aiming to this problem and taking the system response time minimum as the optimization objective,firstly,a model called RPOM is defined to abstract rule-based software performance optimization at SA level as the mathematical problem for solving the optimal rule sequence.Secondly,a framework named RSEF is designed to support the execution of a rule sequence.Furthermore,an evolutionary algorithm named EA4PO is proposed to find the optimal performance improvement solution by introducing statistical learning,constraint checking and repairing.Finally,a web application is taken as a case in the experiments for comparing with the existing methods.The experimental results indicate that the shorter system response time can be obtained and the statistical learning can obviously improve the convergence rate and the solution quality in our approach.

Key words: performance evaluation, performance optimization, software architecture, search-based software engineering

中图分类号: