Authors:
Iaakov Exman
and
Netanel Ohayon
Affiliation:
Software Engineering Dept., The Jerusalem College of Engineering – JCE-Azrieli, Jerusalem and Israel
Keyword(s):
Modularity, Dependency Graph, Bipartite Dependency Graph, Laplacian Matrix, Eigenvectors, Coupling Types, Coupling Resolution, Bipartition Idea.
Related
Ontology
Subjects/Areas/Topics:
Formal Methods
;
Simulation and Modeling
;
Software Engineering
;
Software Engineering Methods and Techniques
Abstract:
Software modularity by pinpointing and subsequent resolution of the remaining coupling problems is often assumed to be a general approach to optimize any software system design. However, software coupling types with differing specific characteristics, seemingly pose serious impediments to any generic coupling resolution approach. Despite the diversity of types, this work proposes a generic approach to solve any coupling type in three steps: a-obtain the Dependency graph for the coupled modules; b-convert the dependency graph into a Bipartite Graph; c-generate the Laplacian Matrix from the Bipartite Graph. Coupling problems to be resolved are then located, using Laplacian eigenvectors, in particular the Fiedler eigenvector. The generic approach is justified, explained in detail, and illustrated by a few case studies.