The scale of modern software system is becoming larger, and the development and maintenance cost of software are increasing significantly. Thus, there is an increasing need on software structure evaluation and runtime monitoring. In recent years, researchers have applied Complex Network theory to software structure analysis and behavior modeling. Although significant progresses have been made in this research direction, there are still unsolved problems: software systems are typical complex artificial systems which contain multiple layers. Software has entities like Packages, Classes, Functions (Methods), Statements, etc. These entities are located in different layers and they mutually depend on each other to form the whole software system. Nevertheless, existing approaches usually consider only one layer to form software network model (e.g., Class Dependency Network). Thus, existing approaches have failed to model the multiple layers of software. In this project, we are planning to use the recently developed Multilayer Network theory in software analysis and modeling. The Multilayer Calling Network (M-CN) model will be developed in this project. Then the modeling process and characteristics of M-CN will be studied. New software structure metrics will be proposed based on M-CN and its community structures. The computing methods of node centrality metric in M-CN that is built based on software execution process will be studied. The software significant module identification approach will be proposed. Through the implementation of the project, the gap that between Multilayer Network theory and its applications in software analysis and modeling will be filled, and new theoretical and technical approaches in software structure analysis and behavior modeling will be developed.
当前软件系统规模日益增大,开发和维护成本急剧上升,对软件结构评测、运行时监控的需求日益强烈。近年来,研究者将复杂网络理论应用于软件系统分析和建模中,取得了显著进展,但仍存在尚未解决的问题:软件系统是典型的多层复杂人造系统,包含类、函数(方法)、语句等多个层次的实体,这些实体相互依存、调用,构成了软件系统。然而,已有研究往往仅考虑某单一层次的软件网络模型(如类依赖网络),没有在多个层次上形成有机统一。本项目拟将近期发展成熟的多层复杂网络理论应用于软件系统的分析和建模中,提出软件系统多层网络模型(M-CN),研究其构建方法及特性;基于M-CN及其社团结构,提出新的软件结构指标;研究面向软件执行过程及其M-CN的节点中心性计算方法,提出软件执行过程中重要模块定位方法。本项目的实施,将有望填补多层网络理论应用于软件系统分析和建模研究的空白,在软件系统结构分析、行为建模方面形成新的理论方法和技术突破。
随着技术进步和应用的深入,软件系统的规模和复杂度日益增长,缺陷和漏洞急剧增多,对软件结构评测、缺陷及漏洞分析的需求日益强烈。与此同时,软件系统在多个层次上体现出典型复杂网络的特性。本项目提出了软件系统多层网络模型建模方法,构建了软件系统类依赖网络和文件依赖网络;基于构建的网络,将k核分解理论应用于上述网络中的软件缺陷和漏洞分布规律挖掘,发现了软件系统缺陷和漏洞分布的共性规律;提出了基于网络表示学习的软件缺陷预测方法node2defect;基于挖掘到的缺陷分布共性规律,提出了一个简单但高效的等式top-core,对工作量感知缺陷预测模型生成的可疑类列表进行重新排序。通过基于18个大型开源软件系统的实证研究和实验,论证了软件系统缺陷和漏洞分布规律的普遍性,证明了所提出的node2defect方法和top-core等式的有效性。.本项目研究过程中,项目负责人作为主要完成人,获得2017年国家科技进步二等奖一项。研究成果在IEEE TSE,IEEE TIFS,ACM/IEEE ASE 2018等国际期刊和会议上发表论文5篇,申请国家发明专利1项,培养博士后1人,硕士2人。所发表的5篇论文中,4篇论文为中国计算机学会(CCF)A类期刊及会议论文。完成了项目计划书所规定的各项目标。
{{i.achievement_title}}
数据更新时间:2023-05-31
演化经济地理学视角下的产业结构演替与分叉研究评述
基于分形L系统的水稻根系建模方法研究
城市轨道交通车站火灾情况下客流疏散能力评价
惯性约束聚变内爆中基于多块结构网格的高效辐射扩散并行算法
圆柏大痣小蜂雌成虫触角、下颚须及产卵器感器超微结构观察
基于复杂网络理论的城市多层交通网络建模、分析与优化
基于复杂网络理论的脑功能结构分析和多尺度建模
物理耦合软件时间行为建模和分析方法研究
软件协同的行为建模与分析技术研究