IEEE Trans Cybern. 2023 May;53(5):2703-2716. doi: 10.1109/TCYB.2022.3164767. Epub 2023 Apr 21.
Building a quality service-based system (SBS) is one of the most important research topics in software engineering. Many studies investigate intelligent methods to simplify the process of building SBSs. In particular, some keyword-based SBS building methods allow service users to automatically build an SBS by only providing a few of keywords. This type of work usually constructs a directed weighted graph of a service repository. A set of minimum-weight group Steiner trees (MSTs) is extracted from the graph to represent the service functions and their relations. However, to the best of our knowledge, none of the existing keyword-based SBS building methods allow the relaxation of the function requirements for a user. A relaxed SBS may achieve a comparable functionality versus a complete SBS containing all the query functions. To fill in the above gap, we define a new problem: a bounded skyline SBS building problem, whose solution is more adaptive and less limited than the traditional keyword-based SBS building methods. To solve this problem, we propose two algorithms based on skyline query, dynamic programming, and lower bound pruning. In the experiments, we collect real-world datasets and label the nodes with keywords. We conduct a comprehensive study to demonstrate the time efficiency of our algorithms on automatically finding SBSs. We make the annotated real-world datasets and our source code open to peer researchers.
构建基于质量的服务系统 (SBS) 是软件工程中最重要的研究课题之一。许多研究都在探讨智能方法来简化 SBS 的构建过程。特别是,一些基于关键字的 SBS 构建方法允许服务用户仅通过提供几个关键字就自动构建 SBS。这种类型的工作通常构建服务存储库的有向加权图。从图中提取一组最小权重的组 Steiner 树 (MST) 来表示服务功能及其关系。然而,据我们所知,现有的基于关键字的 SBS 构建方法都不允许放宽用户对功能的要求。一个放松的 SBS 可以实现与包含所有查询功能的完整 SBS 相当的功能。为了填补上述空白,我们定义了一个新问题:有界天际线 SBS 构建问题,其解决方案比传统的基于关键字的 SBS 构建方法更具适应性和更少限制。为了解决这个问题,我们提出了两种基于天际线查询、动态规划和下界剪枝的算法。在实验中,我们收集了真实世界的数据集并使用关键字标记节点。我们进行了全面的研究,以展示我们的算法在自动查找 SBS 方面的时间效率。我们开放了带注释的真实世界数据集和我们的源代码,供同行研究人员使用。