2007 · 95 citations · 14 references
Software MaintenanceEngineeringSoftware EngineeringSoftware AnalysisAutomated Software EngineeringSimilar Model ElementsData ScienceData MiningModel-based Software DevelopmentModel Of ComputationDifference ComputationApproximation TheorySearch-based Software EngineeringSoftware MiningComputer ScienceModel ComparisonLarge ModelsSoftware DesignSoftware EvolutionProgram AnalysisSoftware TestingParallel ProgrammingVersion Management SystemsComputer ModelingData Modeling
Modern software engineering practices lead to large models which exist in many versions. Version management systems should offer a service to compare, and possibly merge, these models. The computation of a difference between large models is a big challenge; current algorithms are too inefficient here. We present a new technique for computing differences between models. In practical tests, this technique has been an order of magnitude faster than currently known algorithms. The main idea is to use a high-dimensional search tree for efficiently finding similar model elements. Individual elements are mapped onto a vector of numerical values using a collection of metrics for models and a numerical representation of the names which occur in a model.
14
Change detection in hierarchically structured information
Sudarshan S. Chawathe, Anand Rajaraman, Héctor García-Molina et al. · 1996 · 486 citations
Zhenchang Xing, Eleni Stroulia · 2005 · 365 citations