On the Shape of Circular Dependencies in Java Programs

Australian Software Engineering Conference(2014)

引用 25|浏览58
暂无评分
摘要
Circular dependencies between software artefacts are widely considered as problematic. However, empirical studies of Java programs have shown that most programs are riddled with circular dependencies. This seems to imply that not all circular dependencies are as detrimental to software quality as previously thought. Clearly, a better understanding of the types of circular dependency and their effect on software quality is required. In this paper, we provide precise definitions for different types of circular dependencies, analyse their topology and investigate the relationship between circular dependencies and the package containment tree. Our analysis is based on the popular Qualities Corpus data set. We find that in package dependency graphs, most circular dependencies are \"package local\": they are confined to branches of the package containment tree where they form around parent packages. Existing research indicates that these dependencies may not be critical. This may explain why circular dependencies are so common in widely-used real-world programs.
更多
查看译文
关键词
cyclic dependency, software quality, java, topology, software design,topology,measurement,software design,shape,algorithm design and analysis,classification algorithms,circular dependency,java,software quality
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要