System design with ADA
Evaluating Software Complexity Measures
IEEE Transactions on Software Engineering
The annotated C++ reference manual
The annotated C++ reference manual
Advanced C++ programming styles and idioms
Advanced C++ programming styles and idioms
Towards a metrics suite for object oriented design
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Methodology for Validating Software Metrics
IEEE Transactions on Software Engineering
Object-oriented modeling and design
Object-oriented modeling and design
Object-oriented software metrics: a practical guide
Object-oriented software metrics: a practical guide
Reuse through inheritance: a quantitative study of C++ software
SSR '95 Proceedings of the 1995 Symposium on Software reusability
What every programmer should know about object-oriented design
What every programmer should know about object-oriented design
An investigation into coupling measures for C++
ICSE '97 Proceedings of the 19th international conference on Software engineering
A Unified Framework for Coupling Measurement in Object-Oriented Systems
IEEE Transactions on Software Engineering
Another metric suite for object-oriented programming
Journal of Systems and Software
Use of friends in C++ software: an empirical investigation
Journal of Systems and Software - Special issue on empirical studies of software development and evolution
Software Change Impact Analysis
Software Change Impact Analysis
Software Reflexion Models: Bridging the Gap between Design and Implementation
IEEE Transactions on Software Engineering
Software Measurement: A Necessary Scientific Basis
IEEE Transactions on Software Engineering
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Towards a Framework for Software Measurement Validation
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
Coupling Metrics for Object-Oriented Design
METRICS '98 Proceedings of the 5th International Symposium on Software Metrics
An Overview of Object-Oriented Design Metrics
STEP '97 Proceedings of the 8th International Workshop on Software Technology and Engineering Practice (STEP '97) (including CASE '97)
Journal of Software Maintenance: Research and Practice
Dynamic Coupling Measurement for Object-Oriented Software
IEEE Transactions on Software Engineering
An Empirical Study of the Use of Friends in C++ Software
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Building Defect Prediction Models in Practice
IEEE Software
Measuring the Impact of Friends on the Internal Attributes of Software Systems
SCAM '05 Proceedings of the Fifth IEEE International Workshop on Source Code Analysis and Manipulation
C How to Program, Fourth Edition
C How to Program, Fourth Edition
Identifying and characterizing change-prone classes in two large-scale open-source products
Journal of Systems and Software
Fine-Grained Software Metrics in Practice
ESEM '07 Proceedings of the First International Symposium on Empirical Software Engineering and Measurement
Quantitatively measuring object-oriented couplings
Software Quality Control
Using information retrieval based coupling measures for impact analysis
Empirical Software Engineering
IBM Systems Journal
What's up with software metrics? - A preliminary mapping study
Journal of Systems and Software
Using Relational Topic Models to capture coupling among classes in object-oriented software systems
ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
Hi-index | 0.00 |
Studies which consider the extent to which the encapsulation of a class is weakened by direct access to its hidden members (such as through the use of the friend construct in C++) are scarce, and those that do exist are based on metric suites where the enabling mechanism of the coupling is ignored. This can lead to conclusions of limited construct validity where incorrect causes of coupling are suggested. In this paper a suite of software metrics which measure the amount of coupling enabled by different C++ programming language constructs (such as friendship and inheritance) are proposed. The metrics presented are based on a formal data model which can be easily adapted for other OO languages. This formal approach removes the scope for ambiguity in the metric definitions. These metrics provide a more accurate reflection of the causative agents of coupling in Object Oriented Systems and their utility is illustrated in an empirical study towards the end of the paper.