Selecting Software Test Data Using Data Flow Information
IEEE Transactions on Software Engineering
Program evolution: processes of software change
Program evolution: processes of software change
Information Processing Letters
The relationship between slices and module cohesion
ICSE '89 Proceedings of the 11th international conference on Software engineering
Estimating the number of test cases required to satisfy the all-du-paths testing criterion
TAV3 Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification
Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Cost of Data Flow Testing: An Empirical Study
IEEE Transactions on Software Engineering
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Analyzing Error-Prone System Structure
IEEE Transactions on Software Engineering
Using Program Slicing in Software Maintenance
IEEE Transactions on Software Engineering
An empirical evaluation (and specification) of the all-du-paths testing criterion
Software Engineering Journal
Proceedings of the 29th annual ACM/IEEE international symposium on Microarchitecture
A specification driven slicing process for identifying reusable functions
Journal of Software Maintenance: Research and Practice
ICSE '94 Proceedings of the 16th international conference on Software engineering
Automated test data generation using an iterative relaxation method
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
A quantitative framework for software restructuring
Journal of Software Maintenance: Research and Practice
Programmers use slices when debugging
Communications of the ACM
Concept Analysis for Module Restructuring
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
UNA Based Iterative Test Data Generation and its Evaluation
ASE '99 Proceedings of the 14th IEEE international conference on Automated software engineering
A discriminant metric for module cohesion
ICSE '84 Proceedings of the 7th international conference on Software engineering
A Data Flow Oriented Program Testing Strategy
IEEE Transactions on Software Engineering
A model of large program development
IBM Systems Journal
IBM Systems Journal
Cost effective dynamic program slicing
Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation
Efficient Forward Computation of Dynamic Slices Using Reduced Ordered Binary Decision Diagrams
Proceedings of the 26th International Conference on Software Engineering
Cost and precision tradeoffs of dynamic data slicing algorithms
ACM Transactions on Programming Languages and Systems (TOPLAS)
Whole execution traces and their applications
ACM Transactions on Architecture and Code Optimization (TACO)
Measurement of dynamic metrics using dynamic analysis of programs
ACC'08 Proceedings of the WSEAS International Conference on Applied Computing Conference
Effects of dependency injection on maintainability
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
A survey of dynamic software metrics
Journal of Computer Science and Technology
Dynamic cohesion measures for object-oriented software
Journal of Systems Architecture: the EUROMICRO Journal
Hi-index | 0.00 |
Module cohesion describ es the degree to which different actions performed by a module contribute towardsa unified function. High module cohesion is a desirableproperty of a program. The program modifications during successive maintenance interventions can have negative effect on the structure of the program resulting inless cohesive modules. Therefore, metrics that measuremodule cohesion are important for software restructuring during maintenance. The existing static slice basedmodule cohesionmetrics significantly over estimate cohesion due to the limitations of static slicing.In this paper, we present a novel program execution based approach to measure module cohesion oflegacy software. We define cohesion metrics base downdefinition-use pairs in the dynamic slices of the outputs. Our approach significantly improves the accuracyof cohesion measurement. We implemented our technique and measured module cohesion for several programs. Cohesion measurements using our techniquewere found to be more insightful than static slice basedmeasurements.