skip to main content
10.1145/2089155.2089169acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

How much information do software metrics contain?

Published: 24 October 2011 Publication History

Abstract

Software metrics computation and presentation are considered an important feature of many software design and development tools. The System Grokking Technology developed by IBM research enables investigation, validation and evolution of complex software systems at the level of abstraction suitable for human comprehension. As part of our ongoing effort to improve the tool and offer more useful abstractions we considered adorning the presented information with software metrics. The difficulty in doing that is in selecting among the legions of metrics competing for both scarce screen space and for the architect's attention. In this paper, we describe a new criterion for evaluating the competing metrics based on a normalized version of Shannon's information theoretical content. We also give values of these in a large software corpus and for a large set of metrics.
Based on our measurements and this criterion, we can recommend the presentation of two metrics: module centrality, as measured by a variant of Google's classical page ranking algorithm, and module size, as measured by Chidamber and Kemerer's WMC metric.

References

[1]
Rigi: A visual tool for understanding legacy systems. http://www.rigi.csc.uvic.ca/, 2011. URL http://www. rigi.csc.uvic.ca/.
[2]
Source2value. http://www.omnext.net/source2value/, 2011. URL http://www.omnext.net/source2value/.
[3]
A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading, Mass., 1974.
[4]
O. Aktunc. Entropy-Based Measurement for Software: An Entropy-Based Measurement Framework for Component-Based Hierarchical Systems. VDM Verlag, Saarbrücken, Germany, Germany, 2008. ISBN 3639087259, 9783639087253.
[5]
P. S. Almeida. Balloon types: Controlling sharing of state in data types. In Proc. of the Eleventh European Conference on Object-Oriented Programming, (ECOOP'97), pages 32--59, Jyväskylä, Finland, June 9--13 1997. Springer-Verlag. ISBN 3-540-63089-9.
[6]
R. F. Andrian Marcus, Denys Poshyvanyk. Using the conceptual cohesion of classes for fault prediction in object-oriented systems. IEEE Trans. Software Eng., 34(2):287--300, 2008.
[7]
U. Brandes. A faster algorithm for betweenness centrality. Journal of Mathematical Sociology, 25:163--177, 2001.
[8]
S. R. Chidamber and C. F. Kemerer. A metrics suite for object oriented design. IEEE Transactions on Software Engineering., 20(6):476--493, 1994.
[9]
Y. Dajsuren, M. Goldstein, and D. Moshkovich. Modernizing legacy software using a system grokking technology. In 26th IEEE International Conference on Software Maintenance (ICSM '10), pages 1--7, Timisoara, Romania, Sept. 2010. IEEE Computer Society.
[10]
M. Gethers and D. Poshyvanyk. Using relational topic models to capture coupling among classes in object-oriented software systems. In ICSM '10, pages 1--10, 2010.
[11]
J. Y. Gil and I. Maman. Micro patterns in java code. SIGPLAN Not., 40(10):97--116, 2005. ISSN 0362-1340.
[12]
M. Goldstein and D. Moshkovich. System grokking - a novel approach for software understanding, validation, and evolution. In Proc. of the 7th International Conference on Next Generation Information Technologies and Systems, (NGITS 2009), pages 38--49, Haifa, Israel, June 16-18 2009. Springer-Verlag. ISBN 978-3-642-04940-8.
[13]
IBM. Rational Rhapsody. http://www-01.ibm.com/software/awdtools/rhapsody/, 2011.
[14]
K. Inoue, R. Yokomori, H. Fujiwara, T. Yamamoto, M. Matsushita, and S. Kusumoto. Component rank: Relative significance rank for software component search. In Proc. of the 25th International Conference on Software Engineering, (ICSE 2003), pages 14--24, Portland, Oregon, USA, May 3-10 2003. IEEE Computer Society.
[15]
G. Lajios. Software metrics suites for project landscapes. In Proc. of the 2009 European Conference on Software Maintenance and Reengineering., pages 317--318, Los Alamitos, CA, USA, 2009. IEEE Computer Society.
[16]
R. Lincke, J. Lundberg, and W. Löwe. Comparing software metrics tools. In Proc. of the 2008 international symposium on Software testing and analysis, (ISSTA'08), pages 131--142, New York, NY, USA, 2008. ACM. ISBN 978-1-60558-050-0.
[17]
M. Lorenz and J. Kidd. Object-oriented software metrics: a practical guide. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1994. ISBN 0-13-179292-X.
[18]
B. Neate, W. Irwin, and N. Churcher. Coderank: A new family of software metrics. In Proc. of the 17th Australian Software Engineering Conference, (ASWEC 2006), pages 369--378, Sydney, Australia, Apr. 18-21 2006. IEEE Computer Society. ISBN 0-7695-2551-2.
[19]
M. J. Ordoñez and H. M. Haddad. The state of metrics in software industry. In Proc. of the Fifth International Conference on Information Technology: New Generations, (ITNG 2008), pages 453--458, Las Vegas, Nevada, USA, Apr. 7-8 2008. IEEE Computer Society. ISBN 978-0-7695-3099-4.
[20]
L. Page, S. Brin, R. Motwani, and T. Winograd. The pagerank citation ranking: Bringing order to the web. Technical Report 1999--66, Stanford InfoLab, Nov. 1999. URL http://ilpubs.stanford.edu:8090/422/.
[21]
M. Page-Jones and L. L. Constantine. Fundamentals of object-oriented design in UML. Addison-Wesley, Boston, MA, USA, 2000.
[22]
D. Redmond-Pyle. Software development methods and tools: some trends and issues. Software Engineering Journal, 11(2):99--103, 1996.
[23]
N. Sangal, E. Jordan, V. Sinha, and D. Jackson. Using dependency models to manage complex software architecture. In Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, OOPSLA '05, pages 167--176, New York, NY, USA, 2005. ACM. ISBN 1-59593-031-0. URL http://doi.acm.org/10.1145/1094811.1094824.
[24]
R. S. Sangwan, P. Vercellone-Smith, and P. A. Laplante. Structural epochs in the complexity of software over time. IEEE Software, 25(4):66--73, 2008. ISSN 0740-7459.
[25]
R. Sedgewick. Algorithms. Addison-Wesley, 1983.
[26]
R. E. Tarjan. Depth-first search and linear graph algorithms. SIAM J. Comput., 1(2):146--160, 1972.
[27]
E. Tempero, C. Anslow, J. Dietrich, T. Han, J. Li, M. Lumpe, H. Melton, and J. Noble. Qualitas corpus: A curated collection of java code for empirical studies. In 2010 Asia Pacific Software Engineering Conference (APSEC2010), Dec. 2010.
[28]
B. Újházi, R. Ferenc, D. Poshyvanyk, and T. Gyimóthy. New conceptual coupling and cohesion metrics for object-oriented systems. In 10th IEEE Working Conference on Source Code Analysis and Manipulation (SCAM'10), Los Alamitos, CA, USA, 2010.
[29]
R. Wuyts, H. M. Kienle, K. Mens, M. van den Brand, and A. Kuhn. Academic software development tools and techniques. In Proc. of the 22nd European Conference on Object-Oriented Programming, (ECOOP 2008), volume 5475, pages 87--103, Paphos, Cyprus, July 7-11 2008. Springer.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PLATEAU '11: Proceedings of the 3rd ACM SIGPLAN workshop on Evaluation and usability of programming languages and tools
October 2011
90 pages
ISBN:9781450310246
DOI:10.1145/2089155
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 October 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. information
  2. metrics

Qualifiers

  • Research-article

Conference

SPLASH '11
Sponsor:

Acceptance Rates

Overall Acceptance Rate 5 of 8 submissions, 63%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media