Abstract
Software systems contain multiple types of interrelations among components — data, control, and sequencing, among others. We are developing interconnectivity analysis techniques that derive multiple views of the structure of large-scale software systems. These techniques calculate interconnections among components and then recursively group the components into sets according to their degree of interconnection. These techniques are especially suited to large-scale systems (e.g., > 100,000 lines) since numerous types of interconnections can be determined automatically in a tractable manner. Interconnectivity analysis techniques produce visualizations of system structure and can be used to document systems, model their evolution over time, compare system structure, guide regression testing, or localize error-prone structure. In earlier work, one such technique was applied effectively in a feasibility study to characterize the error-prone components in a large-scale system from a production environment. Tools supporting interconnectivity analysis will be integrated into the Amadeus measurement-driven analysis and feedback system.
This work was supported in part by the National Science Foundation under grant CCR-8704311 with cooperation from the Defense Advanced Research Projects Agency under Arpa order 6108, program code 7T10; National Science Foundation under grant DCR-8521398; University of California under the MICRO program; IBM; Hughes Aircraft; and TRW.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
L.A. Belady and C.J. Evangelisti. System partitioning and its measure. Journal of Systems and Software, 2(1) 23–29, February 1982.
V. R. Basili and A. J. Turner. Iterative enhancement: a practical technique for software development. IEEE Transactions on Software Engineering, SE-1(4), December 1975.
B. S. Everitt. Cluster Analysis, 2nd ed. Heineman Educational Books Ltd., London, 1980.
Pankaj K. Garg and Walt Scacchi. A software hypertext environment for configured software descriptions. In International Workshop on Software Version and Configuration Control. 1988.
D. H. Hutchens and V. R. Basili. System structure analysis: Clustering with data bindings. IEEE Transactions on Software Engineering, SE-11(8), August 1985.
S. Henry and D. Kafura. Software quality metrics based on interconnectivity. Journal of Systems and Software, 2(2):121–131, 1981.
S. Henry and D. Kafura. Software structure metrics based on information flow. IEEE Transactions on Software Engineerings, 1981.
N. Jardine and R. Sibson. Mathematical Taxonomy. John Wiley and Sons, New York, 1971.
Manny Lehman. On understanding laws, evolution, and conservation in the large-program life cycle. In Programming Productivity: Issues for the Eighties, pages 184–192. 1981.
G. J. Myers. Reliable Software Through Composite Design. Petrocelli/Charter, 1975.
G. J. Myers. Composite/Structured Design. Van Nostrand Reinhold, 1978.
Adam A. Porter and Richard W. Selby. Empirically guided software development using metric-based classification trees. IEEE Software, 7(2):46–54, March 1990.
Richard W. Selby and Victor R. Basili. Error localization during software maintenance: Generating hierarchical system descriptions from the source code alone. In Proceedings of the Conference on Software Maintenance, Phoenix, AZ, October 1988.
H. Scheffe. The Analysis of Variance. John Wiley & Sons, New York, 1959.
Richard W. Selby. Generating hierarchical system descriptions for software error localization. In Proceedings of the Second Workshop on Software Testing, Analysis, and Verification, pages 89–96, Banff, Alberta, Canada, July 1988.
Richard W. Selby, Greg James, Kent Madsen, Joan Mahoney, Adam Porter, and Doug Schmidt. Classification tree analysis using the Amadeus measurement and empirical analysis system. In Proceedings of the Fourteenth Annual Software Engineering Workshop, NASA/GSFC, Greenbelt, MD, November 1989.
W. P. Stevens, G. J. Myers, and L. L. Constantine. Structural design. IBM Systems Journal, 13(2):115–139, 1974.
Richard W. Selby and Adam A. Porter. Learning from examples: Generation and evaluation of decision trees for software resource analysis. IEEE Transactions on Software Engineering, SE-14(12):1743–1757, December 1988.
Richard W. Selby, Adam A. Porter, Doug C. Schmidt, and James Berney. Metric-driven analysis and feedback systems for enabling empirically guided software development. Arcadia Technical Report UCI-90-19, University of California, September 1990.
Richard N. Taylor, Frank C. Belz, Lori A. Clarke, Leon Osterweil, Richard W. Selby, Jack C. Wileden, Alexander L. Wolf, and Michal Young. Foundations for the Arcadia environment architecture. In Proceedings of ACM SIGSOFT’ 88: Third Symposium on Software Development Environments, pages 1–13, Boston, November 1988. Appeared as Sigplan Notices 24(2) and Software Engineering Notes 13(5).
B.H. Yin and J.W. Winchester. The establishment and use of measures to evaluate the quality f software designs. In Proceedings of the ACM Software Quality Assurance Workshop, pages 45–52. IEEE Computer Society, 1978.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1992 Springer-Verlag New York, Inc.
About this paper
Cite this paper
Selby, R.W. (1992). Scalable Techniques for Modeling Software Interconnectivity. In: Page, C., LePage, R. (eds) Computing Science and Statistics. Springer, New York, NY. https://doi.org/10.1007/978-1-4612-2856-1_32
Download citation
DOI: https://doi.org/10.1007/978-1-4612-2856-1_32
Publisher Name: Springer, New York, NY
Print ISBN: 978-0-387-97719-5
Online ISBN: 978-1-4612-2856-1
eBook Packages: Springer Book Archive