Abstract
We consider the difficulty in deriving and validating new scales of measurement for modular cohesion. We show that currently derived objective measures cannot predict, or measure, a scale of cohesion that has an empirical relation system, for which a “high degree of interpersonal agreement” exists. However, we demonstrate empirically that it is feasible to predict low levels of a cohesion scale with an observed empirical relation. For this scale there exists agreement to make the observational distinctions that form the empirical relation system. Our statistically derived prediction systems use information flow measures and are available at architectural and detailed design. These prediction systems have been validated and we have determined their predictive capability using cross-validation. Within the limits of their external validity, we discuss how these and future prediction systems can be used to improve modular cohesion. For example, improvements may be achieved by using a simple cut-off value for fanout to predict modules that lack cohesion.
Similar content being viewed by others
References
Agresti, A. 1990. Categorical Data Analysis, New York, John Wiley & Sons, Inc.
Basili, V. R., Briand, C., and Melo, W. L. 1996. A Validation of object-oriented design metrics as quality indicators. IEEE Trans. on S. E. 22(10): 751-761.
Bate, G., Simpson, H., Jackson, K., and Reiddiough, H. R. 1986. Special issue on MASCOT 3. Software Engineering Journal 1(3): 95-102.
Bieman, J. M. and Kang B-K. 1998. Measuring design-level cohesion. IEEE Trans. on S. E. 24(2): 111-124.
Bieman, J. and Ott, L. 1994. Measuring functional cohesion, IEEE Trans. on S. E. 20(8):644-657.
Booch, G. 1987. Software Engineering with Ada, 2nd Ed., Menlo Park, CA, Benjamin/Cummings.
Briand, L., Morasca, S., and Basili, V. 1996. Defining validating high-level design metrics. CS-TR 3301, College Park, MD: Univ. Of Maryland.
Briand, L. C., Morasca, S., and Basili, V. R. 1996. Property-based software engineering measurement, IEEE Trans. S. E. 22(1): 68-85.
Diebolt, J. and Eddie, H. S. Ip. 1996. Stochastic EM: Method and Application, Markov Chain Monte Carlo in Practice. Editors Gilks, W. R., Richardson, S., and Spiegelhalter, D. J., London, UK, Chapman and Hall.
Emerson, T. J. 1984. A Discriminant metric for module cohesion. Proceedings of the 7th Int. Conf. on S. E. IEEE, Orlando, USA. 26–29 March, pp. 294-303.
Fenton, N. 1994. Software Measurement:A necessary scientific basis, IEEE Trans. on S. E. 20(3): 199-206.
Fenton, N. E. and Pfleeger, S. L. 1997. Software Metrics: A Rigorous and Practical Approach. 2nd Edition. Revised Printing, Boston, MA, PWS Publishing.
Henry, S. and Kafura, D. 1981. Software structure metrics based on information flow. IEEE Trans. on SE. SE 7(5):510-518.
Hosmer, D. W. and Lemeshow, S. 1989. Applied Logistic Regression, New York, John Wiley & Sons Inc.
Hull, M. E. C., O 'Donoghue, P. G., and Hagan, B. J. Development methods for real-time systems. The Computer Journal 34(2): 164-172.
Ince, D. and Shepperd, M. 1989. An empirical and theoretical analysis of an information flow based design metric. Proc. European Soft. Conf. 11-16
Jackson, M. A. 1975. Principles of Program Design, London, UK, Prentice Hall Int.
Kafura, D. and Canning, J. 1985. A validation of software metrics using many metrics and two resources. 8th Int. Conf. on S. E., IEEE Comp. Soc. Press, pp. 378-385.
Kang, B-K. and Bieman, J. M. 1998. Using design abstractions to visualize quantify and restructure software. J. of Systems and Software 42 175-187.
Kitchenham, B. A., Pickard, L. M., and Linkman, S. J. 1990. An evaluation of some design metrics. Software Engineering Journal 5(1): 50-58.
Kitchenham, B., Pfleeger, S. L., and Fenton, N. 1995. Towards a framework for software measurement validation. IEEE Trans. on S. E. 21(12): 929-944.
Kyburg, H. E. 1984. Theory and Measurement, Cambridge, Great Britain, Cambridge University Press.
Lakhotia, A. 1993. Rule-based approach to computing module cohesion. Proc. 15th In'l. Conf. on S. E., IEEE, pp. 35-44.
Lederer, A. L., Mirianio, R., Neo, B. S., Pollard, C., Prasad, J., and Ramamurthy, K. 1990. Information system cost estimating:A management perspective. MIS Quarterly 14(2):159-178.
McCullagh, P. and Nelder, J. A. 1983. Generalized Linear Models, London, UK, Chapman and Hall Ltd.
Moses, J., Farrow, M., and Smith, P. 1999. Cohesion prediction using information flow:An empirical feasibility study and comparison using students as inexperienced designers. Information and Software Technology 41(13): 887-905.
Myers, R. H. J. 1990. Classical and Modern Regression with Applications, 2nd Ed. Duxbury Advanced Series in Statistics and Decision, Boston, MA, PWS-Kent Publishers.
Neil, M., Littlewood, B., and Fenton, N. 1996. Applying Bayesian belief networks to system dependability assessment, safety critical systems—The convergence of high tech and human factors. Proc. 4th Safety Critical Systems Group, pp. 71-94.
Ott, L. M. and Thuss, J. L. 1989. The relationship between slices and module cohesion. IEEE Proc. 11th Int'l Conf. Software Engineering, pp. 198-204.
Pfleeger, S. L. 1995. Experimental design and analysis in software engineering. Annals of Software Engineering 1: 219-253.
Pickard, M. M. and Carter, B. D. 1995. A eld study of the relationship of information flow and maintainability of COBOL programs. Information and Software Technology 37(4): 195-202.
Roberts, F. S. 1979. Measurement Theory with Applications to Decision Making, Utility and Social Sciences, Reading, MA, Addison-Wesley.
Robinson, P. J. 1992. Hierarchical Object-Oriented Design, London, UK, Prentice-Hall Int.
Rombach, H. D. 1987. A controlled experiment on the impact of software structure on maintainability. IEEE Trans. Software Eng., pp. 344-354.
Shepperd, M. J. 1990. Design metrics:An empirical analysis. Soft. Eng. Journal 5(1): 3-10.
Smith, J. Q. 1992. Decision Analysis a Bayesian Approach, London, Great Britain, Chapman and Hall.
Stevens, W. P., Myers, G. J., and Constantine, L. L. 1974. Structured design, IBM Systems Journal 2: 115-139.
Woodward, M. R. 1993. Difficulties using cohesion and coupling as quality indicators. Software Quality Journal 2: 109-127.
Yourdon, E. and Constantine, L. L. 1979. Structured Design, Englewood Cliffs, NJ, Yourdon Press.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Moses, J., Farrow, M. & Smith, P. Statistical Methods for Predicting and Improving Cohesion Using Information Flow: An Empirical Study. Software Quality Journal 10, 11–46 (2002). https://doi.org/10.1023/A:1015720832562
Issue Date:
DOI: https://doi.org/10.1023/A:1015720832562