Skip to Main Content
In large-scale software systems that integrate many components originating from different vendors, the understanding of the functional importance of the components is critical for the dependability of the system. However, in general, gaining such understanding is difficult. Here we describe the application of the combination of dynamic analysis and network analysis to large-scale software systems with the aim to determine methods of classes that are functionally important with respect to a given functionality of the software. We use as a test case the Google Chrome and predict functionally important methods in a weak sense in the context of usage scenarios. We validate the predictions using mutation testing and evaluate the behavior of the software following the mutation change. Our results indicate that network analysis metrics based on measurement of structural integrity can be used to predict methods of classes that are functionally important with respect to a given functionality of the software system.