The C programming language
A software metric system for module coupling
Journal of Systems and Software - Special issue on the Oregon Metric Workshop
ICSE '94 Proceedings of the 16th international conference on Software engineering
The pragmatic programmer: from journeyman to master
The pragmatic programmer: from journeyman to master
ACM Computing Surveys (CSUR)
Evolution patterns of open-source software systems and communities
Proceedings of the International Workshop on Principles of Software Evolution
The C++ Programming Language
A Comprehensive Empirical Validation of Design Measures for Object-Oriented Systems
METRICS '98 Proceedings of the 5th International Symposium on Software Metrics
Quality Impacts of Clandestine Common Coupling
Software Quality Control
Mining Version Histories to Guide Software Changes
Proceedings of the 26th International Conference on Software Engineering
Categorization of Common Coupling and Its Application to the Maintainability of the Linux Kernel
IEEE Transactions on Software Engineering
Mining evolution data of a product family
MSR '05 Proceedings of the 2005 international workshop on Mining software repositories
IBM Systems Journal
An empirical study on evolution of API documentation
FASE'11/ETAPS'11 Proceedings of the 14th international conference on Fundamental approaches to software engineering: part of the joint European conferences on theory and practice of software
Hi-index | 0.00 |
In this research, we investigate the role of common coupling in evolving software systems. It can be argued that most software developers understand that the use of global data has many harmful side-effects, and thus should be avoided. We are therefore interested in the answer to the following question: if global data does exist within a software project, how does global data usage evolve over a software project's lifetime? Perhaps the constant refactoring and perfective maintenance eliminates global data usage, or conversely, perhaps the constant addition of features and rapid development introduce an increasing reliance on global data? We are also interested in identifying if global data usage patterns are useful as a software metric that is indicative of an interesting or significant event in the software's lifetime. The focus of this research is twofold: first to develop an effective and automatic technique for studying global data usage over the lifetime of large software systems and secondly, to leverage this technique in a case-study of global data usage for several large and evolving software systems in an effort to reach answers to these questions.