共查询到20条相似文献,搜索用时 466 毫秒
1.
张婷 《计算机光盘软件与应用》2014,(10):60-61
复杂软件结构可以看作是一个有向网络图,该有向网络图的网络结点为软件系统的某种粒度单元,比如包、类、组件等都可以称为网络结点,他们之间的依赖关系就构成了整个软件网络。本文对软件网络做了简要介绍,研究和分析了软件依赖关系及其统计特性,并对网络结点在复杂软件中的影响进行了分析,最后提出了软件网络关键结点这一概念。 相似文献
2.
现实社会存在大量复杂网络,随着大数据时代的来临,复杂网络数据规模不断扩大,难以进行算法分析和可视化展示.针对复杂网络小世界、无标度特性,提出基于K-sup稠密子图的复杂网络概要算法,利用三角形在网络中的同质性和传递性发现复杂网络中的稠密子图,结合模块度最大化,将子图中相似的节点归并为超点;运用分层结构存储概要图,并进行可视化显示.该算法能对大规模复杂网络进行有效压缩,保持原网络的性质.在5个真实数据集上进行对比实验,显示出该算法在压缩率、幂率性和平均聚类系数的保持等指标优于已有算法,同时在大规模数据下具有保持网络拓扑结构且支持概要图分层可视化的优点. 相似文献
3.
4.
研究了开源软件的网络结构中3节点子图的显著性,发现软件规模越大局部结构的网络化趋势越显著.树型的3节点子图呈现下降趋势,在封闭的3节点子图中,除部分趋势不显著外,大都呈现上升趋势.根据3节点子图的显著性剖面,软件网络大致可以分为3类,与已发现的4个有向复杂网络超级族中的3个基本一致,大部分软件网络的局部结构与生物网络相... 相似文献
5.
面向对象程序整体结构及其特性的逆向分析和可视化在软件维护、软件重用等过程中起着重要作用。现有的逆向工程工具尽管可以通过对程序代码的静态分析自动获取类模型,但是在自动布图方面仍存在一些明显的问题,特别是难以直观展现类之间的耦合性、聚集效应等程序整体结构的重要特性,从而影响其实际应用。Force-Directed Layout算法能够自然展现复杂结构的耦合关系和聚集现象,因此,将其应用于类图的逆向生成,使其在充分展示程序整体结构的同时,清晰展现类之间的耦合性和聚集效应等结构特征,为软件结构演化分析、缺陷分布分析等提供辅助支持。据此,开发了软件分析与测试工具系列QESat的子工具——基于拉力算法的类图可视化工具QESat/FCD(QualityEasy-Software Analysis and Testing Tools:Force-Directed Class Diagram),通过实例展示了其在大型类图结构特性方面的展现效果。 相似文献
6.
针对大型船舶的联网设备的网络特性,提出了一种用于研发联网设备网络协议和检测网络运行状态的模拟器设计方案。该方案采用PC104作为硬件架构,在Linux平台上使用面向对象技术对各联网设备的网络特性进行建模,实现对各联网设备网络特性的模拟;并采用编写脚本文件的方法增强了模拟器的仿真灵活性和软件扩展能力。该模拟器构建的网络实验平台,能够加快联网设备和网络协议的研发速度、检测网络性能和降低开发费用。 相似文献
7.
软件静态结构的依赖网络建模方法与特性分析 总被引:3,自引:0,他引:3
现有的软件复杂网络建模方法,对模型的定义各不相同,缺少统一的框架,导致不同编程语言、不同粒度的软件模型分析对比困难。针对软件的静态结构,分析对比了现有建模方法的特点,提出了软件依赖网络建模方法,将软件系统抽象为计算服务提供者以及它们之间的依赖关系,实现了不同粒度下网络模型的直观映射;通过对Java软件依赖网络的实例分析,证明其具有小世界、高聚类系数的特性,入度基本服从幂率分布,出度基本服从带指数截断的幂率分布,并指出这些网络特性的软件工程含义,探讨了它们对软件开发和维护的指导意义。 相似文献
8.
出了基于复杂网络研究操作系统内核模块演化的方法.通过研究223个Linux版本(从1.1.0到2.4.35)内核模块函数调用图的度分布和平均路径长度,发现函数调用图具有无标度和小世界特征.根据复杂网络中平均路径长度与网络节点的关系,提出了通过平均路径长度斜率发现演化过程中的异常点,从而发现内核模块结构重大变化的方法.提... 相似文献
9.
目前日益复杂的城市交通网络使得人们对交通网络的区域划分提出了新的需求.提出一种基于分裂和划分思想的交通网络层次聚类算法FEMC-means(frequency edges in maximal cliques-means),首先通过极大团中的频繁边发现将复杂交通网络分裂为一系列骨干图,而后以骨干图为聚类中心点,根据节点与中心的平均距离将原始交通网络聚合成若干子图,从而实现公共交通网络根据拓扑结构和网络特性的层次聚类.以北京市公交网络为实验场景.实验结果表明,用算法划分的绝大部分簇在地理上较为集中地覆盖了北京市不同交通区域,与GN算法以及快速算法划分结果对比,具有更好的地理表征意义和更优的结构聚类评价值. 相似文献
10.
目前,实达软件下属实达朗新和东方龙马都已开发出基于Linux的应用软件产品。实达朗新是国内最早开发出Linux应用软件的企业,最早的一个网络安全产品Netshine(Ⅰ)防火墙,已经取得安全部测评,给予经营许可证; Linux在我国的切入点首先是WEB站点市场,即利用Linux极强的网络性能和免费的特性,建立廉价高效的WEB服务器,东方龙马于日前推出Linux下的中文Internet/Intranet服务器应用软件ANET1.0就是这样的 相似文献
11.
软件中的网络化特征及其对软件质量的贡献 总被引:9,自引:0,他引:9
现实世界中的许多复杂系统都可以使用网络模型进行描述,复杂网络的结构和性质研究已经成为引人注目的领域。软件作为一类复杂系统,也可以使用网络化的方法进行定量分析。文章首先介绍了度量网络特征的参数,然后将复杂网络理论引入人工设计和实现的软件中,把其中的实体和关系转换成为网络拓扑的形式,通过对四个不同规模并经过详细设计的Java类库进行实验验证和数值分析,发现其中的无尺度特征、小世界现象和脆弱性/鲁棒性并存的特点。根据这些结论,提出利用网络拓扑特征改善软件系统的设计、开发和测试方法。这些结果对提高软件质量具有有益的启示和指导意义。 相似文献
12.
复杂网络与网络化软件系统 总被引:1,自引:0,他引:1
左开中 《计算机应用与软件》2009,26(5)
复杂网络理论是对复杂系统的高度抽象,实证研究发现网络化复杂软件系统的拓扑结构具有复杂网络的特征.复杂网络理论的最新研究成果,为网络化复杂软件系统的开发提供了新的数学基础.提出一种基于复杂网络的网络化软件工程,探讨了复杂网络理论在网络化复杂软件系统的建模、测试和度量中的应用. 相似文献
13.
14.
15.
Software execution processes as an evolving complex network 总被引:2,自引:0,他引:2
Inspired by the surprising discovery of several recurring structures in various complex networks, in recent years a number of related works treated software systems as a complex network and found that software systems might expose the small-world effects and follow scale-free degree distributions. Different from the research perspectives adopted in these works, the work presented in this paper treats software execution processes as an evolving complex network for the first time. The concept of software mirror graph is introduced as a new model of complex networks to incorporate the dynamic information of software behavior. The experimentation paradigm with statistical repeatability was applied to three distinct subject programs to conduct several software experiments. The corresponding experimental results are analyzed by treating the software execution processes as an evolving directed topological graph as well as an evolving software mirror graph. This results in several new findings. While the software execution processes may demonstrate as a small-world complex network in the topological sense, they no longer expose the small-world effects in the temporal sense. Further, the degree distributions of the software execution processes may follow a power law. However, they may also follow an exponential function or a piecewise power law. 相似文献
16.
The quality of a software system is largely determined by its internal structures which always degrade over the software evolution. Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the optimized class structures with the real class structure in software systems and inspecting the attribute-method networks. The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated in comparison with existing methods. 相似文献
17.
Class structure refactoring of object-oriented softwares using community detection in dependency networks 总被引:2,自引:0,他引:2
Weifeng Pan Bing Li Yutao Ma Jing Liu Yeyi Qin 《Frontiers of Computer Science in China》2009,3(3):396-404
The quality of a software system is largely determined by its internal structures which always degrade over the software evolution.
Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming
when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software
systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between
them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method
networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the
optimized class structures with the real class structure in software systems and inspecting the attribute-method networks.
The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated
in comparison with existing methods. 相似文献
18.
Huan LI 《Frontiers of Computer Science》2009,3(3):373
Complex networks are everywhere. A typical example is software network. Basing on analyzing evolutive structure of the software networks, we consider accelerating growth of network as power-law growth, which can be more easily generalized to real systems than linear growth. For accelerating growth via a power law and scale-free state with preferential linking, we focus on exploring the generic property of complex networks. Generally, two scenarios are possible. In one of them, the links are undirected. In the other scenario, the links are directed. We propose two models that can predict the emergence of power-law growth and scale-free state in good agreement with these two scenarios and can simulate much more real systems than existing scale-free network models. Moreover, we use the obtained predictions to fit accelerating growth and the connectivity distribution of software networks describing scale-free structure. The combined analytical and numerical results indicate the emergence of a novel set of models that considerably enhance our ability to understand and characterize complex networks, whose applicability reaches far beyond the quoted examples. 相似文献
19.
Huan Li 《Frontiers of Computer Science in China》2009,3(3):373-380
Complex networks are everywhere. A typical example is software network. Basing on analyzing evolutive structure of the software
networks, we consider accelerating growth of network as power-law growth, which can be more easily generalized to real systems
than linear growth. For accelerating growth via a power law and scale-free state with preferential linking, we focus on exploring
the generic property of complex networks. Generally, two scenarios are possible. In one of them, the links are undirected.
In the other scenario, the links are directed. We propose two models that can predict the emergence of power-law growth and
scale-free state in good agreement with these two scenarios and can simulate much more real systems than existing scale-free
network models. Moreover, we use the obtained predictions to fit accelerating growth and the connectivity distribution of
software networks describing scale-free structure. The combined analytical and numerical results indicate the emergence of
a novel set of models that considerably enhance our ability to understand and characterize complex networks, whose applicability
reaches far beyond the quoted examples. 相似文献
20.
《Information and Software Technology》2014,56(10):1268-1288
ContextSoftware networks are directed graphs of static dependencies between source code entities (functions, classes, modules, etc.). These structures can be used to investigate the complexity and evolution of large-scale software systems and to compute metrics associated with software design. The extraction of software networks is also the first step in reverse engineering activities.ObjectiveThe aim of this paper is to present SNEIPL, a novel approach to the extraction of software networks that is based on a language-independent, enriched concrete syntax tree representation of the source code.MethodThe applicability of the approach is demonstrated by the extraction of software networks representing real-world, medium to large software systems written in different languages which belong to different programming paradigms. To investigate the completeness and correctness of the approach, class collaboration networks (CCNs) extracted from real-world Java software systems are compared to CCNs obtained by other tools. Namely, we used Dependency Finder which extracts entity-level dependencies from Java bytecode, and Doxygen which realizes language-independent fuzzy parsing approach to dependency extraction. We also compared SNEIPL to fact extractors present in language-independent reverse engineering tools.ResultsOur approach to dependency extraction is validated on six real-world medium to large-scale software systems written in Java, Modula-2, and Delphi. The results of the comparative analysis involving ten Java software systems show that the networks formed by SNEIPL are highly similar to those formed by Dependency Finder and more precise than the comparable networks formed with the help of Doxygen. Regarding the comparison with language-independent reverse engineering tools, SNEIPL provides both language-independent extraction and representation of fact bases.ConclusionSNEIPL is a language-independent extractor of software networks and consequently enables language-independent network-based analysis of software systems, computation of design software metrics, and extraction of fact bases for reverse engineering activities. 相似文献