in OCL expressions, and not the meta-classes related
to these meta-classes just because the related meta-
classes do not appear in the OCL expressions. Arnor
Solberg et al. point out the importance of pruning
metamodels from the aspects of model-driven
development and aspect-oriented modeling (2009),
but do not further give solutions. Jung Ho Bae et al.,
propose an algorithm for pruning small metamodels
for seven types of UML diagrams (2008), and their
algorithm does not consider packages and OCL
expressions in UML metamodel and optional
parameters.
For the comprehension and maintenance of
metamodels, Strüber et al., present a tool that
supports the decomposition of a meta-model into
clusters of metamodel elements (Daniel et al., 2013).
They apply clustering algorithms to obtain segments
of metamodels, and our algorithm is for extracting
the needed submetamodels that are complete in
syntax and semantics according to the definition
relations between metaclasses.
The static slicing technologies of class models
are similar to ours. Jaiprakash et al. present an
algorithm for static slicing of UML architecture
models (2009), and their slicing criterion only
consists of one class and one message. Huzefa Kagdi
et al., propose an idea to enrich slicing criterion
(2005), and only defines several concepts for
context-free slicing of single UML class model.
Fangjun et al propose a slicing algorithm for class
diagrams (2004), and their algorithm is designed for
dependence analysis for class diagrams by simply
finding all relevant classes for a given class. Arnaud
et al. present a language to build model slicers
(2011), which can extract model slices from domain-
specific models, and the built slicers can take
dependent path length, optional classes, and optional
properties as input, but do not take into account
OCL expressions and packages, and thus their work
is unsuited to prune metamodels.
5 CONCLUSIONS
The metamodels are important information sources
with their own characteristics, and one only needs
parts of the large and complex metamodels in many
cases. According to the characteristics, the paper
presents an approach to automatically bi-
directionally extract needed part from a metamodel
like UML by parsing network structure of packages
and calculating metaclass models. Moreover, a
pruned metamodel complies with its initial
metamodel, and its size is agilely controlled with
input options. The approach can service to a variety
of applications that need to prune metamodels.
ACKNOWLEDGEMENTS
The work supported by the National Natural Science
Foundation of China (No. 61672046).
REFERENCES
Arnaud Blouin et al. (2011) ‘Modeling Model Slicers’,
MoDELS, LNCS 6981, 62-76.
Arnor Solberg, Robert France, and Raghu Reddy. (2005)
‘Navigating the MetaMuddle’. In: Proceedings of the
4th Workshop in Software Engineering and
Application, Jamaica, 2005, 315-321.
Brian Henderson-Sellers. (2005) ‘UML– the Good, the
Bad or the Ugly? Perspectives from a panel of
experts’, Software System Model, 2005(4), 4–13.
Daniel Strüber,Matthias Selter, and Gabriele Taentzer.
(2013) ‘A Tool support for clustering large meta-
models’. Proceeding. In: Proceedings of the Workshop
on scalability in model driven engineering, NY, USA
,2013. ACM New York, 1-4.
Dori Dov. (2002) ‘Why significant UML change is
unlikely’, Communications of the ACM, 45(11), 82–
85.
Fangjun W. and Tong Y. (2004) ‘Dependence analysis for
UML class diagrams’, Journal of Electronics, 2004,
21(3), 249–254.
Flatscher RG. (2002) ‘Metamodeling in EIA/CDIF –
Meta-metamodel and Metamodels’ ACM Trans.
Modeling and Computer Simulation, 12(4), 322–342.
Frédéric Fondement, Pierre-Alain Muller, Laurent Thiry,
Brice Wittmann, and Germain Forestier. (2013) ‘Big
Metamodels Are Evil’. Model-Driven Engineering
Languages and Systems, Lecture Notes in Computer
Science, Volume 8107, 2013,138-153.
Huzefa Kagdi, Jonathan I. Maletic, Andrew Sutton. (2005)
‘Context-Free Slicing of UML Class Models’. In:
Proceedings of the IEEE International Conference on
Software Maintenance. Washington, 2005,635 – 638.
Jaiprakash T. Lallchandani and R.Mall. (2009) ‘Static
Slicing of UML Architectural Models’, Journal of
Object Technology, Vol. 8(1), 159-188.
Jiang Yangbing, Weizhong Shao, Lu Zhang, Zhiyi Ma,
Haohai Ma. (2004) ‘On the Classification of UML’s
Meta Model Extension Mechanism’, Lecture Notes in
Computer Science,3273, 54-68.
Jung Ho Bae, Heung Seok Chae. (2008). ‘UMLSlicer: A
Tool for Modularizing the UML Metamodel using
Slicing’. In: Proceedings of the IEEE 8th
International Conference on Computer and
Information Technology, Sydney, 2008,772–777.
Ma Zhiyi, Xiao He, Chao Liu. (2013) ‘Assessing the
quality of metamodels’, Frontiers of Computer