Loading [MathJax]/extensions/MathMenu.js
Cohesion is structural, coherence is functional: different views, different measures | IEEE Conference Publication | IEEE Xplore

Cohesion is structural, coherence is functional: different views, different measures


Abstract:

Traditionally, the cohesion of a software component is considered to be a characteristic of its internal structure, and most cohesion measures proposed so far measure coh...Show More

Abstract:

Traditionally, the cohesion of a software component is considered to be a characteristic of its internal structure, and most cohesion measures proposed so far measure cohesion through the similarity of its constituent parts. However, cohesion may also be interpreted as an externally observed functional property, without regard for the component's internal structure. One way of measuring functional cohesion would be to measure the similarity of usage patterns of a component's external clients. One such measure is defined in this paper using a generic system model and its associated mechanism for calculating object sizes as the foundation. The new measure is simple to understand, easy to automate, and flexible enough to be used at different levels of abstraction. Moreover, it satisfies the most important properties that a cohesion measure is expected to satisfy. Examples are provided to illustrate the concept and its possible uses in analyzing and re-packaging of the components of a software system.
Date of Conference: 04-06 April 2001
Date Added to IEEE Xplore: 07 August 2002
Print ISBN:0-7695-1043-4
Print ISSN: 1530-1435
Conference Location: London, UK
References is not available for this document.

1 Introduction

The object-oriented paradigm is used extensively throughout the industry, yet is still in need of a sound and comprehensive set of measures. Although a number of different measures have been proposed specifically for the object-oriented software systems [12], [16], a universal agreement about the optimal set of measures and measurement techniques has yet to be arrived at. This statement holds for measures of size and complexity, but to an even greater extent for measures of quality. Among the most important factors of quality are measures of coupling and cohesion of software products. This holds not only for traditional structured design paradigm, but also for modern object-oriented approaches [1]. In theory, both measures should be used to assess the quality of the design well before the actual code is written, which makes them potentially very attractive for the purposes of early estimation [18]. Thus, they could help improve our understanding of software product properties and ultimately improve the Quality of software designs.

Select All
1.
E. V. Berard, Essays on Object-Oriented Software Engineering, Englewood Cliffs, NJ:Prentice-Hall, vol. I, 1993.
2.
J. M. Bieman and L. M, "on. Measuring functional cohesion", IEEE Transactions on Software Engineering, vol. 20, no. 8, pp. 644-658, Aug. 1994.
3.
L. C. Briand, J. W. Daly and J. Wüst, "A unified framework for cohesion measurement in object-oriented systems", Empirical Software Engineering, vol. 3, pp. 65-117, 1998.
4.
L. C. Briand, J. W. Daly and J. Wüst, "A unified framework for coupling measurement in object-oriented systems", IEEE Transactions on Software Engineering, vol. 25, no. 1, pp. 91-121, 1999.
5.
L. C. Briand, S. Morasca and V.R. Basili, "Property-based software engineering measurement", IEEE Transactions on Software Engineering, vol. 22, no. 1, pp. 68-86, Jan. 1996.
6.
S. N. Cant, B. Henderson-Sellers and D. R. Jeffery, "Application of cognitive complexity metrics to object-oriented programs", Journal of Object-Oriented Programming, vol. 7, no. 4, pp. 52-63, July-Aug. 1994.
7.
S. N. Cant, D. R. Jeffery and B. Henderson-Sellers, "A conceptual model of cognitive complexity of elements of the programming process", Information and Software Technology, vol. 37, no. 7, pp. 351-362, July 1995.
8.
D. N. Card and R. L. Glass, Measuring Software Design Quality, Englewood Cliffs, NJ:Prentice Hall, 1990.
9.
S.R. Chidamber and C.F. Kemerer, "A metrics suite for object oriented design", IEEE Transactions on Software Engineering, vol. 20, no. 6, pp. 476-493, June 1994.
10.
J. Eder, G. Kappel and M. Schreft, "Coupling and cohesion in object-oriented systems", technical report 02/93, 1993.
11.
N. E. Fenton and S. L. Pfleeger, "Software Metrics" in a Rigorous and Practical Approach, London:PWS Publishing Company, 1996.
12.
B. Henderson-Sellers, "Object-Oriented Metrics" in Measures of Complexity, Prentice Hall:Upper Saddle River, NJ, 1996.
13.
B. Henderson-Sellers, L. L. Constantine and I.M. Graham, "Coupling and cohesion (towards a valid metrics suite for object-oriented analysis and design)", Object Oriented Systems, vol. 3, no. 3, pp. 143-158, Sept. 1996.
14.
M. Hitz and B. Montazeri, Measuring coupling and cohesion in object-oriented systems. In Proceedings International Symposium on Applied Corporate Computing, Oct.1995.
15.
W. Li and S. Henry, "Object-oriented metrics that predict maintainability", Journal of Systems and Software, vol. 23, no. 2, pp. 111-122, Nov. 1993.
16.
M. Lorenz and J. Kidd, Object-Oriented Software Metrics: a Practical Guide, Englewood Cliffs. NJ:Prentice Hall, 1994.
17.
V. B. Mišić and S. Moser, "Formal approach to metamodelling: A generic object-oriented perspective", Proceedings of the 16th Conference on Conceptual Modeling ER 97, pp. 243-256, Nov.1997.
18.
S. Moser, B. Henderson-Sellers and V. B. Mišić, "Cost estimation based on business models", Journal of Systems and Software, vol. 49, no. 1, pp. 33-42, 1999.
19.
M. Page-Jones, The Practical Guide to Structured Systems Design, Englewood Cliffs, NJ:Yourdon Press, 1988.
20.
S. L. Pfleeger, "Software Engineering" in The Production of Quality Software, Macmillan, New York, 1991.
21.
W. P. Stevens, G. J. Myers and L. L. Constantine, "Structured design", IBM Systems Journal, vol. 13, no. 2, pp. 115-139, 1974.
22.
S. A. Whitmire, Object-Oriented Design Measurement, New York, NY:John Wiley and Sons, 1997.

Contact IEEE to Subscribe

References

References is not available for this document.